XSLT | страница 77



>     Name

>     Mass

>     Radius

>     Day

>     

>    

>  


>  

>  

>   

>   

>   

>

ИСПОЛЬЗОВАНИЕ ИМЕНОВАННЫХ ШАБЛОНОВ

К шаблонам можно также обращаться по имени. Этот вопрос будет рассмотрен в главе 9.

Теперь к каждому элементу >, > и > применяется новый шаблон: мы не просто получаем строковое значение узла при помощи >, мы можем дополнительно обработать каждый элемент — например, прочитать значения атрибута >UNITS. Сначала я получу строковые значения каждого из элементов >, > и >. Теперь, когда у нас есть шаблон для каждого из этих узлов-элементов и каждый узел является контекстным узлом в своем шаблоне, вместо того, чтобы ссылаться на узел элемента по имени, мы можем сослаться на него как на контекстный узел при помощи выражения XPath "." (листинг 3.2):

Листинг 3.2. Версия planets.xsl с выбором

>

>

> xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

>  

>  

>     </code></p><p><code>>     The Planets Table</code></p><p><code>>    

>   

>   

>    

>     The Planets Table

>    

>   

>    

>     

>     

>     

>     

>    

NameMassRadiusDay

>   

>  


>  

>  

>   

>   

>   


> 

> 

> 


> 

>  

> 


> 

> 

> 

>

Этот код только воспроизводит то, что мы уже делали ранее в предыдущей версии >planets.xsl, использующей >, > и т.д., то есть читающей и отображающей данные каждого элемента >, > и >. Теперь же, когда у нас есть отдельный шаблон для каждого из этих элементов, можно осуществить дополнительную обработку — например чтение значений атрибутов.