Format WSDL simple

Cette fonctionnalité sera supprimée dans une prochaine version de Microsoft SQL Server. Évitez d'utiliser cette fonctionnalité dans de nouveaux travaux de développement et prévoyez de modifier les applications qui utilisent actuellement cette fonctionnalité.

Le format WSDL simple produit une version simplifiée du document WSDL, qui remplace les types de données XSD primitifs par les types système SQL Server, qui sont décrits de manière plus détaillée dans Format WSDL par défaut. Même si le format WSDL simple réduit effectivement la richesse des types de données SQL Server qui sont intégralement pris en charge dans WSDL par défaut, il simplifie toutefois le processus de production de documents WSDL consommables pour les clients et les générateurs de classe proxy qui ne sont pas équipés pour mapper ou traiter toutes les facettes du format WSDL par défaut et de son système de types.

Différences entre les formats WSDL simple et par défaut

L'existence des formats WSDL simple et WSDL par défaut est principalement due au fait que le format WSDL simple est destiné à assurer une compatibilité ascendante et la prise en charge des clients SOAP qui ne comprennent pas le format WSDL par défaut.

Ce sont notamment les clients simples de service Web comme ceux basés sur SOAP Toolkit. Ces clients ne peuvent pas interpréter le document WSDL par défaut car il est généré par une instance de SQL Server. Cette limitation est due au fait que SOAP Toolkit et d'autres clients de service Web plus simples n'interprètent pas la richesse de certains types système introduits dans SQL Server 2005. Par conséquent, pour remédier à cette limitation des clients plus simples ou plus anciens, le format WSDL simple possède tous les éléments des types SQL Server mappés aux types XSD natifs.

Par exemple, il est connu que le client SOAP Toolkit a des problèmes pour comprendre sqltypes:money en raison de la granularité de sa définition de totalDigits et fractionDigits, ainsi que d'autres éléments utilisés pour dériver les types XDS d'origine. Toutefois, SOAP Toolkit peut traiter tout à fait correctement le mappage direct des types XSD, tels que int.

Types dérivés (WSDL par défaut)

<xsd:simpleType name="money">
             <xsd:restriction base="xsd:decimal">
             <xsd:totalDigits value="19">
             </xsd:totalDigits>
             <xsd:fractionDigits value="4">
             </xsd:fractionDigits>
             <xsd:maxInclusive value="922337203685477.5807">
             </xsd:maxInclusive>
             <xsd:minInclusive value="-922337203685477.5808">
        </xsd:minInclusive>
     </xsd:restriction>
</xsd:simpleType>

Mappage direct (WSDL simple)

<xsd:simpleType name="int">
    <xsd:restriction base="xsd:int">
    </xsd:restriction>
</xsd:simpleType>

Une réponse RPC constitue un autre exemple : le format WSDL par défaut définit un type de réponse sur SqlResultStream. Cette valeur est également définie dans sa section « Types ». Au contraire, le type de réponse est défini sur un <xsd:complexType> générique qui spécifie <xsd:any>. Ceci permet un contenu quelconque. Cette modification au document WSDL permet au client simple de service Web de contourner son incapacité à analyser les types de réponse SQL Server dérivés.

Notes

Les demandes WSDL ne peuvent pas participer à une session SOAP. Pour plus d'informations sur les sessions SOAP, consultez Utilisation de sessions SOAP.

Mappages de types SQL Server à XSD pour WSDL simple

Pour plus d'informations sur le mappage des types de données système SQL Server aux types de schéma XML (XSD) pour WSDL simple, consultez Mappage des types de données dans les services Web XML natifs.