Share via


local-name Function 

Returns the local part of the expanded name of the node in the node-set argument that is first in document order.

string local-name(node-set?)

Remarks

An expanded name typically consists of a namespace URI (or associated prefix), a colon (:) and a local part. For example, b:author is an expanded name, where b is the namespace URI prefix and author is the local part. So applying the local-name() function to this node returns author. When a node has no expanded name, such as author, applying the local-name() function on this node returns the node name as is, i.e., author.

If the node-set argument is omitted, it defaults to a node-set with the context node as its only member.

Sample

XML File (data.xml)

<?xml-stylesheet type="text/xsl" href="sample.xsl"?>
<b:catalog xmlns:b="x-schema:book-schema.xml">
   <b:book id="bk101">
      <b:author>Gambardella, Matthew</b:author>
      <b:title>XML Developer's Guide</b:title>
      <b:genre>Computer</b:genre>
      <b:price>44.95</b:price>
      <b:publish_date>2000-10-01</b:publish_date>      
      <b:description>An in-depth look at creating applications with XML.</b:description>
   </b:book>
   <b:book id="bk102">
      <b:author>Ralls, Kim</b:author>
      <b:title>Midnight Rain</b:title>
      <b:genre>Fantasy</b:genre>
      <b:price>5.95</b:price>
      <b:publish_date>2000-12-16</b:publish_date>
      <b:description>A former architect battles corporate zombies, an evil sorceress, and her own childhood to become queen of the world.</b:description>
   </b:book>
</b:catalog>

XSLT File (sample.xsl)

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
   <xsl:output method="html"/>
  <xsl:template match="/">
      <html>
         <body>
            <h3>local-name() Function</h3>
            
            <xsl:apply-templates />
                     
         </body>
      </html>
  </xsl:template>
  
  <xsl:template match="*">
      <xsl:value-of select="local-name()"/> = <xsl:value-of select="text()"/><br/>
      <xsl:apply-templates select="*"/>
  </xsl:template>
</xsl:stylesheet>

Auxiliary XSLT File (book-schema.xml)

<Schema name="books" xmlns="urn:schemas-microsoft-com:xml-data"
           xmlns:dt="urn:schemas-microsoft-com:datatypes">
   <ElementType name="author"/>
   <ElementType name="title"/>
   <ElementType name="genre"/>
   <ElementType name="price"/>
   <ElementType name="publish_date"/>
   <ElementType name="description"/>
   <AttributeType name="id" dt:type="id"/>
         
   <ElementType name="catalog">
      <element type="book"/>
   </ElementType>
         
   <ElementType name="book" model="closed" content="eltOnly">
      <attribute type="id"/>
      <element type="author"/>
      <element type="title"/>
      <element type="genre"/>
      <element type="price"/>
      <element type="publish_date"/>
      <element type="description"/>
   </ElementType>
</Schema>

Formatted Output

local-name() Function

catalog =

book =

author = Gambardella, Matthew

title = XML Developer's Guide

genre = Computer

price = 44.95

publish_date = 2000-10-01

description = An in-depth look at creating applications with XML.

book =

author = Ralls, Kim

title = Midnight Rain

genre = Fantasy

price = 5.95

publish_date = 2000-12-16

description = A former architect battles corporate zombies, an evil sorceress, and her own childhood to become queen of the world.

Processor Output

<html>

<body>

<h3>local-name() Function</h3>catalog = <br>book = <br>author = Gambardella, Matthew<br>title = XML Developer's Guide<br>genre = Computer<br>price = 44.95<br>publish_date = 2000-10-01<br>description = An in-depth look at creating applications with XML.<br>book = <br>author = Ralls, Kim<br>title = Midnight Rain<br>genre = Fantasy<br>price = 5.95<br>publish_date = 2000-12-16<br>description = A former architect battles corporate zombies, an evil sorceress, and her own childhood to become queen of the world.<br></body>

</html>

See Also

Reference

XML Data Types Reference