<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" 
           xmlns:messagecore=" http://www.itu.int//xml-namespace/itu-t/x.1206/CORE/" 
           xmlns:version="http://www.itu.int//xml-namespace/itu-t/x.1206/CORE/MESSAGE/VERSION/" 
           xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" 
           targetNamespace="http://www.itu.int//xml-namespace/itu-t/x.1206/CORE/MESSAGE/VERSION/" 
           elementFormDefault="qualified" 
           attributeFormDefault="unqualified">
	<xs:import namespace="http://www.example.com/CORE" schemaLocation="Message_Core.xsd"/>
	<xs:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="xmldsig-core-schema.xsd"/>
	<xs:element name="Message" type="messagecore:AbstractMessageType" substitutionGroup="messagecore:AbstractMessage">
		<xs:annotation>
			<xs:documentation>Vulnerability Information, Update and Patch Notification Message : Version</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="CID" type="messagecore:AbstractCIDType" substitutionGroup="messagecore:AbstractCID"/>
	<xs:element name="UUID" type="messagecore:AbstractUUIDType" substitutionGroup="messagecore:AbstractUUID"/>
	<xs:element name="Major_Message" type="version:Major_MessageType" substitutionGroup="messagecore:AbstractMajor_Message"/>
	<xs:complexType name="Major_MessageType">
		<xs:simpleContent>
			<xs:restriction base="messagecore:AbstractMajorMessageType">
				<xs:enumeration value="Register"/>
				<xs:enumeration value="Request"/>
				<xs:enumeration value="Deliver"/>
				<xs:enumeration value="Analyse"/>
			</xs:restriction>
		</xs:simpleContent>
	</xs:complexType>
	<xs:element name="Minor_Message" type="version:Minor_MessageType" substitutionGroup="messagecore:AbstractMinor_Message"/>
	<xs:complexType name="Minor_MessageType">
		<xs:simpleContent>
			<xs:restriction base="messagecore:AbstractMinorMessageType">
				<xs:enumeration value="Full"/>
				<xs:enumeration value="Catalog"/>
				<xs:enumeration value="End"/>
			</xs:restriction>
		</xs:simpleContent>
	</xs:complexType>
	<xs:element name="Message_Data" type="version:Message_DataType" substitutionGroup="messagecore:AbstractMessage_Data"/>
	<xs:complexType name="Message_DataType">
		<xs:complexContent>
			<xs:extension base="messagecore:AbstractMessage_DataType">
				<xs:sequence>
					<xs:element name="Version_Info" type="version:Version_InfoType" minOccurs="0" maxOccurs="unbounded"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:element name="Reply" type="messagecore:AbstractReplyType" substitutionGroup="messagecore:AbstractReply"/>
	<xs:element name="ReplyStatus" substitutionGroup="messagecore:AbstractReplyStatus">
		<xs:complexType>
			<xs:simpleContent>
				<xs:restriction base="messagecore:AbstractReplyStatusType">
					<xs:enumeration value="Failed"/>
					<xs:enumeration value="Succeeded"/>
					<xs:enumeration value="Major Message Not Supported"/>
					<xs:enumeration value="Minor Message Not Supported"/>
					<xs:enumeration value="Handler not available"/>
				</xs:restriction>
			</xs:simpleContent>
		</xs:complexType>
	</xs:element>
	<xs:element name="Reply_Data" type="messagecore:AbstractReply_DataType" substitutionGroup="messagecore:AbstractReply_Data"/>
	<xs:complexType name="Version_InfoType">
		<xs:complexContent>
			<xs:extension base="messagecore:AbstractReply_DataType">
				<xs:sequence>
					<xs:element name="Product_Name" type="xs:string" minOccurs="0"/>
					<xs:element name="Product_Version" type="xs:string" minOccurs="0"/>
					<xs:element name="Company" type="xs:string" minOccurs="0"/>
					<xs:element name="Info" minOccurs="0" maxOccurs="unbounded">
						<xs:complexType>
							<xs:sequence>
								<xs:element name="Source" type="xs:string" minOccurs="0"/>
								<xs:element name="ID" type="xs:string" minOccurs="0"/>
								<xs:element name="Date" type="xs:string" minOccurs="0"/>
								<xs:element name="Description" minOccurs="0">
									<xs:complexType>
										<xs:attribute name="ref" type="xs:anyURI" use="optional"/><![CDATA[]]></xs:complexType>
								</xs:element>
								<xs:element name="Container">
									<xs:complexType>
										<xs:sequence>
											<xs:element name="Package" type="xs:string" minOccurs="0"/>
											<xs:element name="Format" type="xs:string" minOccurs="0"/>
											<xs:element name="Version" type="xs:string"/>
											<xs:element name="Contained_Versions" type="version:Version_InfoType" minOccurs="0"/>
											<xs:element name="File_name" type="xs:string" minOccurs="0"/>
											<xs:element name="Language" type="xs:string" minOccurs="0"/>
											<xs:element name="Author_Comments" type="xs:string" minOccurs="0"/>
											<xs:element name="Description" type="messagecore:Description_Type" minOccurs="0"/>
											<xs:element name="Code" minOccurs="0">
												<xs:complexType>
													<xs:sequence>
														<xs:choice>
															<xs:element name="Script">
																<xs:complexType>
																	<xs:attribute name="ref" type="xs:anyURI" use="optional"/>
																</xs:complexType>
															</xs:element>
															<xs:element name="Binary">
																<xs:complexType>
																	<xs:simpleContent>
																		<xs:extension base="xs:base64Binary">
																			<xs:attribute name="ref" type="xs:anyURI" use="optional"/>
																		</xs:extension>
																	</xs:simpleContent>
																</xs:complexType>
															</xs:element>
															<xs:element name="Byte">
																<xs:complexType>
																	<xs:simpleContent>
																		<xs:extension base="xs:base64Binary">
																			<xs:attribute name="ref" type="xs:anyURI" use="optional"/>
																		</xs:extension>
																	</xs:simpleContent>
																</xs:complexType>
															</xs:element>
														</xs:choice>
														<xs:element name="Version_Control" minOccurs="0">
															<xs:complexType>
																<xs:sequence>
																	<xs:element name="Supersedes" minOccurs="0">
																		<xs:complexType>
																			<xs:sequence>
																				<xs:element name="Version_info" type="version:Version_InfoType" maxOccurs="unbounded"/>
																			</xs:sequence>
																		</xs:complexType>
																	</xs:element>
																	<xs:element name="Update_Path" minOccurs="0">
																		<xs:complexType>
																			<xs:sequence>
																				<xs:element name="Version_Info" type="version:Version_InfoType" maxOccurs="unbounded"/>
																			</xs:sequence>
																		</xs:complexType>
																	</xs:element>
																</xs:sequence>
															</xs:complexType>
														</xs:element>
													</xs:sequence>
												</xs:complexType>
											</xs:element>
											<xs:element name="Signature" type="xmldsig:SignatureType" minOccurs="0"/>
										</xs:sequence>
									</xs:complexType>
								</xs:element>
								<xs:element name="Signature" type="xmldsig:SignatureType" minOccurs="0"/>
							</xs:sequence>
						</xs:complexType>
					</xs:element>
					<xs:element name="Signature" type="xmldsig:SignatureType" minOccurs="0"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
</xs:schema>