Functions name, local-name, and namespace-uri() are used to get informations about element and attribute names and namespaces : local name « XSLT stylesheet « XML Tutorial
local-name()- Takes zero or one node-sets as its argument and returns the local part of the element name if it exists; if no argument node-set exists, it returns the local part of the name of the context node.
File: Data.xml
<?xml version="1.0" encoding="utf-8"?>
<data xmlns:standard="http://www.w3.org/1999/XSL/Transform"
xmlns:java2s="http://www.java2s.com">
<standard:id>standardAAA</standard:id>
<standard:size>258</standard:size>
<java2s:id>java2s1258</java2s:id>
</data>
File: Transform.xslt
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet
version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<TABLE border="1">
<TR>
<td>name</TH>
<td>local</TH>
<td>URI</TH>
</TR>
<xsl:apply-templates select="//*"/>
</TABLE>
</xsl:template>
<xsl:template match="*">
<TR>
<TD>
<xsl:value-of select="name()"/>
</TD>
<TD>
<xsl:value-of select="local-name()"/>
</TD>
<TD>
<xsl:value-of select="namespace-uri()"/>
</TD>
</TR>
</xsl:template>
</xsl:stylesheet>
Output:
<?xml version="1.0" encoding="UTF-8"?><TABLE border="1"><TR><td>name</TH><td>local</TH><td>URI</TH></TR><TR><TD>data</TD><TD>data</TD><TD/></TR><TR><TD>standard:id</TD><TD>id</TD><TD>http://www.w3.org/1999/XSL/Transform</TD></TR><TR><TD>standard:size</TD><TD>size</TD><TD>http://www.w3.org/1999/XSL/Transform</TD></TR><TR><TD>java2s:id</TD><TD>id</TD><TD>http://www.java2s.com</TD></TR></TABLE>
5.59.local name
5.59.1.
Functions name, local-name, and namespace-uri() are used to get informations about element and attribute names and namespaces