<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<xs:schema version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema">

  <xs:element name="error" type="apiError"/>

  <xs:element name="items" type="listResponse"/>

  <xs:element name="response" type="stringListApiResponse"/>

  <xs:complexType name="stringListApiResponse">
    <xs:complexContent>
      <xs:extension base="abstractApiResponse">
        <xs:sequence>
          <xs:element name="result" type="stringListApiResponseResult"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType name="abstractApiResponse" abstract="true">
    <xs:sequence>
      <xs:element name="errors" minOccurs="0">
        <xs:complexType>
          <xs:sequence>
            <xs:element ref="error" maxOccurs="unbounded"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

  <xs:complexType name="stringListApiResponseResult">
    <xs:complexContent>
      <xs:extension base="abstractApiResponseResult">
        <xs:sequence>
          <xs:element ref="items" minOccurs="0"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType name="abstractApiResponseResult" abstract="true">
    <xs:sequence>
      <xs:element name="html" type="xs:string"/>
    </xs:sequence>
  </xs:complexType>

  <xs:complexType name="listResponse">
    <xs:sequence>
      <xs:element name="size" type="xs:string" minOccurs="0"/>
      <xs:element name="item" type="xs:anyType" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>

  <xs:complexType name="apiError">
    <xs:sequence>
      <xs:element name="code" type="xs:string" minOccurs="0"/>
      <xs:element name="message" type="xs:string" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
</xs:schema>

