2013-02-08 3 views
-1

Мой XSLT показан ниже. aic - пространство имен. Что такое cstyle? - это встроенный элемент/функция XSLT? Или элемент внутри ожидаемого ввода xml?Что такое cstyle в XSLT?

<xsl:stylesheet exclude-result-prefixes="aic" 
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:aic="http://ns.adobe.com/AdobeInCopy/2.0/" > 

    <xsl:template match="/"> 
</xsl:template> 

<xsl:template match="aic:cstyle[contains(@name,'bold')]"> 

</xsl:template> 
</xsl:stylesheet> 

ответ

3

Это элемент внутри ожидаемого входного XML. XPaths в атрибутах XSLT match обычно применяются к содержимому из входного XML.

2

Точно так, как в my answer to your previous question, aic:cstyle является селектор, который соответствует элементы, локальное имя которого cstyle и чьи URI пространства имен является http://ns.adobe.com/AdobeInCopy/2.0/ (URI, связанный с префиксом aic в xsl:stylesheet элемента). Таким образом

<xsl:template match="aic:cstyle[contains(@name,'bold')]"> 

шаблон, который будет применяться к любому {http://ns.adobe.com/AdobeInCopy/2.0/}cstyle элементу, который имеет атрибут name, который содержит подстроку bold. (Итак, чтобы ответить на ваш вопрос напрямую: соответствующее выражение будет соответствовать элементам во входных потоках, для которых была написана таблица стилей.)

Как и любой новый язык программирования, я настоятельно рекомендую вам найти достойный учебник и работайте над этим, чтобы получить удобство с синтаксисом и идиомами языка с помощью простых примеров, прежде чем вы начнете пытаться декодировать большой и сложный XSLT, который вы унаследовали из других источников.

Смежные вопросы