Documents cXML

La présente section propose une vue d'ensemble de la prise en charge cXML ainsi que des informations relatives à la création de définitions du flot de documents pour les échanges cXML.

Généralités

Le Gestionnaire de documents de WebSphere Partner Gateway identifie un document cXML par le nom de l'élément racine du document XML, qui est cXML, et la version par le cXML DOCTYPE (DTD) cXML. Par exemple, le DOCTYPE suivant est pour cXML version 1.2.009 :

<!DOCTYPE cXML SYSTEM "http://xml.cXML.org/schemas/cXML/1.2.009/cXML.dtd"> 

Le gestionnaire de documents procède à la validation DTD des documents cXML ; toutefois, WebSphere Partner Gateway ne fournit pas de DTD cXML. Vous pouvez les télécharger à partir du site www.cxml.org puis les charger dans WebSphere Partner Gateway via le module de mappe de validation de Console de communauté. Une fois que vous avez téléchargé le DTD, associez-le au flot de documents cXML. Pour plus d'informations sur l'association du DTD avec le flot de documents cXML, voir Association de mappes à des définitions de flot de documents.

Le Gestionnaire de documents utilise deux attributs de l'élément racine du gestionnaire de documents : payloadID et timestamp. Les payloadID et timestamp cXML sont utilisés en tant que numéro d'ID document et horodatage du document. Ces deux informations peuvent être consultées sur la Console de communauté pour le Gestionnaire du document.

Les éléments From (De) et To (A) de l'en-tête cXML contient l'élément Credential utilisé pour le routage et l'authentification du document. L'exemple ci-dessous affiche les éléments From (De) et To (A) comme source et cible du document cXML.

Remarque : Ici comme partout ailleurs dans ce document, les numéros DUNS ne sont que des exemples.
<Header>
 <From>
 
             <Credential domain="AcmeUserId">
                 <Identity>admin@acme.com</Identity>
             </Credential>
             <Credential domain="DUNS">
                 <Identity>130313038</Identity>
             </Credential>
 </From
 <To>
             <Credential domain="DUNS">
                 <Identity>987654321</Identity>
             </Credential>
             <Credential domain="IBMUserId">
                 <Identity>test@ibm.com</Identity>
             </Credential>
 </To>

Si plusieurs éléments credential sont utilisés, le Gestionnaire de documents utilise le numéro DUNS comme identificateur commercial pour le routage et l'authentification. Si aucun numéro DUNS n'a été indiqué, le premier Credential est utilisé.

WebSphere Partner Gateway n'utilise pas les informations se trouvant dans l'élément émetteur.

Dans le cadre d'une transaction synchrone, les en-têtes From (De) et To (A) ne sont pas utilisés dans le document de réponse cXML. La document de réponse est envoyé via la même connexion HTTP qui est établie par le document de la demande.

Types de document cXML

Un document cXML peut se présenter sous trois types : Demande, Réponse ou Message.

Demande

Il existe plusieurs types de demandes cXML. L'élément Request du Document cXML correspond à la définition du flot de documents dans WebSphere Partner Gateway. Les éléments de demandes classiques sont les suivants :

La table suivante illustre la relation entre les éléments d'un document de demande cXML et les définitions de flot de documents dans WebSphere Partner Gateway :

Elément cXML
Définition de flot de documents
DOCTYPE cXML
Protocole
Version DTD
Version de protocole
Demande (type)
Par exemple, OrderRequest
Flot de document
Réponse

Le participant cible envoie une réponse cXML pour indiquer au participant source les résultats de la demande cXML. Etant donné que les résultats de certaines demandes peuvent ne contenir aucune donnée, l'élément Response peut contenir uniquement un élément Status. Un élément Response peut également contenir toute donnée de niveau application. Par exemple, lors de la phase PunchOut, les données de niveau application sont contenues dans un élément PunchOutSetupResponse. Les éléments Response classiques sont les suivants :

La table suivante illustre la relation entre les éléments d'un document de réponse cXML et les définitions de flot de documents de WebSphere Partner Gateway :

Elément cXML
Définition de flot de documents
DOCTYPE cXML
Protocole
Version DTD
Version de protocole
Réponse (type)
Par exemple, ProfileResponse
Flot de document
Message

Un message cXML contient les informations de flot de documents de WebSphere Partner Gateway dans l'élément Message cXML. Il peut éventuellement contenir un élément Status, identique à celui d'un élément Response. Il serait utilisé dans des messages qui sont des réponses aux messages de demandes.

