Значение атрибута match
инструкции <xsl:template>
должно быть шаблоном совпадения .
Шаблоны совпадения образуют подмножество набора всех возможных XPathвыражения .Первое естественное ограничение заключается в том, что шаблон сопоставления должен выбирать набор узлов.Есть и другие ограничения.В частности, обратные оси не допускаются на этапах определения местоположения (но могут быть указаны в предикатах).Кроме того, никакие ссылки на переменные или параметры не допускаются в XSLT 1.0, но их использование допустимо в XSLT 2.x.
/
в XPath обозначает корневой или узел документа.В XPath 2.0 (и, следовательно, XSLT 2.x) это также может быть записано как document-node()
.
Шаблон соответствия может содержать //
сокращение .
Примеры шаблонов совпадений:
<xsl:template match="table">
может применяться к любому элементу с именем table
.
<xsl:template match="x/y">
может применяться к любому элементу с именем y
родитель которого является элементом с именем x
.
<xsl:template match="*">
, может применяться к любому элементу.
<xsl:template match="/*">
может применяться только к верхнему элементу документа XML.
<xsl:template match="@*">
можно применить к любому атрибуту.
<xsl:template match="text()">
можно применить к любому текстовому узлу.
<xsl:template match="comment()">
можно применить к любому узлу комментария.
<xsl:template match="processing-instruction()">
может применяться к любому узлу инструкции обработки.
<xsl:template match="node()">
может применяться к любому узлу: элементу, тексту, комментарию или команде обработки.