<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://wbex.ru/index.php?action=history&amp;feed=atom&amp;title=XML_Tutorial%2FXPath%2Fattribute</id>
		<title>XML Tutorial/XPath/attribute - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://wbex.ru/index.php?action=history&amp;feed=atom&amp;title=XML_Tutorial%2FXPath%2Fattribute"/>
		<link rel="alternate" type="text/html" href="http://wbex.ru/index.php?title=XML_Tutorial/XPath/attribute&amp;action=history"/>
		<updated>2026-04-04T15:48:57Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://wbex.ru/index.php?title=XML_Tutorial/XPath/attribute&amp;diff=10713&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://wbex.ru/index.php?title=XML_Tutorial/XPath/attribute&amp;diff=10713&amp;oldid=prev"/>
				<updated>2010-05-26T08:26:49Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 08:26, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://wbex.ru/index.php?title=XML_Tutorial/XPath/attribute&amp;diff=10712&amp;oldid=prev</id>
		<title> в 18:22, 25 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://wbex.ru/index.php?title=XML_Tutorial/XPath/attribute&amp;diff=10712&amp;oldid=prev"/>
				<updated>2010-05-25T18:22:32Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Attributes can be accessed in similar way as elements==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;quot;@&amp;quot; is in the front of attribute names.&lt;br /&gt;
&amp;quot;@name&amp;quot; matches name attribute of an element.&lt;br /&gt;
&amp;quot;data/@color&amp;quot; matches color attribute of data element.&lt;br /&gt;
&lt;br /&gt;
File: Data.xml&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;dog name=&amp;quot;Joe&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;data weight=&amp;quot;18 kg&amp;quot; color=&amp;quot;black&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/dog&amp;gt;&lt;br /&gt;
File: Transform.xslt&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;xsl:stylesheet version=&amp;quot;1.0&amp;quot; &lt;br /&gt;
  xmlns:xsl=&amp;quot;http://www.w3.org/1999/XSL/Transform&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:template match=&amp;quot;dog&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;paragraph&amp;gt;&lt;br /&gt;
        &amp;lt;b&amp;gt;&lt;br /&gt;
          &amp;lt;xsl:text&amp;gt;Dog: &amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
        &amp;lt;/b&amp;gt;&lt;br /&gt;
        &amp;lt;xsl:value-of select=&amp;quot;@name&amp;quot;/&amp;gt;&lt;br /&gt;
      &amp;lt;/paragraph&amp;gt;&lt;br /&gt;
      &amp;lt;paragraph&amp;gt;&lt;br /&gt;
        &amp;lt;b&amp;gt;&lt;br /&gt;
          &amp;lt;xsl:text&amp;gt;Color: &amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
        &amp;lt;/b&amp;gt;&lt;br /&gt;
        &amp;lt;xsl:value-of select=&amp;quot;data/@color&amp;quot;/&amp;gt;&lt;br /&gt;
      &amp;lt;/paragraph&amp;gt;&lt;br /&gt;
    &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
&amp;lt;/xsl:stylesheet&amp;gt;&lt;br /&gt;
Output:&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&amp;lt;paragraph&amp;gt;&amp;lt;b&amp;gt;Dog: &amp;lt;/b&amp;gt;Joe&amp;lt;/paragraph&amp;gt;&amp;lt;paragraph&amp;gt;&amp;lt;b&amp;gt;Color: &amp;lt;/b&amp;gt;black&amp;lt;/paragraph&amp;gt;&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== Attributes can be processed in the same way as elements==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
File: Data.xml&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;employee id=&amp;quot;js0034&amp;quot;&amp;gt;&lt;br /&gt;
    Joe Smith&lt;br /&gt;
