Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -169,13 +169,13 @@
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>client</artifactId>
<version>5.0.2</version>
<version>5.0.3-SNAPSHOT</version>
<classifier>classes</classifier>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>client</artifactId>
<version>5.0.2</version>
<version>5.0.3-SNAPSHOT</version>
<type>war</type>
</dependency>
<dependency>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -173,7 +173,7 @@ exclude-result-prefixes="#all">

<xsl:variable name="selected" select="." as="xs:anyURI"/>
<xsl:for-each select="document(resolve-uri('static/com/atomgraph/linkeddatahub/xsl/bootstrap/2.3.2/admin/countries.rdf', lapp:origin()))/rdf:RDF/*[@rdf:about]">
<xsl:sort select="ac:label(.)" lang="{$ldt:lang}"/>
<xsl:sort select="ac:label(.)" lang="{$ac:lang}"/>
<xsl:apply-templates select="." mode="xhtml:Option">
<xsl:with-param name="selected" select="@rdf:about = $selected"/>
</xsl:apply-templates>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -183,8 +183,7 @@ exclude-result-prefixes="#all"
</option>

<xsl:for-each-group select="$results/rdf:RDF/*/*" group-by="concat(namespace-uri(), local-name())">
<xsl:sort select="ac:property-label(.)" order="ascending" lang="{$ldt:lang}" use-when="system-property('xsl:product-name') = 'SAXON'"/>
<xsl:sort select="ac:property-label(.)" order="ascending" use-when="system-property('xsl:product-name') eq 'SaxonJS'"/>
<xsl:sort select="ac:property-label(.)" order="ascending" lang="{$ac:lang}"/>

<option value="{current-grouping-key()}">
<xsl:if test="$category = current-grouping-key()">
Expand All @@ -202,8 +201,7 @@ exclude-result-prefixes="#all"
<xsl:for-each select="$container//select[contains-token(@class, 'chart-series')]">
<xsl:result-document href="?." method="ixsl:replace-content">
<xsl:for-each-group select="$results/rdf:RDF/*/*" group-by="concat(namespace-uri(), local-name())">
<xsl:sort select="ac:property-label(.)" order="ascending" lang="{$ldt:lang}" use-when="system-property('xsl:product-name') = 'SAXON'"/>
<xsl:sort select="ac:property-label(.)" order="ascending" use-when="system-property('xsl:product-name') eq 'SaxonJS'"/>
<xsl:sort select="ac:property-label(.)" order="ascending" lang="{$ac:lang}"/>

<option value="{current-grouping-key()}">
<xsl:if test="$series = current-grouping-key()">
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2095,7 +2095,7 @@ exclude-result-prefixes="#all"
<!-- sort the existing <li> items together with the new item -->
<xsl:perform-sort select="($existing-items, $new-item)">
<!-- sort by the link text content (property label) -->
<xsl:sort select="a/text()" lang="{$ldt:lang}"/>
<xsl:sort select="a/text()" lang="{$ac:lang}"/>
</xsl:perform-sort>
</xsl:variable>

Expand Down Expand Up @@ -2243,7 +2243,7 @@ exclude-result-prefixes="#all"
<!-- sort by count in a hidden input first -->
<xsl:sort select="xs:integer(input[@name = 'count']/@value)" order="descending"/>
<!-- sort by the link text content (value label) -->
<xsl:sort select="a/text()" lang="{$ldt:lang}"/>
<xsl:sort select="a/text()" lang="{$ac:lang}"/>
</xsl:perform-sort>
</xsl:variable>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,11 @@ exclude-result-prefixes="#all"
<xsl:sequence select="if (ldh:query-params()?uri) then xs:anyURI(ldh:query-params()?uri) else ()"/>
</xsl:function>

<!-- overrides the Web-Client stub; server-side ac:uuid() is the com.atomgraph.client.writer.function.UUID extension function -->
<xsl:function name="ac:uuid" as="xs:string">
<xsl:value-of select="ixsl:call(ixsl:window(), 'generateUUID', [])"/>
</xsl:function>

<!-- ldh:query-params is defined once in imports/default.xsl and works in both contexts via ldh:request-uri -->

