<?xml version = "1.0" encoding = "UTF-8"?>
<!-- $Header: /cvsroot/ebxmlrr/ebxmlrr-spec/misc/3.0/schema/lcm.xsd,v 1.5 
	2005/01/31 22:28:18 farrukh_najmi Exp $ -->
<schema targetNamespace="urn:oasis:names:tc:ebxml-regrep:xsd:lcm:3.0"
	xmlns="http://www.w3.org/2001/XMLSchema" xmlns:rim="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0"
	xmlns:rs="urn:oasis:names:tc:ebxml-regrep:xsd:rs:3.0" xmlns:tns="urn:oasis:names:tc:ebxml-regrep:xsd:lcm:3.0"
	elementFormDefault="qualified" attributeFormDefault="unqualified">

	<annotation>
		<documentation xml:lang="en">The schema for OASIS ebXML
			Registry Services</documentation>
	</annotation>
	<!-- Import the rim.xsd file with XML schema mappaing from RIM -->
	<import namespace="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0"
		schemaLocation="rim.xsd" />
	<!-- Import the rs.xsd file with XML schema for base rs related schema -->
	<import namespace="urn:oasis:names:tc:ebxml-regrep:xsd:rs:3.0"
		schemaLocation="rs.xsd" />
	<element name="SubmitObjectsRequest">
		<annotation>
			<documentation xml:lang="en">The SubmitObjectsRequest allows
				one to submit a list of RegistryObject elements. Each RegistryEntry
				element provides metadata for a single submitted object. Note that
				the repository item being submitted is in a separate document that
				is not in this DTD. The ebXML Messaging Services Specfication
				defines packaging, for submission, of the metadata of a repository
				item with the repository item itself. The value of the id attribute
				of the ExtrinsicObject element must be the same as the xlink:href
				attribute within the Reference element within the Manifest element
				of the MessageHeader.</documentation>
		</annotation>
		<complexType>
			<complexContent>
				<extension base="rs:RegistryRequestType">
					<sequence>
						<element ref="rim:RegistryObjectList" />
					</sequence>
				</extension>
			</complexContent>
		</complexType>
	</element>
	<element name="UpdateObjectsRequest">
		<annotation>
			<documentation xml:lang="en">The UpdateObjectsRequest allows
				one to update a list of RegistryObject elements. Each RegistryEntry
				element provides metadata for a single submitted object. Note that
				the repository item being submitted is in a separate document that
				is not in this DTD. The ebXML Messaging Services Specfication
				defines packaging, for submission, of the metadata of a repository
				item with the repository item itself. The value of the id attribute
				of the ExtrinsicObject element must be the same as the xlink:href
				attribute within the Reference element within the Manifest element
				of the MessageHeader.</documentation>
		</annotation>
		<complexType>
			<complexContent>
				<extension base="rs:RegistryRequestType">
					<sequence>
						<element ref="rim:RegistryObjectList" />
					</sequence>
				</extension>
			</complexContent>
		</complexType>
	</element>
	<element name="ApproveObjectsRequest">
		<annotation>
			<documentation xml:lang="en">
				The ObjectRefList and AdhocQuery identify the list of
				objects being approved.
			</documentation>
		</annotation>
		<complexType>
			<complexContent>
				<extension base="rs:RegistryRequestType">
					<sequence>
						<element ref="rim:AdhocQuery" minOccurs="0" maxOccurs="1" />
						<element ref="rim:ObjectRefList" minOccurs="0" maxOccurs="1" />
					</sequence>
				</extension>
			</complexContent>
		</complexType>
	</element>
	<element name="DeprecateObjectsRequest">
		<annotation>
			<documentation xml:lang="en">
				The ObjectRefList and AdhocQuery identify the list of
				objects being deprecated.
			</documentation>
		</annotation>
		<complexType>
			<complexContent>
				<extension base="rs:RegistryRequestType">
					<sequence>
						<element ref="rim:AdhocQuery" minOccurs="0" maxOccurs="1" />
						<element ref="rim:ObjectRefList" minOccurs="0" maxOccurs="1" />
					</sequence>
				</extension>
			</complexContent>
		</complexType>
	</element>
	<element name="UndeprecateObjectsRequest">
		<annotation>
			<documentation xml:lang="en">
				The ObjectRefList is the list of
				refs to the registry entrys being un-deprecated.
			</documentation>
		</annotation>
		<complexType>
			<complexContent>
				<extension base="rs:RegistryRequestType">
					<sequence>
						<element ref="rim:AdhocQuery" minOccurs="0" maxOccurs="1" />
						<element ref="rim:ObjectRefList" minOccurs="0" maxOccurs="1" />
					</sequence>
				</extension>
			</complexContent>
		</complexType>
	</element>
	<element name="RemoveObjectsRequest">
		<annotation>
			<documentation xml:lang="en">
				The ObjectRefList is the list of
				refs to the registry entrys being removed
			</documentation>
		</annotation>
		<complexType>
			<complexContent>
				<extension base="rs:RegistryRequestType">
					<sequence>
						<element ref="rim:AdhocQuery" minOccurs="0" maxOccurs="1" />
						<element ref="rim:ObjectRefList" minOccurs="0" maxOccurs="1" />
					</sequence>
					<attribute name="deletionScope"
						default="urn:oasis:names:tc:ebxml-regrep:DeletionScopeType:DeleteAll"
						type="rim:referenceURI" use="optional" />
				</extension>
			</complexContent>
		</complexType>
	</element>
	<element name="RelocateObjectsRequest">
		<complexType>
			<complexContent>
				<extension base="rs:RegistryRequestType">
					<sequence>
						<element maxOccurs="1" minOccurs="1" ref="rim:AdhocQuery" />
						<element maxOccurs="1" minOccurs="1" name="SourceRegistry"
							type="rim:ObjectRefType" />
						<element maxOccurs="1" minOccurs="1" name="DestinationRegistry"
							type="rim:ObjectRefType" />
						<element maxOccurs="1" minOccurs="1" name="OwnerAtSource"
							type="rim:ObjectRefType" />
						<element maxOccurs="1" minOccurs="1" name="OwnerAtDestination"
							type="rim:ObjectRefType" />
					</sequence>
				</extension>
			</complexContent>
		</complexType>
	</element>
	<element name="AcceptObjectsRequest">
		<!-- The ObjectRefList must only contain local ObjectRefs such that they 
			do not specify home attribute -->
		<complexType>
			<complexContent>
				<extension base="rs:RegistryRequestType">
					<attribute name="correlationId" type="anyURI" use="required" />
				</extension>
			</complexContent>
		</complexType>
	</element>
</schema>
