<?xml version="1.0" encoding="UTF-8"?>
<!-- filename=ims_lip_commonv1p0.xsd -->
<!-- Copyright (c) 2001 IMS Global Learning Consortium -->
<!-- 2001-03-15 edited by Thomas Wason -->
<!-- Conforms to w3c http://www.w3.org/2000/10/XMLSchema-->
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" version="LIP 1.0 Schema 1.0">
	<xsd:include schemaLocation="ims_lip_attributesv1p0.xsd"/>
	<xsd:include schemaLocation="ims_lip_extensionv1p0.xsd"/>
	<xsd:include schemaLocation="ims_lip_descriptionv1p0.xsd"/>
	<xsd:element name="contentype" type="contentypeType">
		<xsd:annotation>
			<xsd:documentation>Meta-data about a structure or substructure within this 
instance. </xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:element name="date" type="dateType">
		<xsd:annotation>
			<xsd:documentation>Calandar Date.</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:element name="datetime" type="datetimeType">
		<xsd:annotation>
			<xsd:documentation>SO8601 date/time entry.</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:element name="ext_contentype" type="extensionType">
		<xsd:annotation>
			<xsd:documentation>extension</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:element name="ext_date" type="extensionType">
		<xsd:annotation>
			<xsd:documentation>extension</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:element name="ext_product" type="extensionType">
		<xsd:annotation>
			<xsd:documentation>extension</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:element name="fielddata" type="fielddataType">
		<xsd:annotation>
			<xsd:documentation>The data value for the declared field</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:element name="fieldlabel" type="fieldlabelType">
		<xsd:annotation>
			<xsd:documentation>Typing information for field name vocabulary.</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:element name="id" type="idType">
		<xsd:annotation>
			<xsd:documentation>Identifier</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:element name="indexid" type="indexidType">
		<xsd:annotation>
			<xsd:documentation>The record unique reference mechanism.</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<!--xsd:element name="material" type="materialType">
		<xsd:annotation>
			<xsd:documentation/>
		</xsd:annotation>
	</xsd:element-->
	<!--xsd:element name="metadata" type="metadataType">
		<xsd:annotation>
			<xsd:documentation/>
		</xsd:annotation>
	</xsd:element-->
	<xsd:element name="privacy" type="privacyType">
		<xsd:annotation>
			<xsd:documentation>Privacy categories</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:element name="privacyfield" type="datafieldType">
		<xsd:annotation>
			<xsd:documentation>A container for the privacy information.</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:element name="product" type="productType">
		<xsd:annotation>
			<xsd:documentation>Something produced by the learner.</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:element name="referential" type="referentialType">
		<xsd:annotation>
			<xsd:documentation>Globally unique and record unique referencing mechanism.</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:element name="source" type="sourceType">
		<xsd:annotation>
			<xsd:documentation>Source of an adjacent element's contents</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:element name="sourcedid" type="sourcedidType">
		<xsd:annotation>
			<xsd:documentation>An identification provided by a specified source.  Presumed, 