<xsl:function name="ldh:base-uri" as="xs:anyURI">
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -679,7 +679,7 @@ ORDER BY DESC(?created)
<xsl:result-document href="?." method="ixsl:append-content">
<ul class="well well-small nav nav-list">
<xsl:apply-templates select="$results/rdf:RDF/rdf:Description[not(@rdf:about = $doc-uri)]" mode="xhtml:ListItem">
<xsl:sort select="ac:label(.)" order="ascending" lang="{$ldt:lang}"/>
<xsl:sort select="ac:label(.)" order="ascending" lang="{$ac:lang}"/>
<xsl:with-param name="mode" select="ldh:query-params()?mode[1]" tunnel="yes"/> <!-- TO-DO: support multiple modes -->
<xsl:with-param name="render-id" select="false()" tunnel="yes"/>
</xsl:apply-templates>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -717,8 +717,7 @@ extension-element-prefixes="ixsl"
<xsl:param name="property-metadata" select="if (exists($property-uris)) then ldh:send-request(resolve-uri('ns', ldt:base()), 'POST', 'application/sparql-query', 'DESCRIBE $Type' || ' VALUES $Type { ' || string-join(for $uri in $property-uris return '&lt;' || $uri || '&gt;', ' ') || ' }', map{ 'Accept': 'application/rdf+xml' }) else ()" as="document-node()?" tunnel="yes"/>
<xsl:param name="predicates" as="element()*">
<xsl:for-each-group select="*/*" group-by="concat(namespace-uri(), local-name())">
<xsl:sort select="if ($property-metadata) then ac:property-label(., $property-metadata) else ac:property-label(.)" order="ascending" lang="{$ldt:lang}" use-when="system-property('xsl:product-name') = 'SAXON'"/>
<xsl:sort select="if ($property-metadata) then ac:property-label(., $property-metadata) else ac:property-label(.)" order="ascending" use-when="system-property('xsl:product-name') eq 'SaxonJS'"/>
<xsl:sort select="if ($property-metadata) then ac:property-label(., $property-metadata) else ac:property-label(.)" order="ascending" lang="{$ac:lang}"/>

<xsl:sequence select="current-group()[1]"/>
</xsl:for-each-group>
Expand Down Expand Up @@ -877,8 +876,7 @@ extension-element-prefixes="ixsl"
</option>

<xsl:for-each-group select="*/*" group-by="concat(namespace-uri(), local-name())">
<xsl:sort select="ac:property-label(.)" order="ascending" lang="{$ldt:lang}" use-when="system-property('xsl:product-name') = 'SAXON'"/>
<xsl:sort select="ac:property-label(.)" order="ascending" use-when="system-property('xsl:product-name') eq 'SaxonJS'"/>
<xsl:sort select="ac:property-label(.)" order="ascending" lang="{$ac:lang}"/>

<option value="{current-grouping-key()}">
<xsl:if test="$category = current-grouping-key()">
Expand All @@ -896,8 +894,7 @@ extension-element-prefixes="ixsl"
<label for="{$series-id}">Series</label>
<select id="{$series-id}" name="ou" multiple="multiple" class="input-large chart-series">
<xsl:for-each-group select="*/*" group-by="concat(namespace-uri(), local-name())">
<xsl:sort select="ac:property-label(.)" order="ascending" lang="{$ldt:lang}" use-when="system-property('xsl:product-name') = 'SAXON'"/>
<xsl:sort select="ac:property-label(.)" order="ascending" use-when="system-property('xsl:product-name') eq 'SaxonJS'"/>
<xsl:sort select="ac:property-label(.)" order="ascending" lang="{$ac:lang}"/>

<option value="{current-grouping-key()}">
<xsl:if test="$series = current-grouping-key()">
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ exclude-result-prefixes="#all">
</option>

<xsl:for-each select="$modes[not(@rdf:about = '&ac;EditMode')]"> <!-- don't show EditMode -->
<xsl:sort select="ac:label(.)" lang="{$ldt:lang}"/>
<xsl:sort select="ac:label(.)" lang="{$ac:lang}"/>
<xsl:apply-templates select="." mode="xhtml:Option">
<xsl:with-param name="selected" select="@rdf:about = $value"/>
</xsl:apply-templates>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ exclude-result-prefixes="#all">
<xsl:variable name="modes" select="key('resources-by-subclass', '&acl;Access', document(ac:document-uri('&acl;')))" as="element()*"/>
<select name="ou" id="{generate-id()}" multiple="multiple" size="{count($modes)}">
<xsl:for-each select="$modes">
<xsl:sort select="ac:label(.)" lang="{$ldt:lang}"/>
<xsl:sort select="ac:label(.)" lang="{$ac:lang}"/>
<xsl:apply-templates select="." mode="xhtml:Option">
<xsl:with-param name="selected" select="@rdf:about = $properties/@rdf:resource"/>
</xsl:apply-templates>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -767,8 +767,11 @@ exclude-result-prefixes="#all"

<!-- PROPERTY LIST -->

