<?xml version="1.0" encoding="UTF-8"?>

<xs:schema 
	targetNamespace="urn:omg.org/plm20/schemaInfo"
	xmlns="urn:omg.org/plm20/schemaInfo" 
	xmlns:xs="http://www.w3.org/2001/XMLSchema"
	elementFormDefault="qualified">

	<xs:complexType name="featureInfo">
			<xs:attribute name="name" type="xs:string" use="required"/>
			<xs:attribute name="type" type="xs:QName" use="required"/>
			<xs:attribute name="minOccurs" type="xs:int"/>
			<xs:attribute name="maxOccurs" type="xs:string"/>
			<xs:attribute name="isReference" type="xs:boolean"/>
	</xs:complexType>

	<xs:complexType name="baseInfo">
		<xs:attribute name="name" type="xs:string" use="required"/>
	</xs:complexType>

	<xs:complexType name="deprecatedInfo">
	</xs:complexType>
     
	<xs:complexType name="interfaceInfo">
		<xs:sequence>
			<xs:element name="base" type="baseInfo" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element name="feature" type="featureInfo" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
		<xs:attribute name="name" type="xs:string" use="required"/>
	</xs:complexType>

	<xs:complexType name="referencesInfo">
		<xs:attribute name="name" type="xs:QName" use="required"/>
	</xs:complexType>

	<xs:complexType name="implementsInfo">
		<xs:sequence>
			<xs:element name="base" type="baseInfo" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
</xs:schema>
