Noeuds et attributs de schéma de service Web
Une opération de service Web REST entrant appelle un seul objet basé sur un schéma, à savoir un objet métier, un service fonctionnel ou un script de service. L'objet comporte un schéma qui, par défaut, fait office à la fois de schéma de requête et de schéma de réponse. Le produit permet de définir un schéma explicite pour une opération de service Web qui représente une vue du schéma interne sous-jacent pour un client externe. Notez que le schéma d'opération est une vue stricte du schéma interne et qu'en tant que tel, il n'introduit pas de modifications structurelles.
-
Déclarer l'utilisation d'un élément pour savoir s'il fait partie du schéma de requête, du schéma de réponse ou des deux.
-
Affecter un nom d'élément externe à un élément interne. Utile pour éviter le clonage de services internes à cette fin uniquement.
-
Améliorer la gestion et de la visibilité des références des opérations GET.
-
Prendre en charge les structures de style HATEOAS en dehors du schéma interne. Cela permet un traitement interne transparent.
-
Fournir un texte d'aide pour des éléments individuels.
La documentation suivante fournit une liste complète des attributs dont vous disposez pour créer un schéma d'opération de service Web entrant.
Définition de schéma d'opération
Les attributs suivants définissent le schéma d'opération externe qui établit le schéma de requête et de réponse pour l'opération.
| Mnémonique | Valeurs valides | Description | Exemples |
|---|---|---|---|
| usage= | "REQ" |
Indique que l'élément doit être inclus dans le schéma de requête uniquement. Lorsqu'elle est indiquée pour un élément de groupe ou de liste, la valeur s'applique à l'ensemble du conteneur. Un élément spécifique du conteneur peut remplacer la valeur par défaut du conteneur. |
|
| "RESP" |
Indique que l'élément doit être inclus dans le schéma de réponse uniquement. Lorsqu'elle est indiquée pour un élément de groupe ou de liste, la valeur s'applique à l'ensemble du conteneur. Un élément spécifique du conteneur peut remplacer la valeur par défaut du conteneur. |
|
|
| "BOTH" |
Indique que l'élément doit être inclus dans les définitions de schéma de requête et de réponse. C'est la valeur par défaut Lorsqu'elle est indiquée pour un élément de groupe ou de liste, la valeur s'applique à l'ensemble du conteneur. Un élément spécifique du conteneur peut remplacer la valeur par défaut du conteneur. |
|
|
| "EXCL" |
Indique que l'élément ne doit pas être inclus dans les définitions de schéma de requête ou de réponse. Lorsqu'elle est indiquée pour un élément de groupe ou de liste, la valeur s'applique à l'ensemble du conteneur. Un élément spécifique du conteneur peut remplacer la valeur par défaut du conteneur. |
|
|
| mapTo= | "nom d'élément interne" |
Mappe un élément de service Web sur un élément interne. Par défaut, le nom de l'élément interne est supposé être identique au nom de l'élément de service Web. Utilisez cet attribut pour affecter un nom d'élément externe dans le schéma d'opération et le mapper sur un élément interne correspondant. Il ne s'agit pas d'une expression XPath, mais plutôt d'une référence à un nom d'élément valide qui correspond à la structure du schéma interne étendu. Le propriétaire de l'élément doit être identique au propriétaire du schéma de service Web. Si le schéma sous-jacent d'une opération a été étendu (à l'aide de l'extension de zone de données dynamique), le propriétaire de l'extension peut uniquement référencer ses éléments dans son extension de schéma de service Web pour l'opération. |
Elément de schéma interne :
Elément de schéma d'opération :
|
| role= | "FKGP" |
Etablit une structure de groupe qui représente une clé étrangère pour une entité. L'élément lui-même n'existe pas dans le schéma interne. Il regroupe les éléments de la valeur de clé étrangère ainsi qu'un élément _link correspondant qui, lors de l'exécution, fournit l'URL d'adresse complète de l'opération GET de cette entité. Les clients du service Web peuvent utiliser le lien pour obtenir les données de l'entité. |
Elément de schéma interne :
Groupe de schéma d'opération :
|
| "COLL" |
Etablit une structure de groupe qui représente un ensemble d'entités correspondant à une liste de services internes. L'élément lui-même n'existe pas dans le schéma interne. Il regroupe la liste interne mappée sur un élément _data et un élément _link correspondant qui, lors de l'exécution, fournit l'URL d'adresse complète pour l'opération GET de l'ensemble. Les clients du service Web peuvent utiliser ce lien pour obtenir un ensemble plus détaillé d'informations pour chaque entité de la liste. Par défaut, tous les éléments de la liste référencée sont inclus dans le schéma d'opération. Vous pouvez explicitement référencer et définir des attributs pour des éléments spécifiques si nécessaire. |
Elément de schéma interne :
Groupe de schéma d'opération :
|
|
| getOperation= |
"expression" Composants d'expression :
Les paramètres pk2-5 sont requis pour correspondre à la définition de clé primaire de l'objet de maintenance. |
Valide uniquement sur les éléments _ self et _ link. L'attribut est utilisé pour référencer l'opération GET par défaut pour une entité telle que définie par son objet de maintenance ou son objet métier. L'application détermine l'opération GET à utiliser comme suit :
|
|
|
"expression" Composants d'expression :
|
Valide uniquement sur les éléments _ self et _ link. L'attribut est utilisé pour référencer une opération GET spécifique avec les informations nécessaires pour composer ses paramètres de chemin. |
|
Eléments spécialisés
La définition du schéma d'opération utilise des noms d'élément spécialisés dans le style de la norme Hypermedia comme moteur de l'état de l'application (HATEOAS). Ces éléments ne doivent être définis que par le schéma d'opération car ils ne sont pas pertinents pour le service d'opération interne et ne doivent pas être gérés par le celui-ci.
La liste suivante décrit chaque élément et son utilisation.
| Nom de l'élément | Description | Exemples |
|---|---|---|
| <_self .../> |
Les charges utiles de réponse peuvent inclure un élément "_ self" qui contient l'URL d'adresse complète de l'opération GET associée à l'entité renvoyée dans la réponse. Il s'agit d'un élément facultatif et un seul peut exister dans un schéma d'opération. Pour plus d'informations, voir les attributs de définition de schéma getOperation=. |
|
| <_link .../> |
Les charges utiles de réponse peuvent inclure des clés étrangères. Pour ces entités, la réponse inclut un élément "_ link" qui contient l'URL d'adresse complète de l'opération GET pour cette entité (si elle existe). Pour plus d'informations, voir les attributs de définition de schéma role= et getOperation=. |
|
| <_data .../> |
Fournit une référence standard à une liste d'entités dans le schéma interne. Pour plus d'informations, voir l'attribut de définition de schéma role="COLL". |
|
Attributs de documentation
Les attributs suivants fournissent une documentation supplémentaire pour les éléments individuels inclus dans la spécification OpenAPI du service Web.
| Mnémonique | Valeurs valides | Description | Exemples |
|---|---|---|---|
| helpText= | "nom du champ de texte d'aide" |
Associe un élément à un enregistrement de texte d'aide spécifique défini pour le service Web entrant. Si l'élément est inclus à la fois dans le schéma de requête et de réponse, le même texte d'aide est utilisé dans les deux. Si cet attribut n'est pas spécifié et qu'un seul enregistrement de champ de texte d'aide existe pour le champ associé à l'élément interne, cet enregistrement de texte d'aide est utilisé. S'il existe plusieurs enregistrements de champ de texte d'aide, celui dans lequel le nom du texte d'aide est identique au nom du champ est utilisé. Notez qu'un élément interne est associé à un nom de champ via les attributs mdField=, le cas échéant, sinon via l'attribut mapField=. Non valide pour les éléments _ self et _ link. |
Dans cet exemple, le service Web entrant définit un nom de champ de texte d'aide "TD_ENTRY" qui fournit un texte d'aide pour cet élément. Le même texte d'aide est inclus pour l'élément dans le schéma de requête et de réponse. |
| helpTextResponse= | "nom du champ de texte d'aide" |
Associe un élément inclus dans le schéma de requête et de réponse à un enregistrement de texte d'aide spécifique à utiliser dans le contexte du schéma de réponse. Suit les mêmes règles que l'attribut helpText=. |
Dans cet exemple, le service Web entrant définit les enregistrements de texte d'aide suivants :
|