<!-- suppress properties in a language other than $ldt:lang. TO-DO: move to Web-Client? -->
<xsl:template match="*[@rdf:about or @rdf:nodeID]/*[@xml:lang and not(lang($ldt:lang))]" mode="bs2:PropertyList"/>
<!-- suppress values in a language the user doesn't accept. TO-DO: move to Web-Client? -->
<xsl:template match="*[@rdf:about or @rdf:nodeID]/*[@xml:lang and not(some $lang in $ac:langs satisfies lang($lang))]" mode="bs2:PropertyList"/>

<!-- suppress values outranked by a more preferred language on the same property -->
<xsl:template match="*[@rdf:about or @rdf:nodeID]/*[@xml:lang][let $rank := (for $i in 1 to count($ac:langs) return $i[lang($ac:langs[$i])])[1] return exists(../*[node-name() = node-name(current())][some $i in 1 to $rank - 1 satisfies lang($ac:langs[$i])])]" mode="bs2:PropertyList"/>

<!-- FORM CONTROL -->

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ exclude-result-prefixes="#all">
<xsl:variable name="chart-types" select="key('resources-by-subclass', '&ac;Chart', document(ac:document-uri('&ldh;')))" as="element()*"/>
<select name="ou" id="{generate-id()}">
<xsl:for-each select="$chart-types">
<xsl:sort select="ac:label(.)" lang="{$ldt:lang}"/>
<xsl:sort select="ac:label(.)" lang="{$ac:lang}"/>
<xsl:apply-templates select="." mode="xhtml:Option">
<xsl:with-param name="selected" select="@rdf:about = $value"/>
</xsl:apply-templates>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@ limitations under the License.
<!ENTITY ac "https://w3id.org/atomgraph/client#">
<!ENTITY rdf "http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<!ENTITY sh "http://www.w3.org/ns/shacl#">
<!ENTITY ldt "https://www.w3.org/ns/ldt#">
]>
<xsl:stylesheet version="3.0"
xmlns="http://www.w3.org/1999/xhtml"
Expand All @@ -27,25 +26,22 @@ xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:ac="&ac;"
xmlns:rdf="&rdf;"
xmlns:sh="&sh;"
xmlns:ldt="&ldt;"
exclude-result-prefixes="#all">

<xsl:param name="ldt:lang" select="'en'" as="xs:string"/>

<xsl:template match="*[$ldt:lang][sh:name[lang($ldt:lang)]/text()]" mode="ac:label" priority="1">
<xsl:sequence select="sh:name[lang($ldt:lang)]/text()"/>
<xsl:template match="*[sh:name[some $lang in $ac:langs satisfies lang($lang)]/text()]" mode="ac:label" priority="1">
<xsl:sequence select="(for $lang in $ac:langs return sh:name[lang($lang)])[1]/text()"/>
</xsl:template>
<xsl:template match="*[sh:name[not(@xml:lang)]/text()]" mode="ac:label">
<xsl:sequence select="sh:name[not(@xml:lang)]/text()"/>

<xsl:template match="*[sh:name/text()]" mode="ac:label">
<xsl:sequence select="(sh:name[not(@xml:lang)], sh:name)[1]/text()"/>
</xsl:template>

<xsl:template match="*[$ldt:lang][sh:description[lang($ldt:lang)]/text()]" mode="ac:description" priority="1">
<xsl:sequence select="sh:description[lang($ldt:lang)]/text()"/>
<xsl:template match="*[sh:description[some $lang in $ac:langs satisfies lang($lang)]/text()]" mode="ac:description" priority="1">
<xsl:sequence select="(for $lang in $ac:langs return sh:description[lang($lang)])[1]/text()"/>
</xsl:template>
<xsl:template match="*[sh:description[not(@xml:lang)]/text()]" mode="ac:description">
<xsl:sequence select="sh:description[not(@xml:lang)]/text()"/>

<xsl:template match="*[sh:description/text()]" mode="ac:description">
<xsl:sequence select="(sh:description[not(@xml:lang)], sh:description)[1]/text()"/>
</xsl:template>