&amp;lt;/employee&amp;gt;&lt;br /&gt;
File: Transform.xslt&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;xsl:stylesheet&lt;br /&gt;
      version=&amp;quot;1.0&amp;quot;&lt;br /&gt;
      xmlns:xsl=&amp;quot;http://www.w3.org/1999/XSL/Transform&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:template match=&amp;quot;employee&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsl:value-of select=&amp;quot;.&amp;quot;/&amp;gt;&lt;br /&gt;
      &amp;lt;xsl:text&amp;gt;[&amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
      &amp;lt;xsl:apply-templates select=&amp;quot;@id&amp;quot;/&amp;gt;&lt;br /&gt;
      &amp;lt;xsl:text&amp;gt;]&amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
    &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:template match=&amp;quot;@id&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;b&amp;gt;&lt;br /&gt;
        &amp;lt;i&amp;gt;&lt;br /&gt;
          &amp;lt;xsl:value-of select=&amp;quot;.&amp;quot;/&amp;gt;&lt;br /&gt;
        &amp;lt;/i&amp;gt;&lt;br /&gt;
      &amp;lt;/b&amp;gt;&lt;br /&gt;
    &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
&amp;lt;/xsl:stylesheet&amp;gt;&lt;br /&gt;
Output:&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&lt;br /&gt;
    Joe Smith&lt;br /&gt;
[&amp;lt;b&amp;gt;&amp;lt;i&amp;gt;js0034&amp;lt;/i&amp;gt;&amp;lt;/b&amp;gt;]&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== Check attribute existance==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
File: Data.xml&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; standalone=&amp;quot;yes&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;poem author=&amp;quot;jm&amp;quot; year=&amp;quot;1667&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;verse&amp;gt;line 1&amp;lt;/verse&amp;gt;&lt;br /&gt;
  &amp;lt;verse&amp;gt;line 2&amp;lt;/verse&amp;gt;&lt;br /&gt;
  &amp;lt;verse&amp;gt;line 3&amp;lt;/verse&amp;gt;&lt;br /&gt;
  &amp;lt;verse&amp;gt;line 4&amp;lt;/verse&amp;gt;&lt;br /&gt;
&amp;lt;/poem&amp;gt;&lt;br /&gt;
File: Transform.xslt&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; standalone=&amp;quot;yes&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;xsl:stylesheet xmlns:xsl=&amp;quot;http://www.w3.org/1999/XSL/Transform&amp;quot;&lt;br /&gt;
  version=&amp;quot;1.0&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;xsl:output method=&amp;quot;text&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;xsl:template match=&amp;quot;poem&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:if test=&amp;quot;@author=&amp;quot;jm&amp;quot;&amp;quot;&amp;gt;1. The poem&amp;quot;s author is jm.&amp;lt;/xsl:if&amp;gt;&lt;br /&gt;
  &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
&amp;lt;/xsl:stylesheet&amp;gt;&lt;br /&gt;
Output:&lt;br /&gt;
1. The poem&amp;quot;s author is jm.&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== Check value of attribute==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
File: Data.xml&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;?xml-stylesheet type=&amp;quot;text/xsl&amp;quot; href=&amp;quot;Transform.xslt&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;advertisement action=&amp;quot;create&amp;quot;&amp;gt;&lt;br /&gt;
   asdf&lt;br /&gt;
&amp;lt;/advertisement&amp;gt;&lt;br /&gt;
File: Transform.xslt&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;xsl:stylesheet xmlns:xsl=&amp;quot;http://www.w3.org/1999/XSL/Transform&amp;quot;&lt;br /&gt;
  version=&amp;quot;1.0&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;xsl:output method=&amp;quot;text&amp;quot; indent=&amp;quot;no&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;xsl:variable select=&amp;quot;advertisement/text&amp;quot; name=&amp;quot;path&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;xsl:template match=&amp;quot;/&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:apply-templates select=&amp;quot;$path&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
  &amp;lt;xsl:template match=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:apply-templates /&amp;gt;&lt;br /&gt;
  &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
  &amp;lt;xsl:template match=&amp;quot;headline&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:text&amp;gt;\F4&amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:value-of select=&amp;quot;text()&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
  &amp;lt;xsl:template match=&amp;quot;para&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:if test=&amp;quot;self::para[@fontsize=&amp;quot;agate&amp;quot;]&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsl:text&amp;gt;&amp;amp;#13;\F1&amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
      &amp;lt;xsl:value-of select=&amp;quot;text()&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;/xsl:if&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:if test=&amp;quot;self::para[@justify=&amp;quot;flushleft&amp;quot;]&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsl:text&amp;gt;&amp;amp;lt;&amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
    &amp;lt;/xsl:if&amp;gt;&lt;br /&gt;
  &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
