<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XML Spy v4.4 U (http://www.xmlspy.com) by Anders Myrén (Anders Myrén AB) -->
<!-- edited with XMLSpy v2007 sp2 (http://www.altova.com) by ANDERS MYREN (ANDERS MYREN AB) -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:annotation>
		<xs:documentation>FI2xml schema för fi2classcontainer: Store and transport a complete version of a class list</xs:documentation>
	</xs:annotation>
	<xs:annotation>
		<xs:documentation>Based on fi2xml version 1.22</xs:documentation>
	</xs:annotation>
	<xs:include schemaLocation=".\fi2base.xsd"/>
	<xs:element name="fi2classcontainer">
		<xs:annotation>
			<xs:documentation>FI2xml class list Container</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element name="fi2classlist_metadata" type="fi2classlist_meta_type">
					<xs:annotation>
						<xs:documentation>Metadata for this class list</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element name="fi2referencelist" type="fi2referencelistType" minOccurs="0">
					<xs:annotation>
						<xs:documentation>Optonal list of reference class  or value lists</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element ref="fi2classlist_list"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:complexType name="fi2classlist_meta_type">
		<xs:annotation>
			<xs:documentation>Class List Metadata structure</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="fi2classlist_identity" type="xs:string">
				<xs:annotation>
					<xs:documentation>Class list identifier code. </xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="fi2classlist_status" type="xs:string">
				<xs:annotation>
					<xs:documentation>Current release status of this class list. Allowed values are described int the FI2 documentation "Class and Value Lists Status Codes".</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="fi2classlist_name" type="xs:string" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Class list name. The attribute lang (iso 639-2) determines the languga. Englis is assumed if this attribute is absent.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="fi2classlist_author" type="fi2classlist_author_type">
				<xs:annotation>
					<xs:documentation>Author and company issuing this class list.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="fi2classlist_version" type="xs:string">
				<xs:annotation>
					<xs:documentation>Current version of class list</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="fi2classlist_date" type="xs:string">
				<xs:annotation>
					<xs:documentation>Relsease date of this class version.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="fi2classlist_descr" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Class list description. </xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:simpleContent>
						<xs:extension base="xs:string">
							<xs:attribute ref="lang" use="optional"/>
						</xs:extension>
					</xs:simpleContent>
				</xs:complexType>
			</xs:element>
			<xs:element name="fi2classlist_publisherid" type="xs:string" minOccurs="0"/>
			<xs:element name="fi2classlist_listid" type="xs:string" minOccurs="0"/>
			<xs:element name="fi2classlist_versionid" type="xs:string" minOccurs="0"/>
			<xs:element name="fi2classlist_documents" type="fi2document_type" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Optional class list documents.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="fi2classlist_history" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Class List Legend.</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence>
						<xs:element name="fi2classlist_revision" type="fi2classlist_revision_type" maxOccurs="unbounded"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="fi2classlist_revision_type">
		<xs:annotation>
			<xs:documentation>Class List Revision structure</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="fi2classrevision_version" type="xs:string">
				<xs:annotation>
					<xs:documentation>Version np fir this revision</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="fi2classrevision_date" type="xs:date">
				<xs:annotation>
					<xs:documentation>Release date for this revision</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="fi2classrevision_author" type="fi2classlist_author_type" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Author/issuer of this revision.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="fi2classrevision_descr" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Optional description tag for this revision. </xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:simpleContent>
						<xs:extension base="xs:string">
							<xs:attribute ref="lang" use="optional"/>
						</xs:extension>
					</xs:simpleContent>
				</xs:complexType>
			</xs:element>
			<xs:element name="fi2classrevision_documents" type="fi2document_type" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Optional document llinks for this revision.</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="fi2classlist_author_type">
		<xs:annotation>
			<xs:documentation>Class List Author Structure</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="fi2classlist_authorname" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Name of author</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="fi2classlist_authorcompany">
				<xs:annotation>
					<xs:documentation>Company name for author</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="fi2classlist_copyright" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Optional tags for copyright information.</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:simpleContent>
						<xs:extension base="xs:string">
							<xs:attribute ref="lang" use="optional"/>
						</xs:extension>
					</xs:simpleContent>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="fi2classitem_type">
		<xs:annotation>
			<xs:documentation>Class List Item Structure</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="fi2class_code" type="xs:string">
				<xs:annotation>
					<xs:documentation>Classification code for this class item.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="fi2class_name" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Class item name. The attribute lang (ISO 639-2) is used to determine the language of the name. English is presumed if this attribute is omitted. Note that only one item per language is used.</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:simpleContent>
						<xs:extension base="xs:string">
							<xs:attribute ref="lang" use="optional"/>
						</xs:extension>
					</xs:simpleContent>
				</xs:complexType>
			</xs:element>
			<xs:element name="fi2class_dataformat" type="xs:string" minOccurs="0"/>
			<xs:element name="fi2class_descr" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Class list item description. The attribute lang (ISO 639-2)  is used to determine the language. English is presumed if this attribute is omitted.</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:simpleContent>
						<xs:extension base="xs:string">
							<xs:attribute ref="lang" use="optional"/>
						</xs:extension>
					</xs:simpleContent>
				</xs:complexType>
			</xs:element>
			<xs:element name="fi2class_documents" type="fi2document_type" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element name="fi2class_referencelist" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Optional references to other class or value lists</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence>
						<xs:element name="fi2class_referenceitem" minOccurs="0" maxOccurs="unbounded">
							<xs:annotation>
								<xs:documentation>Reference item</xs:documentation>
							</xs:annotation>
							<xs:complexType>
								<xs:sequence>
									<xs:element name="fi2class_referencevalue" type="xs:string">
										<xs:annotation>
											<xs:documentation>Reference code in list</xs:documentation>
										</xs:annotation>
									</xs:element>
									<xs:element name="fi2reference_id" type="xs:string">
										<xs:annotation>
											<xs:documentation>Reference list identity</xs:documentation>
										</xs:annotation>
									</xs:element>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
		<xs:attribute ref="status" use="required"/>
		<xs:attribute name="date" type="xs:date" use="optional">
			<xs:annotation>
				<xs:documentation>Publication date for this class item.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
	</xs:complexType>
	<xs:element name="fi2classlist_list">
		<xs:annotation>
			<xs:documentation>List of all class codes in this class list.</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:choice maxOccurs="unbounded">
				<xs:element name="fi2classlist_code" type="xs:string"/>
				<xs:element name="fi2classlist_name" maxOccurs="unbounded">
					<xs:complexType>
						<xs:simpleContent>
							<xs:extension base="xs:string">
								<xs:attribute ref="lang"/>
							</xs:extension>
						</xs:simpleContent>
					</xs:complexType>
				</xs:element>
				<xs:element name="fi2classlist_descr" minOccurs="0" maxOccurs="unbounded">
					<xs:complexType>
						<xs:simpleContent>
							<xs:extension base="xs:string">
								<xs:attribute ref="lang"/>
							</xs:extension>
						</xs:simpleContent>
					</xs:complexType>
				</xs:element>
				<xs:element name="fi2classlist_item" type="fi2classitem_type" minOccurs="0" maxOccurs="unbounded">
					<xs:annotation>
						<xs:documentation>FI2xml Class Item</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element ref="fi2classlist_list" minOccurs="0" maxOccurs="unbounded"/>
			</xs:choice>
			<xs:attribute ref="status"/>
		</xs:complexType>
	</xs:element>
	<xs:complexType name="fi2referencelistType">
		<xs:annotation>
			<xs:documentation>Class- och value list reference list</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="fi2referencelist_item" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Reference class list item</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence>
						<xs:element name="fi2reference_id" type="xs:string">
							<xs:annotation>
								<xs:documentation>Reference class list id. Local for message</xs:documentation>
							</xs:annotation>
						</xs:element>
						<xs:element name="fi2reference_name" type="xs:string">
							<xs:annotation>
								<xs:documentation>Name of reference class list</xs:documentation>
							</xs:annotation>
						</xs:element>
						<xs:element name="fi2reference_link" type="xs:string" minOccurs="0">
							<xs:annotation>
								<xs:documentation>Lino or URL toll reference class list.</xs:documentation>
							</xs:annotation>
						</xs:element>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:attribute name="status" type="xs:integer">
		<xs:annotation>
			<xs:documentation>Class item current status. Allowed values are described int the FI2 documentation "Class and Value Lists Status Codes".</xs:documentation>
		</xs:annotation>
	</xs:attribute>
</xs:schema>
