ts_103120v010501p0_Core.xsd 7.47 KB
Newer Older
1
<?xml version="1.0" encoding="utf-8"?>
2 3 4 5 6 7
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
           xmlns:etsi="http://uri.etsi.org/03280/common/2017/07"
           xmlns:common="http://uri.etsi.org/03120/common/2016/02/Common"
           xmlns="http://uri.etsi.org/03120/common/2019/10/Core"
           targetNamespace="http://uri.etsi.org/03120/common/2019/10/Core"
           elementFormDefault="qualified"
8 9
           attributeFormDefault="unqualified">

10 11
	<xs:import namespace="http://uri.etsi.org/03120/common/2016/02/Common" />
	<xs:import namespace="http://uri.etsi.org/03280/common/2017/07"/>
12

13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
	<xs:element name="HI1Message" type="HI1Message"/>
	<xs:complexType name="HI1Message">
		<xs:sequence>
			<xs:element name="Header" type="MessageHeader"/>
			<xs:element name="Payload" type="MessagePayload"/>
			<xs:element name="Signature" minOccurs="0" />
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="MessageHeader">
		<xs:sequence>
			<xs:element name="SenderIdentifier" type="EndpointID"/>
			<xs:element name="ReceiverIdentifier" type="EndpointID"/>
			<xs:element name="TransactionIdentifier" type="etsi:UUID"/>
			<xs:element name="Timestamp" type="etsi:QualifiedMicrosecondDateTime"/>
			<xs:element name="Version" type="Version"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="Version">
		<xs:sequence>
			<xs:element name="ETSIVersion" type="common:ETSIVersion"/>
			<xs:element name="NationalProfileOwner" type="etsi:ShortString"/>
			<xs:element name="NationalProfileVersion" type="etsi:ShortString"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="EndpointID">
		<xs:sequence>
			<xs:element name="CountryCode" type="etsi:ISOCountryCode"/>
			<xs:element name="UniqueIdentifier" type="etsi:LongString"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="MessagePayload">
		<xs:choice>
			<xs:element name="RequestPayload" type="RequestPayload"/>
			<xs:element name="ResponsePayload" type="ResponsePayload"/>
		</xs:choice>
	</xs:complexType>
	<xs:complexType name="RequestPayload">
50 51 52 53 54
		<xs:sequence>
			<xs:element name="ActionRequests" type="ActionRequests"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="ActionRequests">
55 56 57 58 59
		<xs:sequence>
			<xs:element name="ActionRequest" type="ActionRequest" minOccurs="1" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="ResponsePayload">
60 61 62 63 64 65
	<xs:choice>
		<xs:element name="ActionResponses" type="ActionResponses"/>
		<xs:element name="ErrorInformation" type="ActionUnsuccesfulInformation"/>
	</xs:choice>
	</xs:complexType>
	<xs:complexType name="ActionResponses">
66 67 68 69 70 71 72 73 74 75 76 77
		<xs:sequence>
			<xs:element name="ActionResponse" type="ActionResponse" minOccurs="1" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="ActionRequest">
		<xs:sequence>
			<xs:element name="ActionIdentifier" type="xs:nonNegativeInteger"/>
			<xs:choice>
				<xs:element name="GET" type="GETRequest"/>
				<xs:element name="CREATE" type="CREATERequest"/>
				<xs:element name="UPDATE" type="UPDATERequest"/>
				<xs:element name="LIST" type="LISTRequest"/>
78
				<xs:element name="DELIVER" type="DELIVERRequest"/>
79 80 81 82 83 84 85 86 87 88 89 90
			</xs:choice>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="ActionResponse">
		<xs:sequence>
			<xs:element name="ActionIdentifier" type="xs:nonNegativeInteger"/>
			<xs:choice>
				<xs:element name="GETResponse" type="GETResponse"/>
				<xs:element name="CREATEResponse" type="CREATEResponse"/>
				<xs:element name="UPDATEResponse" type="UPDATEResponse"/>
				<xs:element name="LISTResponse" type="LISTResponse"/>
				<xs:element name="ErrorInformation" type="ActionUnsuccesfulInformation"/>
