XML 스키마를 가능한 한 자세하게 만들려면 워크벤치가 변경되지 않는 이러한 결과 세트의 구조에 대해 알고 있어야 합니다. 이 정보를 찾으려면 워크벤치는 스토어드 프로시저를 실행해야 합니다. 워크벤치가 이를 수행하려면 먼저 사용자가 입력 매개변수의 값을 제공해야 합니다.
예를 들어, "two_result_sets" 조작은 항상 동일한 입력 값을 승인하고 항상 동일한 두 개의 결과 세트를 리턴하는 스토어드 프로시저를 호출합니다. 입력 값을 제공하지 않고 스토어드 프로시저를 실행할 경우 워크벤치는 응답 메시지에 대해 다음 기본 XML 스키마를 작성합니다.
<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>
이 XML 스키마에는 열 또는 데이터 유형에 대한 정보가 포함되어 있지 않습니다.
그러나 입력 값을 제공하고 워크벤치가 스토어드 프로시저를 실행하도록 하면 워크벤치는 응답 메시지에 대해 다음 기본 XML 스키마를 생성합니다.
<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>