Altova XMLSpy 2026 Enterprise Edition

Expressions XQuery pour JSON

Accueil Préc Haut Suivant

Les documents JSON et YAML peuvent être interrogés en saisissant une expression de requête XPath/XQuery 3.1 dans la fenêtre de sortie XPath/XQuery (voir la capture d'écran ci-dessous).

Cliquer pour agrandir/réduire

Pour évaluer une expression dans un document JSON ou YAML,, procédez comme suit :

 

1.Choisir l'icône XPath 3.1 ou XQuery 3.1.

2.Dans la capture d'écran, la fenêtre se trouve en mode d'évaluation JSON.

3.Saisir l'expression XPath 3.1 ou XQuery 3.1.

4.Cliquez sur Lancer évaluation (à gauche dans la barre d'outils).

 

Expressions XQuery 3.1 pour JSON

Étant donné que les structures de données JSON utilisent couramment des objets et des tableaux, c'est l'opérateur de recherche XQuery 3.1 ? qui est utilisé pour localiser les nœuds dans les objets JSON (qui sont essentiellement des mappages du point de vue XQuery) et les tableaux JSON. Cette méthode de localisation d'un nœud diffère de la manière dont les expressions de chemin sont écrites pour localiser les nœuds dans les documents XML. Dans ces derniers, l'opérateur barre / est utilisé pour relier les étapes dans une expression de chemin (par exemple : items/*). Dans les expressions XQuery pour JSON, l'opérateur barre n'est pas utilisé pour localiser les nœuds.

 

Exemples d'expressions XQuery pour JSON

 

?items?*

Interpréter comme suit : Rechercher le nœud enfant items, puis rechercher tous ses nœuds enfants. Notez que items est censé être un nœud enfant du nœud contextuel.

 

?Artists?1?Albums?2?Name

Interpréter comme suit : Rechercher le nœud enfant Artists, puis rechercher son premier nœud enfant. À l'intérieur de ce nœud, rechercher le nœud enfant Albums, puis rechercher son deuxième nœud enfant. Renvoyez maintenant le nœud Nom de ce deuxième nœud enfant.

 

?Tracks?*[contains(?Writer, 'Brian')]

Interpréter comme suit : Recherchez le nœud enfant Tracks, puis recherchez tous ses enfants. Lors de la recherche des enfants, recherchez les enfants du nœud Writer de chaque enfant et sélectionnez uniquement ceux qui contiennent la chaîne 'Brian'. Notez qu'il y a trois opérateurs de recherche dans cette expression. Chacun est utilisé dans une nouvelle étape, où un ensemble de nœuds doit être recherché.

 

?Artists?*[?Name="Queen"]?Albums?*?Name

Interpréter comme suit : À l'intérieur de l'objet racine, recherchez le nœud enfant Artists, puis recherchez tous ses enfants qui ont un nœud Name avec une valeur "Queen". À l'intérieur de ces nœuds, recherchez tous les nœuds enfants Albums, puis leurs enfants. À l'intérieur de ces enfants, recherchez (et renvoyez) les nœuds Name respectifs. Dans la capture d'écran ci-dessous, cette expression est affichée dans la fenêtre XPath/XQuery avec la représentation Mode grille JSON du document JSON cible.

 

XQueryExpForJSON

 

Volet Résultats pour l'évaluation JSON/YAML

Le volet Résultats (à droite dans la capture d'écran ci-dessous) affiche les composants JSON du résultat de l'évaluation en gras dans la partie gauche du volet Résultats, et la valeur du composant dans la partie droite du volet. Dans la capture d'écran ci-dessous, les résultats sont affichés en gras. Le tableau a été développé afin de montrer ses éléments.

Cliquer pour agrandir/réduire

Les mappages et les tableaux sont affichés en format court ou détaillé selon que l'icône Afficher le résultat complet dans la barre d'outils est désactivée ou activée. Les mappages et les tableaux situés dans la partie gauche du volet peuvent être développés en cliquant sur leurs icônes plus respectives.

 

© 2019-2025 Altova GmbH