but not required, to be unique.</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:element name="status" type="statusType">
		<xsd:annotation>
			<xsd:documentation>State or progress.</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:element name="temporal" type="temporalType">
		<xsd:annotation>
			<xsd:documentation>Time meta-data e.g. expiry date of the information.</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:element name="typename" type="typenameType"/>
	<xsd:element name="temporalfield" type="datafieldType">
		<xsd:annotation>
			<xsd:documentation>The container for the temporal information.</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:element name="tysource" type="tysourceType"/>
	<xsd:element name="tyvalue" type="tyvalueType"/>
	<xsd:element name="vocab" type="vocabType">
		<xsd:annotation>
			<xsd:documentation>A vocabulary term from a defined vocabulary.</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:element name="vsource" type="vsourceType">
		<xsd:annotation>
			<xsd:documentation>The source of a vocabulary's term.</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:element name="vvalue" type="vvalueType">
		<xsd:annotation>
			<xsd:documentation>The vocabulary value term.</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:complexType name="contentypeType">
		<xsd:sequence>
			<xsd:element ref="comment" minOccurs="0"/>
			<xsd:choice maxOccurs="unbounded">
				<xsd:element ref="referential"/>
				<xsd:element ref="temporal"/>
				<xsd:element ref="privacy"/>
			</xsd:choice>
			<xsd:element ref="ext_contentype" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="datafieldType">
		<xsd:sequence>
			<xsd:element ref="fieldlabel"/>
			<xsd:element ref="fielddata"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="dateType">
		<xsd:sequence>
			<xsd:element ref="typename" minOccurs="0"/>
			<xsd:element ref="datetime"/>
			<xsd:element ref="description" minOccurs="0"/>
			<xsd:element ref="ext_date" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="fieldlabelType">
		<xsd:sequence>
			<xsd:element ref="typename" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="idType">
		<xsd:simpleContent>
			<xsd:extension base="xsd:string"/>
		</xsd:simpleContent>
	</xsd:complexType>
	<!--xsd:complexType name="materialType">
		<xsd:sequence>
			<xsd:element ref="comment" minOccurs="0"/>
			<xsd:choice maxOccurs="unbounded">
				<xsd:element ref="media"/>
				<xsd:element ref="contentref"/>
				<xsd:element ref="extension"/>
			</xsd:choice>
		</xsd:sequence>
	</xsd:complexType-->
	<!--xsd:complexType name="metadataType">
		<xsd:sequence>
			<xsd:element ref="comment" minOccurs="0"/>
			<xsd:element ref="extension" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType-->
	<xsd:complexType name="privacyType">
		<xsd:sequence>
			<xsd:element ref="typename" minOccurs="0"/>
			<xsd:element ref="privacyfield" maxOccurs="unbounded"/>
			<xsd:element ref="date" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="productType">
		<xsd:sequence>
			<xsd:element ref="typename" minOccurs="0"/>
			<xsd:element ref="comment" minOccurs="0"/>
			<xsd:element ref="contentype" minOccurs="0"/>
			<xsd:element ref="date" minOccurs="0"/>
			<xsd:element ref="description" minOccurs="0"/>
			<xsd:element ref="ext_product" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="referentialType">
		<xsd:choice>
			<xsd:element ref="sourcedid"/>
			<xsd:element ref="indexid"/>
			<xsd:sequence>
				<xsd:element ref="sourcedid"/>
				<xsd:element ref="indexid"/>
			</xsd:sequence>
		</xsd:choice>
	</xsd:complexType>
	<xsd:complexType name="sourcedidType">
		<xsd:sequence>
			<xsd:element ref="source"/>
			<xsd:element ref="id"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="sourceType">
		<xsd:simpleContent>
			<xsd:extension base="xsd:string"/>
		</xsd:simpleContent>
	</xsd:complexType>
	<xsd:complexType name="statusType">
		<xsd:sequence>
			<xsd:element ref="typename" minOccurs="0"/>
			<xsd:element ref="date" minOccurs="0"/>
			<xsd:element ref="description" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="typenameType">
		<xsd:sequence>
			<xsd:element ref="tysource" minOccurs="0"/>
			<xsd:element ref="tyvalue"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="tysourceType">
		<xsd:simpleContent>
			<xsd:extension base="xsd:string">
				<xsd:attribute name="sourcetype" default="imsdefault">
					<xsd:simpleType>
						<xsd:restriction base="xsd:string">
							<xsd:enumeration value="imsdefault"/>
							<xsd:enumeration value="list"/>
							<xsd:enumeration value="proprietary"/>
							<xsd:enumeration value="standard"/>
						</xsd:restriction>
					</xsd:simpleType>
				</xsd:attribute>
				<xsd:attributeGroup ref="attr.lang"/>
			</xsd:extension>
		</xsd:simpleContent>
	</xsd:complexType>
	<xsd:complexType name="tyvalueType">
		<xsd:simpleContent>
			<xsd:extension base="xsd:string">
				<xsd:attributeGroup ref="attr.lang"/>
			</xsd:extension>
		</xsd:simpleContent>
	</xsd:complexType>
	<xsd:complexType name="temporalType">
		<xsd:sequence>
			<xsd:element ref="typename"/>
			<xsd:element ref="temporalfield" maxOccurs="unbounded"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="vocabType">
		<xsd:sequence>
			<xsd:element ref="vsource" minOccurs="0"/>
			<xsd:element ref="vvalue"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="vsourceType">
		<xsd:simpleContent>
			<xsd:extension base="xsd:string">
				<xsd:attributeGroup ref="attr.source"/>
			</xsd:extension>
		</xsd:simpleContent>
	</xsd:complexType>
	<xsd:complexType name="vvalueType">
		<xsd:simpleContent>
			<xsd:extension base="xsd:string">
				<xsd:attributeGroup ref="attr.lang"/>
			</xsd:extension>
		</xsd:simpleContent>
	</xsd:complexType>
	<xsd:complexType name="datetimeType">
		<xsd:simpleContent>
			<xsd:extension base="xsd:date"/>
		</xsd:simpleContent>
	</xsd:complexType>
	<xsd:simpleType name="fielddataType">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>
	<xsd:simpleType name="indexidType">
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>
</xsd:schema>

