﻿<?xml version="1.0" encoding="utf-8"?>
<xs:schema version="1.00" id="EquinePassport" elementFormDefault="qualified" targetNamespace="http://www.vetxml.org/schemas/EquinePassport" xmlns="http://www.vetxml.org/schemas/EquinePassport" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="EquinePassport">
    <xs:complexType>
      <xs:all>
        <xs:element name="Identification" minOccurs="0" maxOccurs="1">
          <xs:complexType>
            <xs:all>
              <xs:element name="PracticeID" type="xs:string" minOccurs="0" />
              <xs:element name="DistributerID" type="xs:string" minOccurs="0" />
              <xs:element name="DatabaseID" type="xs:string" minOccurs="0" />
            </xs:all>
          </xs:complexType>
        </xs:element>
        <xs:element name="KeeperDetails" minOccurs="0" maxOccurs="1">
          <xs:complexType>
            <xs:all>
              <xs:element name="Salutation" type="xs:string" minOccurs="0" maxOccurs="1" />
              <xs:element name="Forenames" type="xs:string" minOccurs="0" maxOccurs="1" />
              <xs:element name="Surname" type="xs:string" minOccurs="0" maxOccurs="1" />
              <xs:element name="Address" minOccurs="0" maxOccurs="1">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="Line" type="xs:string" minOccurs="1" maxOccurs="unbounded" />
                    <xs:element name="Postcode" type="xs:string" minOccurs="0" maxOccurs="1" />
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element name="DaytimePhone" type="xs:string" minOccurs="0" maxOccurs="1" />
              <xs:element name="EveningPhone" type="xs:string" minOccurs="0" maxOccurs="1" />
              <xs:element name="MobilePhone" type="xs:string" minOccurs="0" maxOccurs="1" />
              <xs:element name="OtherPhone" type="xs:string" minOccurs="0" maxOccurs="1" />
              <xs:element name="EmailAddress" type="xs:string" minOccurs="0" maxOccurs="1" />
            </xs:all>
          </xs:complexType>
        </xs:element>
        <xs:element name="OwnerDetails" minOccurs="0" maxOccurs="1">
          <xs:complexType>
            <xs:all>
              <xs:element name="Salutation" type="xs:string" minOccurs="0" maxOccurs="1" />
              <xs:element name="Forenames" type="xs:string" minOccurs="0" maxOccurs="1" />
              <xs:element name="Surname" type="xs:string" minOccurs="0" maxOccurs="1" />
              <xs:element name="Address" minOccurs="0" maxOccurs="1">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="Line" type="xs:string" minOccurs="1" maxOccurs="unbounded" />
                    <xs:element name="Postcode" type="xs:string" minOccurs="0" maxOccurs="1" />
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element name="DaytimePhone" type="xs:string" minOccurs="0" maxOccurs="1" />
              <xs:element name="EveningPhone" type="xs:string" minOccurs="0" maxOccurs="1" />
              <xs:element name="MobilePhone" type="xs:string" minOccurs="0" maxOccurs="1" />
              <xs:element name="OtherPhone" type="xs:string" minOccurs="0" maxOccurs="1" />
              <xs:element name="EmailAddress" type="xs:string" minOccurs="0" maxOccurs="1" />
            </xs:all>
          </xs:complexType>
        </xs:element>
        <xs:element name="EquineDetails" minOccurs="0" maxOccurs="1">
          <xs:complexType>
            <xs:all>
              <xs:element name="Name" type="xs:string" minOccurs="0" maxOccurs="1" />
              <xs:element name="Breed" type="xs:string" minOccurs="0" maxOccurs="1" />
              <xs:element name="Sire" type="xs:string" minOccurs="0" maxOccurs="1" />
              <xs:element name="UELN_Sire" type="xs:string" minOccurs="0" maxOccurs="1" />
              <xs:element name="Dam" type="xs:string" minOccurs="0" maxOccurs="1" />
              <xs:element name="UELN_Dam" type="xs:string" minOccurs="0" maxOccurs="1" />
              <xs:element name="DateOfBirth" type="xs:date" minOccurs="0" maxOccurs="1" />
              <xs:element name="Height" type="xs:string" minOccurs="0" maxOccurs="1" />
              <xs:element name="Gender" type="xs:string" minOccurs="0" maxOccurs="1" />
              <xs:element name="Colour" type="xs:string" minOccurs="0" maxOccurs="1" />
              <xs:element name="MicrochipNumber" type="xs:string" minOccurs="0" maxOccurs="1" />
              <xs:element name="FreezemarkOrBand" type="xs:string" minOccurs="0" maxOccurs="1" />
              <xs:element name="PlaceBred" type="xs:string" minOccurs="0" maxOccurs="1" />
              <xs:element name="ChippedInStandardPosition" type="xs:string" minOccurs="0" maxOccurs="1" />
            </xs:all>
          </xs:complexType>
        </xs:element>
      </xs:all>
      <xs:attribute name="version" type="xs:string" />
      <xs:attribute name="testmode" type="xs:string" />
    </xs:complexType>
  </xs:element>
</xs:schema>