&amp;lt;/xsl:stylesheet&amp;gt;&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== for-each select=&amp;quot;attribute::*&amp;quot;==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
File: Data.xml&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;data&amp;gt;&lt;br /&gt;
    &amp;lt;AAA id=&amp;quot;a1&amp;quot; pos=&amp;quot;start&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;BBB id=&amp;quot;b1&amp;quot;/&amp;gt;&lt;br /&gt;
      &amp;lt;BBB id=&amp;quot;b2&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;/AAA&amp;gt;&lt;br /&gt;
    &amp;lt;AAA id=&amp;quot;a2&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;BBB id=&amp;quot;b3&amp;quot;/&amp;gt;&lt;br /&gt;
      &amp;lt;BBB id=&amp;quot;b4&amp;quot;/&amp;gt;&lt;br /&gt;
      &amp;lt;CCC id=&amp;quot;c1&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;CCC id=&amp;quot;c2&amp;quot;/&amp;gt;&lt;br /&gt;
      &amp;lt;/CCC&amp;gt;&lt;br /&gt;
      &amp;lt;BBB id=&amp;quot;b5&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;CCC id=&amp;quot;c3&amp;quot;/&amp;gt;&lt;br /&gt;
      &amp;lt;/BBB&amp;gt;&lt;br /&gt;
    &amp;lt;/AAA&amp;gt;&lt;br /&gt;
&amp;lt;/data&amp;gt;&lt;br /&gt;
File: Transform.xslt&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;xsl:stylesheet&lt;br /&gt;
      version=&amp;quot;1.0&amp;quot;&lt;br /&gt;
      xmlns:xsl=&amp;quot;http://www.w3.org/1999/XSL/Transform&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:template match=&amp;quot;/&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;table border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;6&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;tr&amp;gt;&lt;br /&gt;
          &amp;lt;td colspan=&amp;quot;2&amp;quot;&amp;gt;Axis: attribute&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;/tr&amp;gt;&lt;br /&gt;
        &amp;lt;tr&amp;gt;&lt;br /&gt;
          &amp;lt;td&amp;gt;Element&amp;lt;/td&amp;gt;&lt;br /&gt;
          &amp;lt;td&amp;gt;Node-set&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;/tr&amp;gt;&lt;br /&gt;
        &amp;lt;xsl:for-each select=&amp;quot;/source//*&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;xsl:call-template name=&amp;quot;print&amp;quot;/&amp;gt;&lt;br /&gt;
        &amp;lt;/xsl:for-each&amp;gt;&lt;br /&gt;
      &amp;lt;/table&amp;gt;&lt;br /&gt;
    &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:template name=&amp;quot;print&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&lt;br /&gt;
          &amp;lt;xsl:value-of select=&amp;quot;name()&amp;quot;/&amp;gt;&lt;br /&gt;
          &amp;lt;xsl:text&amp;gt; id = &amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
          &amp;lt;xsl:value-of select=&amp;quot;./@id&amp;quot;/&amp;gt;&lt;br /&gt;
        &amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td&amp;gt;&lt;br /&gt;
          &amp;lt;xsl:for-each select=&amp;quot;attribute::*&amp;quot;&amp;gt;&lt;br /&gt;
            &amp;lt;xsl:if test=&amp;quot;not(@id)&amp;quot;&amp;gt;&lt;br /&gt;
              &amp;lt;xsl:value-of select=&amp;quot;name()&amp;quot;/&amp;gt;&lt;br /&gt;
            &amp;lt;/xsl:if&amp;gt;&lt;br /&gt;
            &amp;lt;xsl:value-of select=&amp;quot;./@id&amp;quot;/&amp;gt;&lt;br /&gt;
            &amp;lt;xsl:text/&amp;gt;&lt;br /&gt;
          &amp;lt;/xsl:for-each&amp;gt;&lt;br /&gt;
        &amp;lt;/td&amp;gt;&lt;br /&gt;
      &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
