Création de requêtes imbriquées

Permet d'imbriquer des requêtes et de les affecter à des éléments enfant.

Procédure

  1. Dans Document Studio, ouvrez la vue Schéma de source de données.
  2. Faites glisser un élément de la vue Schéma de source de données dans un élément de canevas. Lorsqu'une requête est déplacée dans un élément qui possède un élément parent, le système vérifie si la requête déplacée peut être exécutée dans le contexte d'une requête d'élément parent. Toutes les requêtes qui peuvent servir de contexte sont affichées dans une fenêtre Sélection du contexte. La liste affiche l'ID et sa représentation textuelle.
  3. Sélectionnez le contexte de la requête dans la liste. Si vous sélectionnez Aucun comme contexte, deux requêtes imbriquées non associées sont générées.
  4. Cliquez sur OK.

Exemple

L'exemple suivant montre une requête imbriquée affectée à un élément de canevas Rational DOORS.

Paragraph DOORS 1 $1 Module/Object
	Text
	Module/Object/Object/Heading
Paragraph DOORS 1 $2 Module/Object/Attribute
	Text
	Module/Object/Attribute/Name
Dans cet exemple, une requête Module/Object sert de contexte pour Module/Object/Attribute.

Dans cet exemple, si le contexte de la deuxième requête a pour valeur $1, la sortie suivante est générée :

Si le contexte de la deuxième requête a pour valeur aucun, la sortie suivante est générée :

L'exemple suivant montre la requête imbriquée affectée à un élément de canevas IBM® Rational Tau.

La première requête, model/root(Package), est effectuée dans le contexte du modèle Rational Tau. La deuxième requête, model/root(Package)/ownedMember, est effectuée sur chaque package renvoyé par la première requête.

Si la liste de toutes les classes des packages de niveau supérieur du modèle est requise, la requête est model/root(Package)/ownedMember(Class). Sous cette forme, le document de sortie ne contient plus le nom de chaque package. Une liste de classes est générée de la même manière que dans le premier cas. La requête est fractionnée en fonction de ses requêtes de composant et chaque requête est exécutée dans le contexte défini par les requêtes précédentes :
Tableau 1. Sous-requêtes
Sous-requête Contexte Résultat
model Non applicable modèle
model/root(Package) modèle liste de packages
ownedMember(Class) liste de packages liste de classes
Chaque sous-requête est effectuée une fois par élément et les résultats de chaque exécution sont concaténés. Ces résultats deviennent le contexte de la sous-requête suivante, ou la liste des résultats, si la sous-requête est la dernière.

Commentaires