Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gibt den Namespace-URI zurück, der dem XSD-Datentyp eines aktuellen Knotens oder des ersten Knotens (in der Dokumentreihenfolge) in der bereitgestellten Knotengruppe zugeordnet ist.
string ms:type-namespace-uri([node-set])
Hinweise
Bei einfachen XSD-Typen gibt die type-namespace-uri-Funktion eine leere Zeichenfolge zurück. Bei komplexen XSD-Typen, die über das angegebene name-Attribut verfügen, gibt die type-namespace-uri-Funktion einen vollständigen URI zurück, z. B. "http://www.example.microsoft.com/my-xsd-types.".
Im folgenden Beispielausdruck werden die Knoten zurückgegeben, deren Datentyp den Namespace-URI "PurchaseOrderType" aufweist.
//*[ms:type-namespace-uri()='uri:PurchaseOrderType')]
Beispiel
Im folgenden Beispiel wird eine XSLT-Vorlagenregel verwendet, um alle Elemente aus der Datei books.xml auszuwählen und um die Datentypen der Elemente und den Namespace-URI wie in der Datei books.xsd definiert auszugeben.
XML-Datei (books.xml)
Verwenden Sie die Datei books.xml.
XSD-Datei (books.xsd)
Verwenden Sie die Datei books.xsd.
XSLT-Datei (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:output method="html"
omit-xml-declaration="yes"/>
<xsl:template match="/">
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="*">
<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:apply-templates/>
</xsl:template>
</xsl:stylesheet>
HTML-Datei (books.html)
Die HTML-Datei enthält ein JScript, das das Laden von XML-, XSLT- und XSD-Dateien behandelt.
<html>
<head>
<script>
function init() {
try {
var objxsd = new ActiveXObject("Msxml2.XMLSchemaCache.5.0");
var objxml = new ActiveXObject("Msxml2.DOMDocument.5.0");
var objxsl = new ActiveXObject("Msxml2.DOMDocument.5.0");
// namespace uri ("urn:books") must be declared as one of the
// namespace delarations in the "books.xml" that is an instance
// of "books.xsd"
objxsd.add("urn:books", "books.xsd");
objxml.schemas = objxsd;
objxml.setProperty("SelectionLanguage", "XPath");
objxml.setProperty("SelectionNamespaces",
"xmlns:ms='urn:schemas-microsoft-com:xslt'");
objxml.async=false;
objxml.validateOnParse=true;
objxml.load("books.xml");
objxsl.async=false;
objxsl.load("books.xsl");
result += objxml.transformNode(objxsl);
document.body.innerHTML = result;
}
catch (e) {
alert(e.description);
}
}
</script>
</head>
<body onload="init()">
</body>
</html>
Ausgabe
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"
Beachten Sie, dass x:catalog-Elemente und book-Elemente über anonyme Datentypen verfügen. Daher geben die ms:type-local-name()-Funktion und die ms:type-namespace-uri()-Funktion eine leere Zeichenfolge zurück.
Siehe auch
Verweis
Referenz zu XML-Schemata (XSD)
Referenz zu XML-Datentypen
Konzepte
Verwenden von XPath-Erweiterungsfunktionen für XSD-Unterstützung