Hallo,
Ist es möglich, dass das aufrufende (PHP-)Script an die Transformation einen Parameter übergibt?
Dass man wenn man http://example.net/list?sort=givenname aufruft, die Liste nach Vornamen sortiert bekommt, bei http://example.net/list?sort=familyname nach Familiennamen, im XSLT also sowas inder Art:
<xsl:when ... = "givenname">
<xsl:sort select="foaf:givenname"/>
</xsl:when>
<xsl:when ... = "familyname">
<xsl:sort select="foaf:family_name"/>
</xsl:when>
</xsl:choose>
Das ist so definitiv nicht möglich.
xsl:sort muss als erstes Kind vom xsl:for-each oder vom xsl:apply-templates stehen.
Also:
param name="sort" /
...
when test="$sort = 'givenname'"
apply-templates select=...
sort select="foaf:givenname"
/apply-templates
when test="$sort = 'familyname'"
for-each select=...
sort select="foaf:family\_name"
...
/for-each
otherwiese
...
Grüße
Thomas