&amp;lt;/xsl:stylesheet&amp;gt;&lt;br /&gt;
Output:&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&amp;lt;table border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;6&amp;quot;&amp;gt;&amp;lt;tr&amp;gt;&amp;lt;th colspan=&amp;quot;2&amp;quot;&amp;gt;Axis: attribute&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;Element&amp;lt;/th&amp;gt;&amp;lt;td&amp;gt;Node-set&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;/table&amp;gt;&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== If the element has an attribute==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
File: Data.xml&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; standalone=&amp;quot;yes&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;poem author=&amp;quot;jm&amp;quot; year=&amp;quot;1667&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;verse&amp;gt;line 1&amp;lt;/verse&amp;gt;&lt;br /&gt;
  &amp;lt;verse&amp;gt;line 2&amp;lt;/verse&amp;gt;&lt;br /&gt;
  &amp;lt;verse&amp;gt;line 3&amp;lt;/verse&amp;gt;&lt;br /&gt;
  &amp;lt;verse&amp;gt;line 4&amp;lt;/verse&amp;gt;&lt;br /&gt;
&amp;lt;/poem&amp;gt;&lt;br /&gt;
File: Transform.xslt&lt;br /&gt;
&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; standalone=&amp;quot;yes&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;xsl:stylesheet xmlns:xsl=&amp;quot;http://www.w3.org/1999/XSL/Transform&amp;quot;&lt;br /&gt;
  version=&amp;quot;1.0&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;xsl:output method=&amp;quot;text&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;xsl:template match=&amp;quot;poem&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:if test=&amp;quot;@author&amp;quot;&amp;gt;&lt;br /&gt;
      The poem has an author attribute.&lt;br /&gt;
    &amp;lt;/xsl:if&amp;gt;&lt;br /&gt;
  &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
&amp;lt;/xsl:stylesheet&amp;gt;&lt;br /&gt;
Output:&lt;br /&gt;
      The poem has an author attribute.&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== includes or excludes elements if the specified attribute is present==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
File: Data.xml&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;data&amp;gt;    &lt;br /&gt;
     &amp;lt;car id=&amp;quot;a234&amp;quot; checked=&amp;quot;yes&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;car id=&amp;quot;a111&amp;quot; checked=&amp;quot;yes&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;car id=&amp;quot;a005&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/data&amp;gt;&lt;br /&gt;
File: Transform.xslt&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;xsl:stylesheet&lt;br /&gt;
      version=&amp;quot;1.0&amp;quot;&lt;br /&gt;
      xmlns:xsl=&amp;quot;http://www.w3.org/1999/XSL/Transform&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:template match=&amp;quot;car[not(@checked)]&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;paragraph&amp;gt;&lt;br /&gt;
        &amp;lt;xsl:text&amp;gt;Car: &amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
        &amp;lt;xsl:value-of select=&amp;quot;@id&amp;quot;/&amp;gt;&lt;br /&gt;
      &amp;lt;/paragraph&amp;gt;&lt;br /&gt;
    &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
&amp;lt;/xsl:stylesheet&amp;gt;&lt;br /&gt;
Output:&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;    &lt;br /&gt;
     &lt;br /&gt;
   &lt;br /&gt;
   &amp;lt;paragraph&amp;gt;Car: a005&amp;lt;/paragraph&amp;gt;&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== Select elements, which contain or do not contain the given attribute==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
