Maison  >  Article  >  développement back-end  >  Spécification de l'axe dans la requête XPath (réimprimé du manuel MSSQL)

Spécification de l'axe dans la requête XPath (réimprimé du manuel MSSQL)

黄舟
黄舟original
2017-03-01 16:48:381945parcourir

L'exemple suivant montre comment spécifier un axe dans une requête XPath. Les requêtes XPath dans ces exemples sont spécifiées sur le schéma de mappage contenu dans SampleSchema1.xml. Pour plus d’informations sur cet exemple de schéma, consultez Exemple de requête XPath.
Exemple
A. Récupérer les éléments enfants du nœud de contexte
Ce XPath interroge tous les éléments enfants 97f7fd1f338b1e0c8421dd947e26f17a du nœud de contexte sélectionné :
/child::Employee
Dans cette requête , l'enfant est l'axe et le client est le test du nœud (ce test est VRAI si le client est un nœud 1dd643d91c792abd0a34d1b312e2f207 car 1dd643d91c792abd0a34d1b312e2f207 est le type de nœud principal associé à l'axe enfant).
l'enfant est l'axe par défaut. Par conséquent, la requête peut s'écrire sous la forme :
/Employé
Test de la requête XPath sur le schéma de mappage
Créez le modèle suivant (MyTemplate.xml) et enregistrez-le dans le répertoire associé au nom virtuel du modèle.

<ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql"> 
  <sql:xpath-query mapping-schema="SampleSchema2.xml"> 
    /Employee 
  </sql:xpath-query> 
</ROOT>

L'URL suivante exécute le modèle :

http://IISServer/VirtualRoot/template/MyTemplate.xml

La requête XPath peut être spécifiée directement dans l'URL :

http://IISServer/nwind/schema/SampleSchema1.xml/child::Customer?root=root

Le schéma de nom virtuel est le type de schéma. Les fichiers de schéma sont stockés dans le répertoire associé au nom virtuel du type de schéma. Le paramètre root spécifie l'élément de niveau supérieur du document XML résultant (root peut avoir n'importe quelle valeur).
Ce qui suit est un ensemble de résultats partiels de l'exécution du modèle :

<ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql">  
  <Employee EmployeeID="1" LastName="Davolio"  
            FirstName="Nancy" Title="Sales RePResentative" />  
  <Employee EmployeeID="2" LastName="Fuller"  
            FirstName="Andrew" Title="Vice President, Sales" />  
   ... 
</ROOT>

B. Récupérez les nœuds petits-enfants du nœud contextuel
Ce XPath interroge l'élément enfant 97f7fd1f338b1e0c8421dd947e26f17a le nœud de contexte sélectionné. Tous les éléments enfants 7e7d629a61e1c649d53a7e569305f73a :
/child::Customer/child::Order
Dans cette requête, child est l'axe et Customer et Order sont des tests de nœud (si Customer et Order sont 1dd643d91c792abd0a34d1b312e2f207, alors ces tests de nœuds sont VRAI, car le nœud 1dd643d91c792abd0a34d1b312e2f207 Pour chaque nœud correspondant à 97f7fd1f338b1e0c8421dd947e26f17a, un nœud correspondant à 13d2552a0aa3da4fed5e3c0ccb82eaa6 est ajouté au résultat. Seul 7e7d629a61e1c649d53a7e569305f73a est renvoyé dans le jeu de résultats.
l'enfant est l'axe par défaut. Par conséquent, cette requête peut être spécifiée comme :
/Customer/Order
Test de la requête XPath sur le schéma de mappage
Créez le modèle suivant (MyTemplate.xml) et enregistrez-le dans le répertoire.

<ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql"> 
  <sql:xpath-query mapping-schema="SampleSchema1.xml"> 
    /Customer/Order 
  </sql:xpath-query> 
</ROOT>

Ce qui précède est le contenu de la spécification de l'axe dans la requête XPath (réimprimé du manuel MSSQL. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (www.php.cn). !


Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn