template match="brand|name|units" : Abbreivation « XPath « XML Tutorial






File: Data.xml

<?xml version="1.0" encoding="utf-8"?>
<report month="8" year="2006">
  <title>Chocolate bar sales</title>
  <brand>
    <name>Lindt</name>
    <units>27408</units>
  </brand>
  <brand>
    <name>Callebaut</name>
    <units>8203</units>
  </brand>

</report>

File: Transform.xslt

<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

  <xsl:output method="xml"/>

  <xsl:template match="report">
    <report>
      <xsl:apply-templates select="brand"/>
    </report>
  </xsl:template>

  <xsl:template match="brand|name|units">
    <xsl:copy>
      <xsl:apply-templates/>
    </xsl:copy>    
  </xsl:template>

</xsl:stylesheet>

Output:

<?xml version="1.0" encoding="UTF-8"?><report><brand>
    <name>Lindt</name>
    <units>27408</units>
  </brand><brand>
    <name>Callebaut</name>
    <units>8203</units>
  </brand></report>








4.10.Abbreivation
4.10.1.Wildcard "*" selects all possibilities
4.10.2."//" has two meanings
4.10.3.List the elements in an xml document
4.10.4.Count elements and attributes
4.10.5.template match="*" (asterisk)
4.10.6.template match="brand|name|units"
4.10.7.template match="/"
4.10.8.value-of select="."
4.10.9.Axis child:: can be be omitted from a location step as it is the default axis.
4.10.10... is short for parent::
4.10.11.// is short for /descendant-or-self::