Pour que le schéma XML soit aussi détaillé que possible, le plan de travail doit connaître la structure de ces ensembles de résultats inchangés. Pour obtenir ces informations, il doit exécuter la procédure mémorisée. Pour qu'il puisse exécuter cette opération, vous devez indiquer les valeurs des paramètres d'entrée.
Par exemple, l'opération "two_result_sets" appelle une procédure mémorisée qui accepte toujours les mêmes valeurs d'entrée et renvoie toujours les deux mêmes ensembles de résultats. Si vous n'indiquez pas de valeurs d'entrée et exécutez la procédure mémorisée, le plan de travail crée le schéma XML par défaut suivant pour le message de réponse :
<xsd:element name="two_result_sets_Response">
<xsd:complexType>
<xsd:sequence>
<xsd:element maxOccurs="1" minOccurs="0" name="rowset" type="tns:anonymousResultSetType" />
<xsd:element maxOccurs="1" minOccurs="0" name="rowset2" type="tns:anonymousResultSetType" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
Ce schéma XML ne contient pas d'informations sur les colonnes ou les types de données.
Toutefois, si vous spécifiez les valeurs d'entrée puis indiquez au plan de travail d'exécuter la procédure mémorisée, le plan de travail génère le schéma XML par défaut suivant pour le message de réponse :
<xsd:element name="two_result_setsResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="rowset">
<xsd:complexType>
<xsd:sequence>
<xsd:element maxOccurs="unbounded" minOccurs="0" name="row">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="NAME" nillable="true" type="xsd:string" />
<xsd:element name="JOB" nillable="true" type="xsd:string" />
<xsd:element name="_x0033_" nillable="true" type="xsd:double" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="rowset2">
<xsd:complexType>
<xsd:sequence>
<xsd:element maxOccurs="unbounded" minOccurs="0" name="row">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="NAME" nillable="true" type="xsd:string" />
<xsd:element name="JOB" nillable="true" type="xsd:string" />
<xsd:element name="_x0033_" nillable="true" type="xsd:double" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>