<?xml version="1.0" encoding="utf-8" ?>
<xsd:schema
attributeFormDefault="unqualified"
elementFormDefault="qualified"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:annotation>
<xsd:appinfo>response schema</xsd:appinfo>
<xsd:documentation>
Transfer Response Schema
========================
schema to validate response transfer xml
</xsd:documentation>
</xsd:annotation>
<xsd:element name="transfer">
<xsd:annotation>
<xsd:documentation>root element</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence>
<xsd:element name="head">
<xsd:annotation>
<xsd:documentation>response header</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence>
<xsd:element minOccurs="1" maxOccurs="1" name="context" type="xsd:string" />
<xsd:element minOccurs="1" maxOccurs="1" name="module" type="xsd:string" />
<xsd:element minOccurs="1" maxOccurs="1" name="action" type="xsd:string" />
<xsd:element minOccurs="1" maxOccurs="1" name="checksum" >
<xsd:annotation>
<xsd:documentation>incoming valid md5 time-limited application checksum</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:pattern value="[0-9a-z]{40}" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element minOccurs="0" maxOccurs="1" name="format">
<xsd:annotation>
<xsd:documentation>application return output type</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="html" />
<xsd:enumeration value="text" />
<xsd:enumeration value="xml" />
<xsd:enumeration value="pdf" />
<xsd:enumeration value="csv" />
<xsd:enumeration value="xls" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element minOccurs="0" maxOccurs="1" name="version">
<xsd:annotation>
<xsd:documentation>version number: major, minor, build</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:pattern value="[0-9]{1,2}\.[0-9]{1,2}\.[0-9]{1,4}" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element minOccurs="0" maxOccurs="1" name="body">
<xsd:annotation>
<xsd:documentation>response body</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence>
<xsd:element minOccurs="1" maxOccurs="1" name="state">
<xsd:annotation>
<xsd:documentation>
response states
---------------
1 = OK
2 = Warning
3 = Error
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:byte">
<xsd:minInclusive value="1"/>
<xsd:maxInclusive value="3"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element minOccurs="0" maxOccurs="1" name="output" type="xsd:string">
<xsd:annotation>
<xsd:documentation>response output as string (optional)</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
|