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

    <xs:element name="PersonStatusResponse" type="PersonStatusResponseType">
        <xs:annotation>
            <xs:documentation>Užklausos įvykdymo rezultatas. [ResponseCode] -- ar sėkmingai įvykdyta užklausa. [ResponseData] -- atsakymas į užklausą (atsakymas arba klaida).</xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:complexType name="PersonStatusResponseType">
        <xs:annotation>
            <xs:documentation>Užklausos rezultato tipas.</xs:documentation>
        </xs:annotation>
        <xs:sequence>
            <xs:element name="ResponseCode" type="ResponseCodeType">
                <xs:annotation>
                    <xs:documentation>Gražinamas rezultato kodas: 1 - grąžinamas rezultatas;  -1 - grąžinama klaida.</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="ResponseData" type="ResponseDataType">
                <xs:annotation>
                    <xs:documentation>Grąžinami užklausos rezultatai.</xs:documentation>
                </xs:annotation>
            </xs:element>
        </xs:sequence>
    </xs:complexType>


    <xs:complexType name="ResponseDataType">
        <xs:annotation>
            <xs:documentation>Gražinamas rezultatas.</xs:documentation>
        </xs:annotation>
        <xs:choice>
            <xs:sequence>
                <xs:element name="FirstName" type="NameType" minOccurs="0">
                    <xs:annotation>
                        <xs:documentation>Asmens vardas.</xs:documentation>
                    </xs:annotation>
                </xs:element>
                <xs:element name="LastName" type="NameType" minOccurs="0">
                    <xs:annotation>
                        <xs:documentation>Asmens pavardė.</xs:documentation>
                    </xs:annotation>
                </xs:element>
                <xs:element name="Code" type="CodeType" minOccurs="0">
                    <xs:annotation>
                        <xs:documentation>Asmens kodas.</xs:documentation>
                    </xs:annotation>
                </xs:element>
                <xs:element name="APR" type="ResponseType" minOccurs="0">
                    <xs:annotation>
                        <xs:documentation>Požymis ar taikomi apribojimai.</xs:documentation>
                    </xs:annotation>
                </xs:element>
                <xs:element name="NUR" type="ResponseType" minOccurs="0">
                    <xs:annotation>
                        <xs:documentation>Požymis ar taikomi nurašymai.</xs:documentation>
                    </xs:annotation>
                </xs:element>
            </xs:sequence>
            <xs:sequence>
                <xs:element name="ErrorCode" type="ErrorCodeType" minOccurs="0">
                    <xs:annotation>
                        <xs:documentation>Klaidos kodas.</xs:documentation>
                    </xs:annotation>
                </xs:element>
                <xs:element name="ErrorDetails" type="ErrorDescriptionType" minOccurs="0">
                    <xs:annotation>
                        <xs:documentation>Klaidos aprašymas.</xs:documentation>
                    </xs:annotation>
                </xs:element>
            </xs:sequence>
        </xs:choice>
    </xs:complexType>


    <xsd:simpleType name="ResponseCodeType">
        <xsd:annotation>
            <xsd:documentation>Gražinamas rezultato kodo tipas: 1 - grąžinamas rezultatas;  -1 - grąžinama klaida.</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:int">
            <xsd:enumeration value="1"/>
            <xsd:enumeration value="-1"/>
        </xsd:restriction>
    </xsd:simpleType>

    <xs:simpleType name="NameType">
        <xs:annotation>
            <xs:documentation xml:lang="lt">Asmens vardo ar pavardės tipas.</xs:documentation>
        </xs:annotation>
        <xs:restriction base="xs:string">
            <xs:maxLength value="70"/>
        </xs:restriction>
    </xs:simpleType>

    <xs:simpleType name="CodeType">
        <xs:annotation>
            <xs:documentation xml:lang="lt">Fizinio asmens kodo tipas.</xs:documentation>
        </xs:annotation>
        <xs:restriction base="xs:string">
            <xs:pattern value="[0-9]{11,11}"/>
        </xs:restriction>
    </xs:simpleType>

    <xs:simpleType name="ResponseType">
        <xs:annotation>
            <xs:documentation xml:lang="lt">Atsakymo tipas.
            </xs:documentation>
        </xs:annotation>
        <xsd:restriction base="xsd:int">
            <xsd:enumeration value="1"/>
            <xsd:enumeration value="-1"/>
        </xsd:restriction>
    </xs:simpleType>

    <xs:simpleType name="ErrorCodeType">
        <xs:annotation>
            <xs:documentation xml:lang="lt">Klaidos kodo tipas.</xs:documentation>
        </xs:annotation>
        <xs:restriction base="xs:string">
            <xs:maxLength value="50"/>
            <xs:minLength value="1"/>
        </xs:restriction>
    </xs:simpleType>

    <xs:simpleType name="ErrorDescriptionType">
        <xs:annotation>
            <xs:documentation xml:lang="lt">Klaidos aprašymo tipas.</xs:documentation>
        </xs:annotation>
        <xs:restriction base="xs:string">
            <xs:maxLength value="400"/>
        </xs:restriction>
    </xs:simpleType>

</xs:schema>
