On 30/06/2010 10:39, Nic Gibson wrote:
Sadly, yes. We would want to see
<name><sname>Houlihan</sname>,<fname>Patrick F.</fname></name>
<name><sname>Franklin</snane>,<fname>Saul</sname> Jnr</name>
cheers
bash-3.2$ saxon9 names.xml names.xsl
<?xml version="1.0" encoding="UTF-8"?>
<name><sname>Houlihan</sname>, <fname>Patrick F.</fname></name>
<name><sname>Franklin</sname>, <fname>Saul</fname> Jnr</name>
names.xml:
<x>
<nameGrp role="author" foreNames="Patrick F."
mainName="Houlihan">Houlihan, Patrick F.</nameGrp>
<nameGrp role="editor" foreNames="Saul" mainName="Franklin">Franklin,
Saul Jnr</nameGrp>
</x>
names.xsl:
<xsl:stylesheet version="2.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
>
<xsl:template match="nameGrp">
<xsl:variable name="nameattrs" select="@foreNames,@mainName"/>
<name>
<xsl:analyze-string select="."
regex="({string-join($nameattrs,')|(')})">
<xsl:matching-substring>
<xsl:element name="{
if(regex-group(1)=.) then 'fname'
else 'sname'
}"><xsl:value-of select="."/></xsl:element>
</xsl:matching-substring>
<xsl:non-matching-substring>
<xsl:value-of select="."/>
</xsl:non-matching-substring>
</xsl:analyze-string>
</name>
</xsl:template>
</xsl:stylesheet>
________________________________________________________________________
The Numerical Algorithms Group Ltd is a company registered in England
and Wales with company number 1249803. The registered office is:
Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom.
This e-mail has been scanned for all viruses by Star. The service is
powered by MessageLabs.
________________________________________________________________________
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--