</xsl:stylesheet>
Original file line number Diff line number Diff line change
Expand Up @@ -697,7 +697,7 @@ WHERE
<xsl:value-of select="ac:label(key('resources', 'user-defined-apps', document('translations.rdf')))"/>
</li>
<xsl:for-each select="$user-defined-apps">
<xsl:sort select="ac:label(.)" order="ascending" lang="{$ldt:lang}"/>
<xsl:sort select="ac:label(.)" order="ascending" lang="{$ac:lang}"/>
<li>
<a href="{lapp:origin/@rdf:resource}/" title="{lapp:origin/@rdf:resource}">
<xsl:apply-templates select="." mode="ac:label"/>
Expand All @@ -713,7 +713,7 @@ WHERE
<xsl:value-of select="ac:label(key('resources', 'system-apps', document('translations.rdf')))"/>
</li>
<xsl:for-each select="$system-apps">
<xsl:sort select="ac:label(.)" order="ascending" lang="{$ldt:lang}"/>
<xsl:sort select="ac:label(.)" order="ascending" lang="{$ac:lang}"/>
<li>
<a href="{lapp:origin/@rdf:resource}/" title="{lapp:origin/@rdf:resource}">
<xsl:apply-templates select="." mode="ac:label"/>
Expand Down Expand Up @@ -924,8 +924,8 @@ WHERE
<xsl:document>
<dl class="dl-horizontal">
<xsl:apply-templates select="$properties-original" mode="#current">
<xsl:sort select="ac:property-label(., $property-metadata)" order="ascending" lang="{$ldt:lang}"/>
<xsl:sort select="if (exists((text(), @rdf:resource, @rdf:nodeID))) then (if ($object-metadata) then ac:object-label((text(), @rdf:resource, @rdf:nodeID)[1], $object-metadata) else ac:object-label((text(), @rdf:resource, @rdf:nodeID)[1])) else ()" order="ascending" lang="{$ldt:lang}"/>
<xsl:sort select="ac:property-label(., $property-metadata)" order="ascending" lang="{$ac:lang}"/>
<xsl:sort select="if (exists((text(), @rdf:resource, @rdf:nodeID))) then (if ($object-metadata) then ac:object-label((text(), @rdf:resource, @rdf:nodeID)[1], $object-metadata) else ac:object-label((text(), @rdf:resource, @rdf:nodeID)[1])) else ()" order="ascending" lang="{$ac:lang}"/>
<xsl:with-param name="property-metadata" select="$property-metadata" tunnel="yes"/>
</xsl:apply-templates>
</dl>
Expand All @@ -949,8 +949,8 @@ WHERE
<xsl:document>
<dl class="dl-horizontal">
<xsl:apply-templates select="$properties-local" mode="#current">
<xsl:sort select="ac:property-label(., $property-metadata)" order="ascending" lang="{$ldt:lang}"/>
<xsl:sort select="if (exists((text(), @rdf:resource, @rdf:nodeID))) then (if ($object-metadata) then ac:object-label((text(), @rdf:resource, @rdf:nodeID)[1], $object-metadata) else ac:object-label((text(), @rdf:resource, @rdf:nodeID)[1])) else ()" order="ascending" lang="{$ldt:lang}"/>
<xsl:sort select="ac:property-label(., $property-metadata)" order="ascending" lang="{$ac:lang}"/>
<xsl:sort select="if (exists((text(), @rdf:resource, @rdf:nodeID))) then (if ($object-metadata) then ac:object-label((text(), @rdf:resource, @rdf:nodeID)[1], $object-metadata) else ac:object-label((text(), @rdf:resource, @rdf:nodeID)[1])) else ()" order="ascending" lang="{$ac:lang}"/>
<xsl:with-param name="property-metadata" select="$property-metadata" tunnel="yes"/>
</xsl:apply-templates>
</dl>
Expand All @@ -974,8 +974,8 @@ WHERE
<xsl:document>
<dl class="dl-horizontal">
<xsl:apply-templates select="$properties-common" mode="#current">
<xsl:sort select="ac:property-label(., $property-metadata)" order="ascending" lang="{$ldt:lang}"/>
<xsl:sort select="if (exists((text(), @rdf:resource, @rdf:nodeID))) then (if ($object-metadata) then ac:object-label((text(), @rdf:resource, @rdf:nodeID)[1], $object-metadata) else ac:object-label((text(), @rdf:resource, @rdf:nodeID)[1])) else ()" order="ascending" lang="{$ldt:lang}"/>
<xsl:sort select="ac:property-label(., $property-metadata)" order="ascending" lang="{$ac:lang}"/>
<xsl:sort select="if (exists((text(), @rdf:resource, @rdf:nodeID))) then (if ($object-metadata) then ac:object-label((text(), @rdf:resource, @rdf:nodeID)[1], $object-metadata) else ac:object-label((text(), @rdf:resource, @rdf:nodeID)[1])) else ()" order="ascending" lang="{$ac:lang}"/>
<xsl:with-param name="property-metadata" select="$property-metadata" tunnel="yes"/>
</xsl:apply-templates>
</dl>
Expand Down
Loading
Loading