>> Électroniques Technologie >  >> Maison intelligente >> Vie intelligente

Comment importer XSD dans WSDL

Le langage de description de service Web (WSDL) est un modèle et un format permettant de décrire des services Web à l'aide de XML. Un consommateur peut localiser un service et exécuter ses opérations. Ce processus peut être automatisé à l'aide des outils de développement les plus courants, permettant l'intégration d'applications avec peu de code produit par les développeurs. Les WSDL sont un contrat entre le fournisseur de services et le consommateur ; il rend un service auto-descriptif. Les WSDL fournissent des descriptions de toutes les opérations publiques, des types de données pour tous les messages de service, des détails de liaison pour le protocole de transport et des informations d'adresse de service. Un élément "import" peut être utilisé dans un WSDL pour importer des WSDL externes ou des schémas XML. L'importation d'éléments externes est utile pour permettre au WSDL d'être plus modulaire, de réutiliser les types de données XML parmi plusieurs définitions de service et de prendre en charge plusieurs versions d'un schéma.

Étape 1

Créez un nouveau fichier dans votre éditeur de texte ou XML. Si l'éditeur prend en charge les WSDL, sélectionnez WSDL comme type de fichier. S'il ne prend pas en charge WSDL, mais prend en charge XML, sélectionnez XML comme type de fichier. Si ni WSDL ni XML ne sont pris en charge, sélectionnez un type de fichier texte brut.

Étape 2

Nommez le fichier avec le nom de votre choix et donnez-lui une extension ".wsdl". Par exemple, le fichier peut être nommé "HelloWorld.wsdl."

Étape 3

Créez un deuxième nouveau fichier dans votre éditeur de texte ou XML. Si l'éditeur prend en charge les schémas XML, sélectionnez Schéma XML ou XSD comme type de fichier. S'il ne prend pas en charge les schémas XML, mais prend en charge le fichier XML, sélectionnez XML comme type de fichier. Si ni les schémas XML ni XML ne sont pris en charge, sélectionnez un type de fichier texte brut.

Étape 4

Nommez le fichier avec le nom de votre choix et donnez-lui une extension ".xsd". Par exemple, le fichier peut être nommé "HelloWorld.xsd."

Étape 5

Entrez le balisage suivant dans le fichier de schéma XML que vous avez créé :

http://www.w3.org/2001/ XMLSchema"> http://www.w3.org/2001/XMLSchema"/> xsd :séquence

Cela définit un schéma avec l'espace de noms "http://schemas.myorg.com/person/phone", qui définit un seul type de données "Phone".

Étape 6

Entrez le balisage suivant dans le fichier WSDL que vous avez créé :

http:/ /schemas.myorg.com/wsdl/helloworld">

wsdl:documentation WSDL avec un exemple d'import

wsdl:types http://www.myorg.com/supporting /schemas/helloworld.xsd"/>

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
 targetNamespace="http://schemas.myorg.com/wsdl/helloworld">
 <xsd:element name="CallNumber" type="external:Phone"/> 
 <xsd:element name="HelloResponse" type="xsd:string"/> 
</xsd:schema>

http://www.w3.org/ns/wsdl/style/iri">

http://www.w3.org/2003/05/soap/bindings/HTTP/"> http://www.w3.org/2003/05/soap/mep/soap-response"/>

http ://www.monorg.com/Service/Hello"/>

Ce balisage définit un WSDL qui importe un schéma XML externe nommé "helloworld.xsd" qui contient l'espace de noms "http://schemas.myorg.com/person/phone".

L'instruction d'importation dans le WSDL importe un espace de noms XML à partir d'un fichier. L'objectif principal de l'élément import est d'importer l'espace de noms, et non d'indiquer où se trouvent les déclarations dans l'espace de noms. L'élément inclut l'attribut facultatif "schemaLocation". L'attribut est facultatif car un espace de noms peut être importé à partir du même fichier ou être enregistré d'une autre manière. Selon la spécification WSDL, "schemaLoction" n'est qu'un indice ; un analyseur XML est libre d'ignorer l'emplacement. Si l'analyseur connaît déjà les types de schéma dans cet espace de noms, ou dispose d'un autre mécanisme pour les trouver, il n'a pas besoin d'utiliser l'emplacement. Cependant, dans de nombreux cas, un espace de noms est importé dont l'analyseur XML ne sait rien, donc l'attribut "schemaLocation" devient nécessaire, mais techniquement ce n'est encore qu'un indice.

Astuce

De nouvelles technologies telles que l'échange de métadonnées, MEX, ont été introduites pour partager des informations sur les fonctionnalités prises en charge par un service, mais ces normes n'ont pas encore été largement adoptées.

Avertissement

La prise en charge des WSDL inclut et importe. Ils peuvent sembler similaires, mais ils se comportent différemment. Une instruction import importe un autre espace de noms. Une instruction include importe des déclarations de type de données XML dans un espace de noms existant.


Vie intelligente