<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema elementFormDefault="qualified"
	targetNamespace="http://schemas.egov.bg/messaging/v1"
	xmlns:tns="http://schemas.egov.bg/messaging/v1"
	xmlns:xsd="http://www.w3.org/2001/XMLSchema">

	<xsd:element name="EGovMessageDir">
		<xsd:annotation>
			<xsd:documentation>Списък от участници в обмена на електронни съобщения</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
			<xsd:annotation>
				<xsd:documentation>Списък от участници</xsd:documentation>
			</xsd:annotation>
			<xsd:sequence>
				<xsd:element name="Entity" maxOccurs="unbounded">
					<xsd:annotation>
						<xsd:documentation>Участник</xsd:documentation>
					</xsd:annotation>
					<xsd:complexType mixed="true">
						<xsd:sequence>
							<xsd:element name="EntityIdentifier">
								<xsd:annotation>
									<xsd:documentation>ЕИК/БУЛСТАТ</xsd:documentation>
								</xsd:annotation>
								<xsd:simpleType>
									<xsd:restriction base="xsd:string">
										<xsd:pattern value="[0-9]{9}|[0-9]{13}|[0-9]{10}" />
									</xsd:restriction>
								</xsd:simpleType>
							</xsd:element>
							<xsd:element name="Guid" type="tns:guid">
								<xsd:annotation>
									<xsd:documentation>GUID (глобален уникален идентификатор)</xsd:documentation>
								</xsd:annotation>
							</xsd:element>
							<xsd:element name="ParentGuid" type="tns:guid">
								<xsd:annotation>
									<xsd:documentation>GUID (глобален уникален идентификтор) на участника от горно ниво (в случай на клон)</xsd:documentation>
								</xsd:annotation>
							</xsd:element>
							<xsd:element name="AdministrativeBodyName">
								<xsd:annotation>
									<xsd:documentation>Наименование</xsd:documentation>
								</xsd:annotation>
								<xsd:simpleType>
									<xsd:restriction base="xsd:string">
										<xsd:maxLength value="120" />
									</xsd:restriction>
								</xsd:simpleType>
							</xsd:element>
							<xsd:element name="Contact">
								<xsd:annotation>
									<xsd:documentation>Технически контакт</xsd:documentation>
								</xsd:annotation>
								<xsd:complexType>
									<xsd:all>
										<xsd:element name="Phone">
											<xsd:annotation>
												<xsd:documentation>Телефонен номер</xsd:documentation>
											</xsd:annotation>
											<xsd:simpleType>
												<xsd:restriction base="xsd:string">
													<xsd:pattern value="\+?[0-9 /]{1,18}" />
												</xsd:restriction>
											</xsd:simpleType>
										</xsd:element>
										<xsd:element name="Fax">
											<xsd:annotation>
												<xsd:documentation>Факс номер</xsd:documentation>
											</xsd:annotation>
											<xsd:simpleType>
												<xsd:restriction base="xsd:string">
													<xsd:pattern value="\+?[0-9 /]{1,18}" />
												</xsd:restriction>
											</xsd:simpleType>
										</xsd:element>
										<xsd:element name="EmailAddress">
											<xsd:annotation>
												<xsd:documentation>Имейл адрес</xsd:documentation>
											</xsd:annotation>
											<xsd:simpleType>
												<xsd:restriction base="xsd:string">
													<xsd:pattern value="[\w\-!#$%&amp;'*+/=?^`{|}~.&quot;]+@([\w]+[.-]?)+[\w]\.[\w]+" />
												</xsd:restriction>
											</xsd:simpleType>
										</xsd:element>
									</xsd:all>
								</xsd:complexType>
							</xsd:element>
							<xsd:element name="CertificateSN">
								<xsd:annotation>
									<xsd:documentation>Сериен номер на транспортния сертификат на участника (в HEX формат)</xsd:documentation>
								</xsd:annotation>
								<xsd:simpleType>
									<xsd:restriction base="xsd:string">
										<xsd:pattern value="[a-f0-9]{6,20}" />
									</xsd:restriction>
								</xsd:simpleType>
							</xsd:element>
							<xsd:element name="Services">
								<xsd:annotation>
										<xsd:documentation>Списък от услуги, предоставяни от участника</xsd:documentation>
								</xsd:annotation>
								<xsd:complexType>
									<xsd:annotation>
										<xsd:documentation>Списък от услуги</xsd:documentation>
									</xsd:annotation>
									<xsd:sequence>
										<xsd:element name="Service" maxOccurs="unbounded">
											<xsd:annotation>
												<xsd:documentation>Услуга</xsd:documentation>
											</xsd:annotation>
											<xsd:complexType>
												<xsd:sequence>
													<xsd:element name="Guid" type="tns:guid">
														<xsd:annotation>
															<xsd:documentation>GUID (глобален уникален идентификатор)</xsd:documentation>
														</xsd:annotation>
													</xsd:element>
													<xsd:element name="Name" type="xsd:string">
														<xsd:annotation>
															<xsd:documentation>Наименование</xsd:documentation>
														</xsd:annotation>
													</xsd:element>
													<xsd:element name="URI" type="xsd:anyURI">
														<xsd:annotation>
															<xsd:documentation>Идентификатор за достъп</xsd:documentation>
														</xsd:annotation>
													</xsd:element>
													<xsd:element name="Status">
														<xsd:annotation>
															<xsd:documentation>Статус</xsd:documentation>
														</xsd:annotation>
														<xsd:simpleType>
															<xsd:restriction base="xsd:string">
																<xsd:enumeration value="Active">
																	<xsd:annotation>
																		<xsd:documentation>Активен</xsd:documentation>
																	</xsd:annotation>
																</xsd:enumeration>
																<xsd:enumeration value="TemporarilyInactive">
																	<xsd:annotation>
																		<xsd:documentation>Временно неактивен</xsd:documentation>
																	</xsd:annotation>
																</xsd:enumeration>
																<xsd:enumeration value="PermanentlyInactive">
																	<xsd:annotation>
																		<xsd:documentation>Неактивен</xsd:documentation>
																	</xsd:annotation>
																</xsd:enumeration>
															</xsd:restriction>
														</xsd:simpleType>
													</xsd:element>
													<xsd:element name="Type" type="xsd:string">
														<xsd:annotation>
															<xsd:documentation>Тип (напр. "service", "email" и др.)</xsd:documentation>
														</xsd:annotation>
													</xsd:element>
													<xsd:element name="Version" type="xsd:integer">
														<xsd:annotation>
															<xsd:documentation>Версия (понастоящем 1)</xsd:documentation>
														</xsd:annotation>
													</xsd:element>
												</xsd:sequence>
											</xsd:complexType>
										</xsd:element>
									</xsd:sequence>
								</xsd:complexType>
							</xsd:element>
							<xsd:element name="LastChange" type="xsd:dateTime">
								<xsd:annotation>
									<xsd:documentation>Дата на последна промяна</xsd:documentation>
								</xsd:annotation>
							</xsd:element>
							<xsd:element name="Status">
								<xsd:annotation>
									<xsd:documentation>Статус</xsd:documentation>
								</xsd:annotation>
								<xsd:simpleType>
									<xsd:restriction base="xsd:string">
										<xsd:enumeration value="Active">
											<xsd:annotation>
												<xsd:documentation>Активен</xsd:documentation>
											</xsd:annotation>
										</xsd:enumeration>
										<xsd:enumeration value="Inactive">
											<xsd:annotation>
												<xsd:documentation>Неактивен</xsd:documentation>
											</xsd:annotation>
										</xsd:enumeration>
									</xsd:restriction>
								</xsd:simpleType>
							</xsd:element>
						</xsd:sequence>
					</xsd:complexType>
				</xsd:element>
				<xsd:element name="LastChange" type="xsd:dateTime">
					<xsd:annotation>
						<xsd:documentation>Дата на последна промяна</xsd:documentation>
					</xsd:annotation>
				</xsd:element>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>
	<xsd:simpleType name="guid">
		<xsd:annotation>
			<xsd:documentation>GUID (глобален уникален индентификатор)</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="\{[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}\}" />
		</xsd:restriction>
	</xsd:simpleType>
</xsd:schema>
