<?xml version="1.0" encoding="UTF-8"?>
<!-- this XSD intended to correspond semantically to the application profile in eCOTOOL D3.5 -->
<!-- hand edited by Simon Grant, 2012-01-26 -->
<xs:schema xmlns="http://www.competencetools.eu/ecotool/competence"
	xmlns:xs="http://www.w3.org/2001/XMLSchema"
	xmlns:dcmitype="http://purl.org/dc/dcmitype/"
	xmlns:dcterms="http://purl.org/dc/terms/"
	targetNamespace="http://www.competencetools.eu/ecotool/competence"
	elementFormDefault="qualified"
	version="1.0">
	<xs:import namespace="http://purl.org/dc/terms/" schemaLocation="http://dublincore.org/schemas/xmls/qdc/dcterms.xsd"/>
	<xs:import namespace="http://purl.org/dc/dcmitype/" schemaLocation="http://dublincore.org/schemas/xmls/qdc/dcmitype.xsd"/>
	<xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/03/xml.xsd"/>
	<xs:element name="competence">
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="dcterms:identifier"/>
				<xs:element ref="dcterms:contributor" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="dcterms:creator" minOccurs="0"/>
				<xs:element ref="dcterms:created" minOccurs="0"/>
				<xs:element ref="dcterms:modified" minOccurs="0"/>
				<xs:element name="definition" type="definitionType" maxOccurs="unbounded"/>
<!-- does not check that there is at most one definition in each different language -->
				<xs:element name="contextIdentifier" type="xs:string" minOccurs="0"/>
				<xs:element name="category" type="categoryType" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element name="relation" type="relationType" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element name="attributedLevel" type="attributedLevelType" minOccurs="0" maxOccurs="unbounded"/>
			</xs:sequence>
			<xs:attribute ref="xml:lang" use="optional"/>
		</xs:complexType>
	</xs:element>
	<xs:complexType name="definitionType">
		<xs:sequence>
			<xs:element name="shortDescription">
<!-- ideally, the short description should allow a plain text alternative, without child elements -->
				<xs:complexType mixed="true">
					<xs:sequence>
						<xs:element name="actionVerb" type="xs:string" minOccurs="0"/>
						<xs:element name="complement" type="xs:string" minOccurs="0"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="fullDescription" type="xhtmlType" minOccurs="0"/>
		</xs:sequence>
		<xs:attribute ref="xml:lang" use="optional"/>
	</xs:complexType>
	<xs:complexType name="categoryType">
		<xs:sequence>
			<xs:element name="term" type="xs:string"/>
			<xs:element name="scheme" type="xs:string" minOccurs="0"/>
			<xs:element name="label" type="xs:string" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="relationType">
		<xs:sequence>
			<xs:element name="relationship" type="iriType"/>
			<xs:element name="otherIRI" type="iriType"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="attributedLevelType">
		<xs:sequence>
			<xs:element name="levelScheme" type="xs:string"/>
			<xs:element name="levelID" type="xs:string" minOccurs="0"/>
			<xs:element name="levelNumber" type="xs:string" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:simpleType name="iriType">
		<xs:restriction base="xs:string"/>
<!-- though of course what is really wanted here is an effective restriction to reasonable IRIs -->
	</xs:simpleType>
	<xs:complexType name="xhtmlType" mixed="true">
<!-- this is not what is really wanted - it should allow a single real XHTML div, complete with contents, but nothing else -->
		<xs:sequence>
			<xs:any namespace="##any" processContents="skip" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
</xs:schema>
