<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
	<xs:element name="RESOURCE_PROFILE">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="HEADER" type="HEADERType" />
				<xs:element name="BODY" type="BODYType" />
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:complexType name="HEADERType">
		<xs:all>
			<xs:element name="RESOURCE_IDENTIFIER" type="RESOURCE_IDENTIFIERType" />
			<xs:element name="RESOURCE_TYPE" type="RESOURCE_TYPEType" />
			<xs:element name="RESOURCE_KIND" type="RESOURCE_KINDType" />
			<xs:element name="RESOURCE_URI" type="RESOURCE_URIType" />
			<xs:element name="DATE_OF_CREATION" type="DATE_OF_CREATIONType" />
		</xs:all>
	</xs:complexType>
	<xs:complexType name="RESOURCE_IDENTIFIERType">
		<xs:attribute name="value" type="xs:string" use="required" />
	</xs:complexType>
	<xs:complexType name="RESOURCE_TYPEType">
		<xs:attribute name="value" use="required">
			<xs:simpleType>
				<xs:restriction base="xs:string">
					<xs:enumeration value="WebInterfaceLayoutResourceType" />
				</xs:restriction>
			</xs:simpleType>
		</xs:attribute>
	</xs:complexType>
	<xs:complexType name="RESOURCE_KINDType">
		<xs:attribute name="value" use="required">
			<xs:simpleType>
				<xs:restriction base="xs:string">
					<xs:enumeration value="WebInterfaceLayoutResources" />
					<xs:enumeration value="PendingDSResources" />
				</xs:restriction>
			</xs:simpleType>
		</xs:attribute>
	</xs:complexType>
	<xs:complexType name="RESOURCE_URIType">
		<xs:attribute name="value" type="xs:string" use="required" />
	</xs:complexType>
	<xs:complexType name="DATE_OF_CREATIONType">
		<xs:attribute name="value" type="xs:dateTime" use="required" />
	</xs:complexType>
	<xs:complexType name="CONFIGURATIONType">
		<xs:sequence>
			<xs:element name="NAME" type="xs:string" />
			<xs:element name="MDFORMAT_NAME" type="xs:string" />
			<xs:element name="INDEX_LAYOUT_NAME" type="xs:string" />
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="BODYType">
		<xs:sequence minOccurs="1">
			<xs:element name="CONFIGURATION" type="CONFIGURATIONType" />
			<xs:element name="CSS_FILE" type="xs:string" />
			<xs:sequence minOccurs="1">
				<xs:element name="SUPPORTED_LOCALES" type="SuportedLocalesListType"
					minOccurs="1" maxOccurs="1" />
			</xs:sequence>
			<xs:sequence maxOccurs="1">
				<xs:element name="SEARCHABLES" type="SEARCHABLESType" />
			</xs:sequence>
			<xs:element name="DOCUMENT_DESCRIPTIONS" type="MapType" />
			<xs:sequence minOccurs="0" maxOccurs="unbounded">
				<xs:element name="BASE_COLLECTIONS" type="xs:string" />
			</xs:sequence>
			<xs:element name="VIEW_COMMUNITIES" type="xs:boolean" />
			<xs:element name="VIEW_COLLECTIONS" type="xs:boolean" />
			<xs:element name="VIEW_REPOSITORIES" type="xs:boolean" />
			<xs:element name="VIEW_ANNOUNCEMENTS" type="xs:boolean" />
			<xs:element name="VIEW_USER_PROFILE" type="xs:boolean" />
			<xs:element name="VIEW_SIMILAR_DOCUMENTS" type="xs:boolean" />
			<xs:element name="VIEW_EPUBLICATIONS" type="xs:boolean" />
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="SuportedLocalesListType">
		<xs:sequence minOccurs="1" maxOccurs="unbounded">
			<xs:element name="SUPPORTED_LOCALE" type="SUPPORTED_LOCALEType" />
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="SUPPORTED_LOCALEType">
		<xs:sequence minOccurs="1" maxOccurs="1">
			<xs:element name="LOCALE" type="xs:string" />
		</xs:sequence>
		<xs:attribute name="DEFAULT" type="xs:boolean" />
	</xs:complexType>
	<xs:complexType name="SEARCHABLESType">
		<xs:sequence minOccurs="0" maxOccurs="unbounded">
			<xs:element name="SEARCHABLE" type="SEARCHABLEType" />
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="SEARCHABLEType">
		<xs:all>
			<xs:element name="NAME" type="xs:string" minOccurs="1" />
			<xs:element name="TYPE" type="SearchableTypeType"
				minOccurs="1" />
			<xs:element name="INDEX_TYPE" type="xs:string" minOccurs="1" />
			<xs:element name="DESCRIPTION_MAP" type="MapType"
				minOccurs="1" />
			<xs:element name="SHORT_DESCRIPTION_MAP" type="MapType"
				minOccurs="1" />
			<xs:element name="IN_SEARCH" type="xs:boolean" minOccurs="1" />
			<xs:element name="IN_REFINE" type="xs:boolean" minOccurs="1" />
			<xs:element name="IN_BROWSE" type="xs:boolean" minOccurs="1" />
			<xs:element name="SEARCH_RANK" type="xs:int" minOccurs="1" />
			<xs:element name="REFINE_RANK" type="xs:int" minOccurs="1" />
			<xs:element name="BROWSE_RANK" type="xs:int" minOccurs="1" />
			<xs:element name="SEARCH_VOCABULARY" type="xs:string"
				minOccurs="0" />
			<xs:element name="BROWSE_VOCABULARY" type="xs:string"
				minOccurs="0" />
			<xs:element name="FROM_YEAR" type="xs:int" minOccurs="0" />
			<xs:element name="TO_YEAR" type="xs:int" minOccurs="0" />
			<xs:element name="PERIOD_BACK_MAP" type="MapMapType"
				minOccurs="0" />
		</xs:all>
		<xs:attribute name="hidden" type="xs:boolean" default="false" />
	</xs:complexType>
	<xs:simpleType name="SearchableTypeType">
		<xs:restriction base="xs:string">
			<xs:enumeration value="date" />
			<xs:enumeration value="plain" />
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="MapMapType">
		<xs:sequence>
			<xs:element name="mapEntry" type="MapMapEntryType"
				minOccurs="0" maxOccurs="unbounded" />
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="MapMapEntryType">
		<xs:sequence>
			<xs:element name="key" type="xs:anyType" />
			<xs:element name="value" type="MapEntryType" minOccurs="0"
				maxOccurs="unbounded" />
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="MapType">
		<xs:sequence>
			<xs:element name="entry" type="MapEntryType" minOccurs="0"
				maxOccurs="unbounded" />
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="MapEntryType">
		<xs:sequence>
			<xs:element name="key" type="xs:anyType" />
			<xs:element name="value" type="xs:anyType" />
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="DocumentDescriptionType">
		<xs:sequence minOccurs="1">
			<xs:element name="view" type="xs:string" maxOccurs="1" />
			<xs:element name="documentFields" type="DocumentFieldListType"
				minOccurs="1" maxOccurs="1" />
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="DocumentFieldListType">
		<xs:sequence>
			<xs:element name="documentField" type="DocumentFieldType"
				minOccurs="1" maxOccurs="unbounded" />
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="DocumentFieldType">
		<xs:sequence>
			<xs:element name="name" type="xs:string" minOccurs="0"
				maxOccurs="1" />
			<xs:element name="descriptionMap" type="MapType"
				minOccurs="0" maxOccurs="1" />
			<xs:element name="forceDescription" type="xs:boolean"
				minOccurs="0" maxOccurs="1" />
			<xs:element name="multipleValuesDescriptionMap" type="MapType"
				minOccurs="0" maxOccurs="1" />
			<xs:element name="vocabulary" type="xs:string" minOccurs="0"
				maxOccurs="1" />
			<xs:element name="switch" type="SwitchType" minOccurs="0"
				maxOccurs="1" />
			<xs:element name="displays" type="DisplayListType"
				minOccurs="0" maxOccurs="1" />
			<xs:element name="maxCharacters" type="xs:int" minOccurs="0"
				maxOccurs="1" />
			<xs:element name="cutpoint" type="CutpointType" minOccurs="0"
				maxOccurs="1" />
			<xs:element name="cssClass" type="xs:string" minOccurs="0"
				maxOccurs="1" />
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="DisplayListType">
		<xs:sequence>
			<xs:element name="display" type="DisplayType" minOccurs="1"
				maxOccurs="unbounded" />
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="SwitchType">
		<xs:sequence>
			<xs:element name="documentFieldMap" type="MapType"
				minOccurs="1" maxOccurs="1" />
		</xs:sequence>
		<xs:attribute name="conditionField" type="xs:string" use="required" />
		<xs:attribute name="default" type="xs:boolean" />
	</xs:complexType>
	<xs:simpleType name="CutpointType">
		<xs:restriction base="xs:string">
			<xs:enumeration value="line" />
			<xs:enumeration value="value" />
			<xs:enumeration value="part" />
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="DisplayType">
		<xs:sequence>
			<xs:element name="displayType" type="DisplayTypeType"
				minOccurs="1" maxOccurs="1" />
			<xs:element name="field" type="xs:string" minOccurs="0"
				maxOccurs="1" />
			<xs:element name="label" type="xs:string" minOccurs="0"
				maxOccurs="1" />
			<xs:element name="action" type="xs:string" minOccurs="0"
				maxOccurs="1" />
			<xs:element name="parameter" type="xs:string" minOccurs="0"
				maxOccurs="1" />
			<xs:element name="descriptionMap" type="MapType"
				minOccurs="0" maxOccurs="1" />
		</xs:sequence>
	</xs:complexType>
	<xs:simpleType name="DisplayTypeType">
		<xs:restriction base="xs:string">
			<xs:enumeration value="plain" />
			<xs:enumeration value="search" />
			<xs:enumeration value="internalUrl" />
			<xs:enumeration value="externalUrl" />
			<xs:enumeration value="documentExternalUrl" />
		</xs:restriction>
	</xs:simpleType>
</xs:schema>
