Функция ms:schema-info-available
Возвращает значение true, если для текущего узла доступны сведения об XSD.
boolean ms:schema-info-available()
Заметки
Следующее выражение возвращает значение true для всех узлов со сведениями о типе XSD.
"//*[ms:schema-info-available()]"
Пример
В следующем примере правило XSLT-шаблона используется для выбора всех элементов файла books.xml, а затем для вывода типов данных элементов и URI-кода пространства имен, как определено в файле books.xsd.
XML-файл (books.xml)
Используйте books.xml.
XSD-файл (books.xsd)
Используйте books.xsd.
HTML-файл (books.html)
HTML-файл такой же, как и в разделе Функция ms:type-namespace-uri([node-set]).
XSLT-файл (books.xslt)
<?xml version='1.0'?>
<xsl:stylesheet version="1.0"
xmlns:ms="urn:schemas-microsoft-com:xslt"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="text()"/>
<xsl:output method="html"
omit-xml-declaration="yes"/>
<xsl:template match="/">
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="*">
<!-- process only those element whose schema-info is available. -->
<xsl:if test="ms:schema-info-available()">
<DIV>
<xsl:value-of select="name()"/> is of
"<xsl:value-of select="ms:type-local-name()"/>" in
"<xsl:value-of select="ms:type-namespace-uri()"/>"
</DIV>
</xsl:if>
<xsl:apply-templates/>
</xsl:template>
</xsl:stylesheet>
Вывод
x:catalog is of "" in ""
book is of "" in ""
author is of "string" in "http://www.w3.org/2001/XMLSchema"
title is of "string" in "http://www.w3.org/2001/XMLSchema"
genre is of "string" in "http://www.w3.org/2001/XMLSchema"
price is of "float" in "http://www.w3.org/2001/XMLSchema"
publish_date is of "date" in "http://www.w3.org/2001/XMLSchema"
description is of "string" in "http://www.w3.org/2001/XMLSchema"
description is of "string" in "http://www.w3.org/2001/XMLSchema"
В описанном случае вывод осуществляется таким же образом, как описано в разделе ms:type-namespace-uri, так как сведения схем доступны для каждого элемента.
См. также
Ссылки
Справочник по XML-схемам (XSD)
Справочник по типам данных XML