File: Data.xml&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;data&amp;gt;    &lt;br /&gt;
    &amp;lt;car id=&amp;quot;a234&amp;quot; checked=&amp;quot;yes&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;car id=&amp;quot;a111&amp;quot; checked=&amp;quot;yes&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;car id=&amp;quot;a005&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/data&amp;gt;&lt;br /&gt;
&lt;br /&gt;
File: Transform.xslt&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;xsl:stylesheet&lt;br /&gt;
      version=&amp;quot;1.0&amp;quot;&lt;br /&gt;
      xmlns:xsl=&amp;quot;http://www.w3.org/1999/XSL/Transform&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:template match=&amp;quot;car[@checked]&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;paragraph&amp;gt;&lt;br /&gt;
        &amp;lt;xsl:text&amp;gt;Car: &amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
        &amp;lt;xsl:value-of select=&amp;quot;@id&amp;quot;/&amp;gt;&lt;br /&gt;
      &amp;lt;/paragraph&amp;gt;&lt;br /&gt;
    &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
&amp;lt;/xsl:stylesheet&amp;gt;&lt;br /&gt;
Output:&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;    &lt;br /&gt;
    &amp;lt;paragraph&amp;gt;Car: a234&amp;lt;/paragraph&amp;gt;&lt;br /&gt;
  &amp;lt;paragraph&amp;gt;Car: a111&amp;lt;/paragraph&amp;gt;&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== select=&amp;quot;state/@joined&amp;quot;==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
File: Data.xml&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;?xml-stylesheet href=&amp;quot;Transform.xslt&amp;quot; type=&amp;quot;text/xsl&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;member&amp;gt;&lt;br /&gt;
 &amp;lt;state joined=&amp;quot;1995&amp;quot;&amp;gt;Austria&amp;lt;/state&amp;gt;&lt;br /&gt;
 &amp;lt;state joined=&amp;quot;1950&amp;quot;&amp;gt;Belgium&amp;lt;/state&amp;gt;&lt;br /&gt;
 &amp;lt;state joined=&amp;quot;1973&amp;quot;&amp;gt;Denmark&amp;lt;/state&amp;gt;&lt;br /&gt;
 &amp;lt;state joined=&amp;quot;1995&amp;quot;&amp;gt;Finland&amp;lt;/state&amp;gt;&lt;br /&gt;
 &amp;lt;state joined=&amp;quot;1950&amp;quot;&amp;gt;France&amp;lt;/state&amp;gt;&lt;br /&gt;
&amp;lt;/member&amp;gt;&lt;br /&gt;
&lt;br /&gt;
File: Transform.xslt&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;xsl:stylesheet version=&amp;quot;1.0&amp;quot;&lt;br /&gt;
  xmlns:xsl=&amp;quot;http://www.w3.org/1999/XSL/Transform&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;xsl:output method=&amp;quot;text&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;xsl:template match=&amp;quot;member&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:text&amp;gt;Number of EU Member States: &amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:value-of select=&amp;quot;count(state)&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:text&amp;gt;&amp;amp;#10;&amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:apply-templates select=&amp;quot;state/@joined&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsl:sort data-type=&amp;quot;number&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;/xsl:apply-templates&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:text&amp;gt;&amp;amp;#10;&amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
  &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
  &amp;lt;xsl:template match=&amp;quot;state/@joined&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:text&amp;gt; - &amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:apply-templates select=&amp;quot;..&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:text&amp;gt; (&amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:value-of select=&amp;quot;.&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:text&amp;gt;)&amp;amp;#10;&amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
  &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
&amp;lt;/xsl:stylesheet&amp;gt;&lt;br /&gt;
Output:&lt;br /&gt;
Number of EU Member States: 5&lt;br /&gt;
 - Belgium (1950)&lt;br /&gt;
 - France (1950)&lt;br /&gt;
 - Denmark (1973)&lt;br /&gt;
 - Austria (1995)&lt;br /&gt;
 - Finland (1995)&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
			</entry>

	</feed>