91
				<xs:element name="DELIVERResponse" type="DELIVERResponse"/>
92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129
			</xs:choice>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="GETRequest">
		<xs:sequence>
			<xs:element name="Identifier" type="ObjectIdentifier"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="GETResponse">
		<xs:sequence>
			<xs:element name="HI1Object" type="HI1Object"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="CREATERequest">
		<xs:sequence>
			<xs:element name="HI1Object" type="HI1Object"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="CREATEResponse">
		<xs:sequence>
			<xs:element name="Identifier" type="ObjectIdentifier"/>
			<xs:element name="HI1Object" type="HI1Object" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="UPDATERequest">
		<xs:sequence>
			<xs:element name="HI1Object" type="HI1Object"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="UPDATEResponse">
		<xs:sequence>
			<xs:element name="Identifier" type="ObjectIdentifier"/>
			<xs:element name="HI1Object" type="HI1Object" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="LISTRequest">
		<xs:sequence>
			<xs:element name="ObjectType" type="common:DictionaryEntry" minOccurs="0"/>
130
			<xs:element name="LastChanged" type="etsi:QualifiedDateTime" minOccurs="0"/>
131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="LISTResponse">
		<xs:sequence>
			<xs:element name="ListResponseRecord" type="ListResponseRecord" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="ListResponseRecord">
		<xs:sequence>
			<xs:element name="ObjectType" type="common:DictionaryEntry"/>
			<xs:element name="Identifier" type="ObjectIdentifier"/>
			<xs:element name="CountryCode" type="etsi:ISOCountryCode" minOccurs="0"/>
			<xs:element name="OwnerIdentifier" type="etsi:ShortString" minOccurs="0"/>
			<xs:element name="Generation" type="xs:nonNegativeInteger"/>
			<xs:element name="ExternalIdentifier" type="etsi:LongString" minOccurs="0"/>
			<xs:element name="LastChanged" type="etsi:QualifiedDateTime" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="ActionUnsuccesfulInformation">
		<xs:sequence>
			<xs:element name="ErrorCode" type="xs:nonNegativeInteger"/>
			<xs:element name="ErrorDescription" type="etsi:LongString"/>
		</xs:sequence>
	</xs:complexType>
155
	<xs:complexType name="DELIVERRequest">
156
		<xs:sequence>
157
		    <xs:element name="Identifier" type="ObjectIdentifier"/>
158 159 160
			<xs:element name="HI1Object" type="HI1Object"/>
		</xs:sequence>
	</xs:complexType>
161 162 163 164 165
	<xs:complexType name="DELIVERResponse">
		<xs:sequence>
			<xs:element name="Identifier" type="ObjectIdentifier"/>
		</xs:sequence>
	</xs:complexType>
166
	<xs:simpleType name="ObjectIdentifier">
167
		<xs:restriction base="etsi:UUID"/>
168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191
	</xs:simpleType>
	<xs:complexType name="HI1Object" abstract="true">
		<xs:sequence>
			<xs:element name="ObjectIdentifier" type="ObjectIdentifier"/>
			<xs:element name="CountryCode" type="etsi:ISOCountryCode" minOccurs="0"/>
			<xs:element name="OwnerIdentifier" type="etsi:ShortString" minOccurs="0"/>
			<xs:element name="Generation" type="xs:nonNegativeInteger" minOccurs="0"/>
			<xs:element name="ExternalIdentifier" type="etsi:LongString" minOccurs="0"/>
			<xs:element name="AssociatedObjects" type="AssociatedObjects" minOccurs="0"/>
			<xs:element name="LastChanged" type="etsi:QualifiedDateTime" minOccurs="0"/>
			<xs:element name="NationalHandlingParameters" type="NationalHandlingParameters" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="AssociatedObjects">
		<xs:sequence>
			<xs:element name="AssociatedObject" type="ObjectIdentifier" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="NationalHandlingParameters" abstract="true">
		<xs:sequence>
			<xs:element name="CountryCode" type="etsi:ISOCountryCode"/>
		</xs:sequence>
	</xs:complexType>
</xs:schema>