Fonction ms:type-local-name([collection de nœuds])
Retourne le nom non qualifié du type XSD du nœud actuel ou du premier nœud (dans l'ordre du document) de la collection de nœuds spécifiée.
string ms:type-local-name([node-set])
Notes
Pour les types simples, la fonction type-local-name retourne un nom tel que « ID » ou « ENTITY ». Pour les types XSD complexes dont l'attribut name est spécifié, la fonction type-local-name retourne un nom non qualifié tel que « Class ». Avec les types sans nom, la fonction retourne une chaîne vide.
L'exemple d'expression suivant sélectionne tous les nœuds présentant le type de données primitif XSD intégré « string ».
"//*[ms:type-local-name()='string')]"
Exemple
L'exemple suivant utilise une règle de modèle XSLT pour sélectionner tous les éléments de books.xml et générer les types de données des éléments comme défini dans books.xsd.
Fichier XML (books.xml)
Utilisez books.xml.
Fichier XSD (books.xsd)
Utilisez books.xsd.
Fichier 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:output method="html"
omit-xml-declaration="yes"/>
<xsl:template match="/">
<H3>nodes of all data types:</H3>
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="*">
<DIV>
<xsl:value-of select="name()"/> is of
<xsl:value-of select="ms:type-local-name()"/>
</DIV>
<xsl:apply-templates/>
</xsl:template>
</xsl:stylesheet>
Fichier HTML (books.html)
Le fichier HTML contient un JScript qui gère le chargement de fichiers XML, XSLT et XSD.
<html>
<head>
<script>
function init() {
try {
var objxsd = new ActiveXObject("Msxml2.XMLSchemaCache.6.0");
var objxml = new ActiveXObject("Msxml2.DOMDocument.6.0");
var objxsl = new ActiveXObject("Msxml2.DOMDocument.6.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.xslt");
result = "<h2>Used in an XSLT</h2>";
result += objxml.transformNode(objxsl);
document.body.innerHTML = result;
}
catch (e) {
alert(e.description);
}
}
</script>
</head>
<body onload="init()">
</body>
</html>
Sortie
x:catalog is of
book is of
author is of string
Gambardella, Matthew
title is of string
XML Developer's Guide
genre is of string
Computer
price is of float
44.95
publish_date is of date
2000-10-01
description is of string
An in-depth look at creating applications with XML.
Notez que les éléments x:catalog et book présentent des types sans nom.
Voir aussi
Référence
Référence des types de données XML
Concepts
Utilisation des fonctions d'extension XPath pour la prise en charge de XSD