<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
           targetNamespace="http://csioz.gov.pl/p1/kontekst/mt/v20180509" xmlns="http://csioz.gov.pl/p1/kontekst/mt/v20180509" elementFormDefault="qualified">

    <xs:import namespace="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" schemaLocation="oasis-200401-wss-wssecurity-utility-1.0.xsd"/>

    <xs:simpleType name="RolaBiznesowaMT">
        <xs:annotation>
            <xs:documentation>Dopuszczalne wartości dla atrybutu kontekstu: urn:csioz:p1:kontekst:rolaBiznesowa</xs:documentation>
        </xs:annotation>
        <xs:restriction base="xs:string">
            <xs:enumeration value="LEKARZ_LEK_DENTYSTA_FELCZER">
                <xs:annotation>
                    <xs:documentation>Identyfikator dla root 2.16.840.1.113883.3.4424.1.6.2</xs:documentation>
                </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="PIELEGNIARKA_POLOZNA">
                <xs:annotation>
                    <xs:documentation>Identyfikator dla root 2.16.840.1.113883.3.4424.1.6.3</xs:documentation>
                </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="DIAGNOSTA_LABORATORYJNY">
                <xs:annotation>
                    <xs:documentation>Identyfikator dla root 2.16.840.1.113883.3.4424.1.6.4</xs:documentation>
                </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="FIZJOTERAPEUTA">
                <xs:annotation>
                    <xs:documentation>Identyfikator dla root 2.16.840.1.113883.3.4424.1.6.5 oraz 2.16.840.1.113883.3.4424.1.1.616</xs:documentation>
                </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="INNY_PROFESJONALISTA_MEDYCZNY">
                <xs:annotation>
                    <xs:documentation>Dowolny identyfikator osoby w Rejestrze OID</xs:documentation>
                </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="PRACOWNIK_ADMINISTRACYJNY">
                <xs:annotation>
                    <xs:documentation>Dowolny identyfikator osoby w Rejestrze OID</xs:documentation>
                </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="USLUGOBIORCA">
                <xs:annotation>
                    <xs:documentation>Dowolny identyfikator osoby w Rejestrze OID, wykluczając numery prawa wykonywania zawodu</xs:documentation>
                </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="PELNOMOCNIK">
                <xs:annotation>
                    <xs:documentation>Dowolny identyfikator osoby w Rejestrze OID, wykluczając numery prawa wykonywania zawodu</xs:documentation>
                </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="OPIEKUN">
                <xs:annotation>
                    <xs:documentation>Dowolny identyfikator osoby w Rejestrze OID, wykluczając numery prawa wykonywania zawodu</xs:documentation>
                </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="ADMINISTRATOR_USLUGODAWCY">
                <xs:annotation>
                    <xs:documentation>Dowolny identyfikator osoby w Rejestrze OID, wykluczając numery prawa wykonywania zawodu</xs:documentation>
                </xs:annotation>
            </xs:enumeration>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="NazwaAtrybutuKontekstuMT">
        <xs:annotation>
            <xs:documentation>Dopuszczalne nazwy atrybutów kontekstu.</xs:documentation>
        </xs:annotation>
        <xs:restriction base="xs:string">
            <xs:enumeration value="urn:csioz:p1:kontekst:idPodmiotuOidRoot">
                <xs:annotation>
                    <xs:documentation>Pierwsza część Identyfikatora OID Podmiotu określająca typ podmiotu (np. 2.16.840.1.113883.3.4424.2.3.3).</xs:documentation>
                </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="urn:csioz:p1:kontekst:idPodmiotuOidExt">
                <xs:annotation>
                    <xs:documentation>Druga część Identyfikatora OID Podmiotu (np. 000000025267).</xs:documentation>
                </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="urn:csioz:p1:kontekst:idUzytkownikaOidRoot">
                <xs:annotation>
                    <xs:documentation>oid:root</xs:documentation>
                </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="urn:csioz:p1:kontekst:idUzytkownikaOidExt">
                <xs:annotation>
                    <xs:documentation>oid:extension</xs:documentation>
                </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="urn:csioz:p1:kontekst:idMiejscaPracyOidRoot">
                <xs:annotation>
                    <xs:documentation>Identyfikator określający typ miejsca pracy jako Jednostkę (2.16.840.1.113883.3.4424.2.3.2) albo Komórkę (2.16.840.1.113883.3.4424.2.3.3).</xs:documentation>
                </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="urn:csioz:p1:kontekst:idMiejscaPracyOidExt">
                <xs:annotation>
                    <xs:documentation>Kod resortowy identyfikujący (w zależności od wskazanego identyfikatora typu miejsca pracy):
                        I. jednostkę organizacyjną w strukturze organizacyjnej zakładu leczniczego, stanowiący część V systemu resortowych kodów identyfikacyjnych (2-3 cyfry).
                        II. komórkę organizacyjną, stanowiący część VII systemu resortowych kodów identyfikacyjnych (3-4 cyfry).
                    </xs:documentation>
                </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="urn:csioz:p1:kontekst:rolaBiznesowa"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="NazwaAtrybutuKontekstuWewnetrznegoMT">
        <xs:annotation>
            <xs:documentation>Dopuszczalne nazwy atrybutów kontekstu wewnętrznego.</xs:documentation>
        </xs:annotation>
        <xs:restriction base="xs:string">
            <xs:enumeration value="urn:csioz:p1:kontekst:adresip"/>
            <xs:enumeration value="urn:csioz:p1:kontekst:idlokalnepodmiotu"/>
            <xs:enumeration value="urn:csioz:p1:kontekst:uprawnienia"/>
            <xs:enumeration value="urn:csioz:p1:kontekst:uuidZdarzeniaInicjujacego"/>
            <xs:enumeration value="urn:csioz:p1:kontekst:nazwaOperacji"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="WartoscAtrybutuMT">
        <xs:annotation>
            <xs:documentation>Wartość atrybutu kontekstu.</xs:documentation>
        </xs:annotation>
        <xs:restriction base="xs:string">
            <xs:minLength value="1"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:complexType name="KontekstMT">
        <xs:annotation>
            <xs:documentation>Kontekst wywołania usługi. Realizowany w postaci ws-security custom token.</xs:documentation>
        </xs:annotation>
        <xs:sequence>
            <xs:element name="atrybut" type="AtrybutMT" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
        <xs:attribute ref="wsu:Id" use="optional"/>
    </xs:complexType>
    <xs:complexType name="AtrybutMT">
        <xs:annotation>
            <xs:documentation>Atrybut kontekstu.</xs:documentation>
        </xs:annotation>
        <xs:sequence>
            <xs:element name="wartosc" type="WartoscAtrybutuMT" maxOccurs="unbounded"/>
        </xs:sequence>
        <xs:attribute name="nazwa" use="optional" type="xs:anyURI">
            <xs:annotation>
                <xs:documentation>Nazwa jako atrybutu elementu.</xs:documentation>
            </xs:annotation>
        </xs:attribute>
    </xs:complexType>
    <xs:element name="kontekstWywolania" type="KontekstMT"/>
</xs:schema>