<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XML Spy v4.0 U beta 3.1 build Aug 27 2001 (http://www.xmlspy.com) by Sigraph (Siemens) -->
<xsd:schema targetNamespace="http://www.sigraph.de/schemas/7.1" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:sig="http://www.sigraph.de/schemas/7.1" xmlns:xlink="http://www.w3.org/1999/xlink" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xsd:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
	<xsd:element name="SIGRAPH">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element name="HEADER">
					<xsd:complexType>
						<xsd:sequence>
							<xsd:element name="SCHEMAVERSION" type="xsd:string"/>
							<xsd:element name="SIGRAPHVERSION" type="xsd:string"/>
							<xsd:element name="CREATOR" type="xsd:string"/>
							<xsd:element name="DOCUMENT_ID" type="xsd:string"/>
							<xsd:element name="CREATION_DATE" type="xsd:string"/>
							<xsd:element name="COMMENT" type="xsd:string"/>
						</xsd:sequence>
					</xsd:complexType>
				</xsd:element>
				<xsd:choice maxOccurs="unbounded">
					<xsd:element name="OBJECTS" type="sig:ObjectsType"/>
					<xsd:element name="RELATIONSHIPS" type="sig:RelationshipsType"/>
					<xsd:element name="DATASETS" type="sig:DatasetsType"/>
				</xsd:choice>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>
	<xsd:complexType name="Project">
		<xsd:complexContent>
			<xsd:extension base="sig:Pv_elementType">
				<xsd:sequence>
					<xsd:element name="my_config_list">
						<xsd:complexType>
							<xsd:sequence maxOccurs="unbounded">
								<xsd:element name="Sign_def_config_element">
									<xsd:complexType>
										<xsd:sequence>
											<xsd:element name="sign" type="xsd:string"/>
											<xsd:element name="kind_of_attr" type="xsd:short"/>
											<xsd:element name="insert_flag" type="xsd:boolean"/>
										</xsd:sequence>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="ObjectsType">
		<xsd:choice minOccurs="0" maxOccurs="unbounded">
			<xsd:element name="Project" type="sig:Project"/>
			<xsd:element name="Model_logic" type="sig:Model_logicType"/>
		</xsd:choice>
	</xsd:complexType>
	<xsd:complexType name="DatasetsType">
		<xsd:sequence>
			<xsd:element name="DATSET" type="xlink:LocatorType" maxOccurs="unbounded"/>
		</xsd:sequence>
		<xsd:attribute ref="xlink:type" use="required" fixed="extended"/>
	</xsd:complexType>
	<xsd:complexType name="RelationshipsType">
		<xsd:choice maxOccurs="unbounded">
			<xsd:element name="LC_control_contain_rel">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="LC_Logic_controller" type="xlink:LocatorType" maxOccurs="unbounded"/>
						<xsd:element name="LC_Logic_container" type="xlink:LocatorType" maxOccurs="unbounded"/>
					</xsd:sequence>
					<xsd:attribute ref="xlink:type"/>
				</xsd:complexType>
			</xsd:element>
		</xsd:choice>
	</xsd:complexType>
	<xsd:complexType name="ObjectReferenceType">
		<xsd:complexContent>
			<xsd:extension base="xlink:SimpleType"/>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="Pv_base_elementType">
		<xsd:complexContent>
			<xsd:extension base="sig:BS_InstanceType">
				<xsd:sequence>
					<xsd:element name="name" type="xsd:string"/>
					<xsd:element name="master" type="sig:ObjectReferenceType"/>
					<xsd:element name="element_id" type="xsd:unsignedLong"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="Pv_elementType">
		<xsd:complexContent>
			<xsd:extension base="sig:Pv_base_elementType">
				<xsd:sequence>
					<xsd:element name="down_nodes">
						<xsd:complexType>
							<xsd:choice minOccurs="0" maxOccurs="unbounded">
								<xsd:element name="Pv_element" type="sig:Pv_base_elementType"/>
								<xsd:element name="Model_documentation" type="sig:Model_documentationType"/>
								<xsd:element name="Configuration_data"/>
							</xsd:choice>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="database" type="xsd:boolean"/>
					<xsd:element name="modification_time" type="sig:Pv_timeAggregate"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="Model_documentationType">
		<xsd:complexContent>
			<xsd:extension base="sig:Pv_elementType">
				<xsd:sequence>
					<xsd:element name="identification_typ" type="xsd:integer"/>
					<xsd:element name="my_logic_controller" type="sig:Logic_controllerAggregate"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="Pv_timeType">
		<xsd:sequence>
			<xsd:element name="local_counter" type="xsd:unsignedLong"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Pv_timeAggregate">
		<xsd:sequence>
			<xsd:element name="Pv_time" type="sig:Pv_timeType"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="BS_Change_infoType">
		<xsd:sequence>
			<xsd:element name="timestamp" type="xsd:dateTime"/>
			<xsd:element name="origin" type="xsd:integer"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="BS_Change_infoAggregate">
		<xsd:sequence>
			<xsd:element name="BS_Change_info" type="sig:BS_Change_infoType"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="BS_InstanceType">
		<xsd:sequence>
			<xsd:element name="creation_time" type="sig:BS_Change_infoAggregate"/>
			<xsd:element name="last_access_time" type="sig:BS_Change_infoAggregate"/>
		</xsd:sequence>
		<xsd:attribute name="oid" type="xsd:ID" use="optional"/>
	</xsd:complexType>
	<xsd:complexType name="Logic_controllerType">
		<xsd:complexContent>
			<xsd:extension base="sig:Logic_elemType">
				<xsd:sequence>
					<xsd:element name="LC" type="sig:BS_String"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="Logic_controllerAggregate">
		<xsd:sequence>
			<xsd:element name="Logic_controller" type="sig:Logic_controllerType"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Logic_elemType">
		<xsd:complexContent>
			<xsd:extension base="sig:BS_InstanceType">
				<xsd:sequence>
					<xsd:element name="online" type="xsd:boolean"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:attributeGroup name="BS_AttrAttributeGroup">
		<xsd:attribute name="origin" type="xsd:int" use="optional"/>
		<xsd:attribute name="timestamp" type="xsd:dateTime" use="optional"/>
	</xsd:attributeGroup>
	<xsd:attributeGroup name="UOMAttributeGroup">
		<xsd:attribute name="uom" type="xsd:anyURI" use="required"/>
	</xsd:attributeGroup>
	<xsd:complexType name="BS_Double">
		<xsd:simpleContent>
			<xsd:extension base="xsd:double">
				<xsd:attributeGroup ref="sig:BS_AttrAttributeGroup"/>
			</xsd:extension>
		</xsd:simpleContent>
	</xsd:complexType>
	<xsd:complexType name="BS_Double_unit">
		<xsd:simpleContent>
			<xsd:extension base="sig:BS_Double">
				<xsd:attributeGroup ref="sig:UOMAttributeGroup"/>
			</xsd:extension>
		</xsd:simpleContent>
	</xsd:complexType>
	<xsd:complexType name="BS_Float">
		<xsd:simpleContent>
			<xsd:extension base="xsd:float">
				<xsd:attributeGroup ref="sig:BS_AttrAttributeGroup"/>
			</xsd:extension>
		</xsd:simpleContent>
	</xsd:complexType>
	<xsd:complexType name="BS_Float_unit">
		<xsd:simpleContent>
			<xsd:extension base="sig:BS_Float">
				<xsd:attributeGroup ref="sig:UOMAttributeGroup"/>
			</xsd:extension>
		</xsd:simpleContent>
	</xsd:complexType>
	<xsd:complexType name="BS_Float_text">
		<xsd:simpleContent>
			<xsd:extension base="sig:BS_Float">
				<xsd:attribute name="text" type="xsd:string" use="required"/>
			</xsd:extension>
		</xsd:simpleContent>
	</xsd:complexType>
	<xsd:complexType name="BS_Int16">
		<xsd:simpleContent>
			<xsd:extension base="xsd:short">
				<xsd:attributeGroup ref="sig:BS_AttrAttributeGroup"/>
			</xsd:extension>
		</xsd:simpleContent>
	</xsd:complexType>
	<xsd:complexType name="BS_Int16_unit">
		<xsd:simpleContent>
			<xsd:extension base="sig:BS_Int16">
				<xsd:attributeGroup ref="sig:UOMAttributeGroup"/>
			</xsd:extension>
		</xsd:simpleContent>
	</xsd:complexType>
	<xsd:complexType name="BS_Int32">
		<xsd:simpleContent>
			<xsd:extension base="xsd:int">
				<xsd:attributeGroup ref="sig:BS_AttrAttributeGroup"/>
			</xsd:extension>
		</xsd:simpleContent>
	</xsd:complexType>
	<xsd:complexType name="BS_Int32_unit">
		<xsd:attributeGroup ref="sig:BS_AttrAttributeGroup"/>
		<xsd:attributeGroup ref="sig:UOMAttributeGroup"/>
	</xsd:complexType>
	<xsd:complexType name="BS_Link">
		<xsd:complexContent>
			<xsd:extension base="xlink:SimpleType">
				<xsd:attributeGroup ref="sig:BS_AttrAttributeGroup"/>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="BS_Object_ref">
		<xsd:complexContent>
			<xsd:extension base="xlink:SimpleType">
				<xsd:attributeGroup ref="sig:BS_AttrAttributeGroup"/>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="BS_Object_ref_xdb">
		<xsd:complexContent>
			<xsd:extension base="xlink:SimpleType">
				<xsd:attributeGroup ref="sig:BS_AttrAttributeGroup"/>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="BS_Ref">
		<xsd:choice>
			<xsd:element name="local"/> <!-- TODO: implement -->
			<xsd:element name="remote" type="sig:ObjectReferenceType"/>
		</xsd:choice>
		<xsd:attributeGroup ref="sig:BS_AttrAttributeGroup"/>
	</xsd:complexType>
	<xsd:complexType name="BS_String">
		<xsd:simpleContent>
			<xsd:extension base="xsd:string">
				<xsd:attributeGroup ref="sig:BS_AttrAttributeGroup"/>
			</xsd:extension>
		</xsd:simpleContent>
	</xsd:complexType>
	<xsd:complexType name="Logic_containerType">
		<xsd:complexContent>
			<xsd:extension base="sig:Logic_elemType">
				<xsd:sequence>
					<xsd:element name="logic_locked" type="xsd:boolean"/>
					<xsd:element name="my_item_designations"/>
					<xsd:element name="LC_Container_item_sort_keys" type="sig:BS_String"/>
					<xsd:element name="ML" type="sig:BS_String"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="Model_logicType">
		<xsd:complexContent>
			<xsd:extension base="sig:Logic_containerType">
				<xsd:sequence>
					<xsd:element name="m_net_list" type="sig:ObjectReferenceType"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
</xsd:schema>