Le contenu de ce message est personnalisé en fonction des besoins métier de l'utilisateur. L'élément se trouvant directement sous l'élément <Message> correspond au flot de documents créé dans WebSphere Partner Gateway. Dans l'exemple suivant, SubscriptionChangeMessage est le flot de documents :

<Message>
 <SubscriptionChangeMessage type="new">
            <Subscription>
                 <InternalID>1234</InternalID>
                 <Name xml:lang="en-US">Q2 Prices</Name>
                 <Changetime>1999-03-12T18:39:09-08:00</Changetime>
                 <SupplierID domain="DUNS">942888711</SupplierID>
                 <Format version="2.1">CIF</Format>
             </Subscription>
 </SubscriptionChangeMessage>
 </Message>

La table suivante illustre la relation entre les éléments d'un message cXML et les définitions de flot de documents de WebSphere Partner Gateway :

Elément cXML
Définition de flot de documents
DOCTYPE cXML
Protocole
Version DTD
Version de protocole
Message
Flot de document

Le moyen le plus simple de distinguer un message unidirectionnel d'un document Demande-Réponse est la présence d'un élément Message au lieu d'un élément de demande ou de réponse.

Un message peut posséder les attributs suivants :

En-têtes Content-type et documents joints

Tous les documents cXML doivent contenir un en-tête Content-type. Pour les documents cXML ne contenant pas de pièces jointes, les en-têtes Content-type suivants sont utilisés :

Le protocole cXML prend en charge la connexion des fichiers externes via le format MIME. Par exemple, les clients ont souvent besoin de se remémorer les ordres d'achat à l'aide de mémos, dessins ou télécopies. L'un des en-têtes Content-type répertorié ci-dessous doit être utilisé dans les documents cXML contenant des pièces jointes :

L'élément boundary est un texte unique, utilisé pour séparer le corps du du message MIME de la partie données utiles. Pour plus d'information, consultez le guide d'utilisateur cXML à l'adresse www.cxml.org.

Interactions cXML correctes

WebSphere Partner Gateway prend en charge les interactions de définition de flot de documents cXML :

Création de définitions de flots de documents

Procédez comme suit pour créer une définition de flot de documents pour un document cXML.

Remarque : Vous devez vous assurer que la version correcte de cXML est définie avant de créer une définition de flot de documents. La version par défaut est 1.2.009.

  1. Cliquez sur Administrateur du concentrateur > Configuration du concentrateur > Définition du flot de documents.
  2. Cliquez sur Création d'une définition du flot de documents. La page Création d'une définition du flot de documents s'affiche.
  3. Sélectionnez Flot de documents comme type de flot de documents.
  4. Selon le type de document, appliquez l'une des étapes suivantes :
  5. Entrez 1.0 pour la version.

    Le numéro de version est indiqué uniquement à titre de référence. Le protocole réel de la version provient de la version DTD se trouvant dans le document cXML.

  6. Entrez une description facultative.
  7. Sélectionnez Oui pour Niveau du document.
  8. Sélectionnez Activé pour Etat.
  9. Sélectionnez Oui pour tous les attributs Visibilité.
  10. Cliquez sur le dossier Regroupement : Aucun pour étendre les options de sélection de regroupement.
  11. Sélectionnez Protocole : cXML (1.2.009): cXML.
  12. Cliquez sur Enregistrer.

Création d'interactions

Après avoir créé la définition du flot de documents, définissez une interaction pour le document cXML.

Pour créer des interactions, procédez comme suit :

  1. Cliquez sur Administrateur du concentrateur > Configuration du concentrateur > Définition du flot de documents.
  2. Cliquez sur Gestion des interactions.
  3. Cliquez sur Création d'une interaction.
  4. Si le document cXML est la source, sous Source, développez Regroupement : Aucun et Protocole : cXML, puis sélectionnez Flot de documents :<document _flow>. Si le document cXML est la cible, développez Regroupement : Aucun et Protocole : cXML, puis sélectionnez Flot de documents : <document_flow> dans la colonne Cible.
  5. Développez la colonne source ou cible pour la seconde moitié de l'interaction (le document sera converti en cXML ou transformé à partir de cXML), développez le regroupement et le protocole et sélectionnez son flot de documents.
  6. Sélectionnez Passe-système dans la liste des Actions figurant en bas de la page. (Pass-système est la seule option prise en charge pour les documents cXML.)

Copyright IBM Corp. 2003, 2005