Variable for document : document « XSLT stylesheet « XML






Variable for document


File: Data.xml

<?xml version="1.0" encoding="UTF-8"?>
<employee eid="1" dept="programming">
  <contact type="spouse">
    <name>
      <firstName>J</firstName>
      <middleName int="A">A</middleName>
      <lastName>S</lastName>
    </name>
    <address>
      <street>1 Drive</street>
      <city>Vancouver</city>
      <state>BC</state>
      <zipcode>80210</zipcode>
    </address>
    <phone>
      <tel type="wk">303-4668903</tel>
      <tel type="hm">222-222222</tel>
      <fax>303-4667357</fax>
    </phone>
    <email>j@hotmail.com</email>
  </contact>

</employee>
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:output method="xml" indent="yes" />
  <xsl:param name="doc"
    select="employees/employee[1]/contact/@addInfo" />
  <xsl:variable name="contacts" select="document($doc)" />
  <xsl:template match="/">

    <html>
      <head>
        <title>Email Listing</title>
      </head>
      <body>
        Your search brought the following results:
        <xsl:value-of select="$contacts/*/*/*/firstName" />
        <xsl:text> </xsl:text>
        <xsl:copy-of select="$contacts/*/*/*/lastName/text()" />
      </body>
    </html>
  </xsl:template>
</xsl:stylesheet>

Output:

<?xml version="1.0" encoding="UTF-8"?>
<html>
   <head>
      <title>Email Listing</title>
   </head>
   <body>
        Your search brought the following results:
         </body>
</html>

 








Related examples in the same category

1.apply template for a document
2.Apply template to a certain node in a document
3.Put xml document to a table layout
4.Format table cell during transforming