XML/XSLT stylesheet/namespace uri
Версия от 18:22, 25 мая 2010; (обсуждение)
namespace-uri() function
File: Data.xml
<?xml version="1.0" encoding="utf-8"?>
<emailList>
<head:header xmlns:head="http://www.domain.ru/namespace/header">
<title>Email List</title>
<maintainer>Joe</maintainer>
</head:header>
<person type="personal" id="p001">
<name>person1</name>
<email>p@hotmail.ru</email>
</person>
<person type="work" id="p002">
<name>person2</name>
<email>p@hotmail.ru</email>
</person>
<person type="personal" id="p003">
<name>person3</name>
<email>p3@hotmail.ru</email>
</person>
</emailList>
File: Transform.xslt
<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:head="http://www.domain.ru/namespace/header">
<xsl:output method="xml" indent="yes" />
<xsl:template match="/">
<xsl:apply-templates select="emailList/head:header" />
</xsl:template>
<xsl:template match="head:header">
The namespace URI is:
<xsl:value-of select="namespace-uri()" />
</xsl:template>
</xsl:stylesheet>
Output:
<?xml version="1.0" encoding="UTF-8"?>
The namespace URI is:
http://www.domain.ru/namespace/header
Namespace URI: <xsl:value-of select="namespace-uri()"/>
File: Data.xml
<?xml version="1.0" encoding="utf-8"?>
<pp>
<P>Element name: xsl:stylesheet</P>
<P>Local part: stylesheet</P>
<P>Namespace URI: http://www.w3.org/1999/XSL/Transform</P>
<P>ID:</P>
</pp>
File: Transform.xslt
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="*">
<P>Element name: <xsl:value-of select="name()"/></P>
<P>Local part: <xsl:value-of select="local-name()"/></P>
<P>Namespace URI: <xsl:value-of select="namespace-uri()"/></P>
<P>ID: <xsl:value-of select="id(.)"/></P>
<xsl:apply-templates />
</xsl:template>
</xsl:stylesheet>
Output:
<?xml version="1.0" encoding="UTF-8"?><P>Element name: pp</P><P>Local part: pp</P><P>Namespace URI: </P><P>ID: </P>
<P>Element name: P</P><P>Local part: P</P><P>Namespace URI: </P><P>ID: </P>Element name: xsl:stylesheet
<P>Element name: P</P><P>Local part: P</P><P>Namespace URI: </P><P>ID: </P>Local part: stylesheet
<P>Element name: P</P><P>Local part: P</P><P>Namespace URI: </P><P>ID: </P>Namespace URI: http://www.w3.org/1999/XSL/Transform
<P>Element name: P</P><P>Local part: P</P><P>Namespace URI: </P><P>ID: </P>ID: