Service Schemas > Common service

Common service

<xs:schema xmlns="http://schemas.sirsidynix.com/symws/common"
  attributeFormDefault="qualified" elementFormDefault="qualified"
  targetNamespace="http://schemas.sirsidynix.com/symws/common"
  xmlns:xs="http://www.w3.org/2001/XMLSchema">

  <!-- Base transactional entity type -->
  <xs:complexType name="Entity">
    <xs:attribute name="operation" type="EntityOperation"/>
  </xs:complexType>

  <xs:simpleType name="EntityOperation">
    <xs:restriction base="xs:string">
      <xs:enumeration value="NOOP"/>
      <xs:enumeration value="CREATE"/>
      <xs:enumeration value="UPDATE"/>
      <xs:enumeration value="DELETE"/>
    </xs:restriction>
  </xs:simpleType>

  <xs:complexType name="Money">
    <xs:simpleContent>
      <xs:extension base="xs:decimal">
        <xs:attribute name="currency" type="xs:string" use="required"/>
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>

  <xs:complexType name="NillableDate">
    <xs:choice>
      <xs:element name="value" type="xs:date"/>
      <xs:element name="nil" type="xs:boolean"/> <!-- should only be true if specified -->
    </xs:choice>
  </xs:complexType>

  <xs:complexType name="NillableDateTime">
    <xs:choice>
      <xs:element name="value" type="xs:dateTime"/>
      <xs:element name="nil" type="xs:boolean"/> <!-- should only be true if specified -->
    </xs:choice>
  </xs:complexType>

  <!-- restful faults -->
  <xs:element name="Fault">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="code" type="xs:string"/>
        <xs:element name="string" type="xs:string"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>

  <xs:complexType name="SearchTerm">
    <xs:sequence>
      <!-- The server supports a maximum term length of 1,024 characters. -->
      <xs:element name="searchValue" minOccurs="1" maxOccurs="1">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:maxLength value="1024" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="searchIndexID" type="xs:string" minOccurs="0" maxOccurs="1" />
      <!-- The search operator will default to AND if not specified. -->
      <!-- The search operator is not valid in the final searchTerm and will be ignored. -->
      <xs:element name="operator" minOccurs="0" maxOccurs="1">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="AND" />
            <xs:enumeration value="OR" />
            <xs:enumeration value="NOT" />
            <xs:enumeration value="XOR" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

  <xs:complexType name="SearchResult">
    <xs:sequence>
      <xs:element name="queryID" type="xs:string" minOccurs="1" maxOccurs="1" />
      <xs:element name="totalRecords" type="xs:long" minOccurs="1" maxOccurs="1" />
      <xs:element name="firstRecordNumber" type="xs:long" minOccurs="1" maxOccurs="1" />
      <xs:element name="lastRecordNumber" type="xs:long" minOccurs="1" maxOccurs="1" />
      <xs:element name="responseMessage" type="xs:string" minOccurs="0" maxOccurs="1"/>
    </xs:sequence>
  </xs:complexType>

  <xs:complexType name="SearchPagingRequest">
    <xs:sequence>
      <xs:element name="queryID" type="xs:string" minOccurs="1" maxOccurs="1" />
      <xs:element name="firstRecordToRetrieve" type="xs:long" minOccurs="1" maxOccurs="1" />
      <!-- numberOfRecordsToRetrieve will default to 20 if not specified. -->
      <xs:element name="numberOfRecordsToRetrieve" type="xs:long" minOccurs="0" maxOccurs="1" />
    </xs:sequence>
  </xs:complexType>

  <xs:complexType name="AddressInfo">
    <xs:sequence>
      <xs:element name="addressPolicyID" type="xs:string" minOccurs="1" maxOccurs="1"/>
      <xs:element name="addressPolicyDescription" type="xs:string" minOccurs="1" maxOccurs="1"/>
      <xs:element name="addressValue" type="xs:string" minOccurs="0" maxOccurs="1"/>
    </xs:sequence>
  </xs:complexType>

</xs:schema>

 

 


© 2009-2012 SirsiDynix