git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1357 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
		
			
				
	
	
		
			264 lines
		
	
	
		
			7.3 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
			
		
		
	
	
			264 lines
		
	
	
		
			7.3 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
<?xml version="1.0" encoding="utf-8"?>
 | 
						|
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 | 
						|
 | 
						|
<xsd:annotation>
 | 
						|
	<xsd:documentation>
 | 
						|
	XML Schema for Logtalk XML documentation files.
 | 
						|
	</xsd:documentation>
 | 
						|
</xsd:annotation>
 | 
						|
 
 | 
						|
<!-- 
 | 
						|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 | 
						|
%
 | 
						|
%  Logtalk - Object oriented extension to Prolog
 | 
						|
%  Release 2.25.1
 | 
						|
%
 | 
						|
%  Copyright (c) 1998-2005 Paulo Moura.  All Rights Reserved.
 | 
						|
%
 | 
						|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 | 
						|
-->
 | 
						|
 | 
						|
 | 
						|
<xsd:element name="logtalk" type="logtalk"/>
 | 
						|
 | 
						|
 | 
						|
<xsd:complexType name="logtalk">
 | 
						|
	<xsd:sequence>
 | 
						|
		<xsd:element name="entity"		type="entity"/>
 | 
						|
		<xsd:element name="relations"	type="relations"/>
 | 
						|
		<xsd:element name="predicates"	type="predicates"/>
 | 
						|
		<xsd:element name="remarks"		type="remarks"/>
 | 
						|
	</xsd:sequence>
 | 
						|
</xsd:complexType>
 | 
						|
 | 
						|
 | 
						|
<xsd:complexType name="entity">
 | 
						|
	<xsd:sequence>
 | 
						|
		<xsd:element name="name"		type="xsd:string"/>
 | 
						|
		<xsd:element name="type"		type="type"/>
 | 
						|
		<xsd:element name="compilation"	type="compilation"/>
 | 
						|
		<xsd:element name="comment"		type="xsd:string"	minOccurs="0"/>
 | 
						|
		<xsd:choice	minOccurs="0">
 | 
						|
			<xsd:element name="parnames"	type="xsd:string"/>
 | 
						|
			<xsd:element name="parameters"	type="parameters"/>
 | 
						|
		</xsd:choice>
 | 
						|
		<xsd:element name="author"		type="xsd:string"	minOccurs="0"/>
 | 
						|
		<xsd:element name="version"		type="xsd:string"	minOccurs="0"/>
 | 
						|
		<xsd:element name="date"		type="xsd:string"	minOccurs="0"/>
 | 
						|
		<xsd:element name="info"		type="info"			minOccurs="0" maxOccurs="unbounded"/>
 | 
						|
	</xsd:sequence>
 | 
						|
</xsd:complexType>
 | 
						|
 | 
						|
 | 
						|
<xsd:simpleType name="type">
 | 
						|
	<xsd:restriction base="xsd:string">
 | 
						|
		<xsd:enumeration value="category"/>
 | 
						|
		<xsd:enumeration value="object"/>
 | 
						|
		<xsd:enumeration value="protocol"/>
 | 
						|
	</xsd:restriction>
 | 
						|
</xsd:simpleType>
 | 
						|
 | 
						|
 | 
						|
<xsd:simpleType name="compilation">
 | 
						|
	<xsd:restriction base="xsd:string">
 | 
						|
		<xsd:enumeration value="static"/>
 | 
						|
		<xsd:enumeration value="dynamic"/>
 | 
						|
	</xsd:restriction>
 | 
						|
</xsd:simpleType>
 | 
						|
 | 
						|
 | 
						|
<xsd:complexType name="parameters">
 | 
						|
	<xsd:sequence>
 | 
						|
		<xsd:element name="parameter"	type="parameter"	maxOccurs="unbounded"/>
 | 
						|
	</xsd:sequence>
 | 
						|
</xsd:complexType>
 | 
						|
 | 
						|
 | 
						|
<xsd:complexType name="parameter">
 | 
						|
	<xsd:sequence>
 | 
						|
		<xsd:element name="name"		type="xsd:string"/>
 | 
						|
		<xsd:element name="description"	type="xsd:string"/>
 | 
						|
	</xsd:sequence>
 | 
						|
</xsd:complexType>
 | 
						|
 | 
						|
 | 
						|
<xsd:complexType name="info">
 | 
						|
	<xsd:sequence>
 | 
						|
		<xsd:element name="key"		type="xsd:string"/>
 | 
						|
		<xsd:element name="value"	type="xsd:string"/>
 | 
						|
	</xsd:sequence>
 | 
						|
</xsd:complexType>
 | 
						|
 | 
						|
 | 
						|
<xsd:complexType name="relations">
 | 
						|
	<xsd:sequence>
 | 
						|
		<xsd:element name="implements"		type="relation"		minOccurs="0" maxOccurs="unbounded"/>
 | 
						|
		<xsd:element name="imports"			type="relation"		minOccurs="0" maxOccurs="unbounded"/>
 | 
						|
		<xsd:element name="extends"			type="relation"		minOccurs="0" maxOccurs="unbounded"/>
 | 
						|
		<xsd:element name="instantiates"	type="relation"		minOccurs="0" maxOccurs="unbounded"/>
 | 
						|
		<xsd:element name="specializes"		type="relation"		minOccurs="0" maxOccurs="unbounded"/>
 | 
						|
		<xsd:element name="uses"			type="docrelation"	minOccurs="0" maxOccurs="unbounded"/>
 | 
						|
		<xsd:element name="calls"			type="docrelation"	minOccurs="0" maxOccurs="unbounded"/>
 | 
						|
	</xsd:sequence>
 | 
						|
</xsd:complexType>
 | 
						|
 | 
						|
 | 
						|
<xsd:complexType name="relation">
 | 
						|
	<xsd:sequence>
 | 
						|
		<xsd:element name="name"	type="xsd:string"/>
 | 
						|
		<xsd:element name="scope"	type="scope"/>
 | 
						|
		<xsd:element name="file"	type="xsd:string"/>
 | 
						|
	</xsd:sequence>
 | 
						|
</xsd:complexType>
 | 
						|
 | 
						|
 | 
						|
<xsd:complexType name="docrelation">
 | 
						|
	<xsd:sequence>
 | 
						|
		<xsd:element name="name"	type="xsd:string"/>
 | 
						|
		<xsd:element name="file"	type="xsd:string"/>
 | 
						|
	</xsd:sequence>
 | 
						|
</xsd:complexType>
 | 
						|
 | 
						|
 | 
						|
<xsd:simpleType name="scope">
 | 
						|
	<xsd:restriction base="xsd:string">
 | 
						|
		<xsd:enumeration value="public"/>
 | 
						|
		<xsd:enumeration value="protected"/>
 | 
						|
		<xsd:enumeration value="private"/>
 | 
						|
	</xsd:restriction>
 | 
						|
</xsd:simpleType>
 | 
						|
 | 
						|
 | 
						|
<xsd:complexType name="predicates">
 | 
						|
	<xsd:sequence>
 | 
						|
		<xsd:element name="public"		type="public"/>
 | 
						|
		<xsd:element name="protected"	type="protected"/>
 | 
						|
		<xsd:element name="private"		type="private"/>
 | 
						|
	</xsd:sequence>
 | 
						|
</xsd:complexType>
 | 
						|
 | 
						|
 | 
						|
<xsd:complexType name="public">
 | 
						|
	<xsd:sequence>
 | 
						|
		<xsd:element name="predicate"	type="predicate"	minOccurs="0" maxOccurs="unbounded"/>
 | 
						|
	</xsd:sequence>
 | 
						|
</xsd:complexType>
 | 
						|
 | 
						|
 | 
						|
<xsd:complexType name="protected">
 | 
						|
	<xsd:sequence>
 | 
						|
		<xsd:element name="predicate"	type="predicate"	minOccurs="0" maxOccurs="unbounded"/>
 | 
						|
	</xsd:sequence>
 | 
						|
</xsd:complexType>
 | 
						|
 | 
						|
 | 
						|
<xsd:complexType name="private">
 | 
						|
	<xsd:sequence>
 | 
						|
		<xsd:element name="predicate"	type="predicate"	minOccurs="0" maxOccurs="unbounded"/>
 | 
						|
	</xsd:sequence>
 | 
						|
</xsd:complexType>
 | 
						|
 | 
						|
 | 
						|
<xsd:complexType name="predicate">
 | 
						|
	<xsd:sequence>
 | 
						|
		<xsd:element name="name"		type="xsd:string"/>
 | 
						|
		<xsd:element name="scope"		type="scope"/>
 | 
						|
		<xsd:element name="compilation"	type="compilation"/>
 | 
						|
		<xsd:element name="meta"		type="xsd:string"		minOccurs="0"/>
 | 
						|
		<xsd:element name="mode"		type="mode"				minOccurs="0" maxOccurs="unbounded"/>
 | 
						|
		<xsd:element name="comment"		type="xsd:string"		minOccurs="0"/>
 | 
						|
		<xsd:element name="template"	type="xsd:string"		minOccurs="0" maxOccurs="unbounded"/>
 | 
						|
		<xsd:choice	minOccurs="0">
 | 
						|
			<xsd:element name="argnames"	type="xsd:string"/>
 | 
						|
			<xsd:element name="arguments"	type="arguments"/>
 | 
						|
		</xsd:choice>
 | 
						|
		<xsd:element name="exceptions"	type="exceptions"		minOccurs="0"/>
 | 
						|
		<xsd:element name="info"		type="info"				minOccurs="0"/>
 | 
						|
		<xsd:element name="examples"	type="examples"			minOccurs="0"/>
 | 
						|
	</xsd:sequence>
 | 
						|
</xsd:complexType>
 | 
						|
 | 
						|
 | 
						|
<xsd:complexType name="mode">
 | 
						|
	<xsd:sequence>
 | 
						|
		<xsd:element name="template"	type="xsd:string"/>
 | 
						|
		<xsd:element name="solutions"	type="solutions"/>
 | 
						|
	</xsd:sequence>
 | 
						|
</xsd:complexType>
 | 
						|
 | 
						|
 | 
						|
<xsd:simpleType name="solutions">
 | 
						|
	<xsd:restriction base="xsd:string">
 | 
						|
		<xsd:enumeration value="zero"/>
 | 
						|
		<xsd:enumeration value="zero_or_one"/>
 | 
						|
		<xsd:enumeration value="zero_or_more"/>
 | 
						|
		<xsd:enumeration value="one"/>
 | 
						|
		<xsd:enumeration value="one_or_more"/>
 | 
						|
		<xsd:enumeration value="error"/>
 | 
						|
	</xsd:restriction>
 | 
						|
</xsd:simpleType>
 | 
						|
 | 
						|
 | 
						|
<xsd:complexType name="arguments">
 | 
						|
	<xsd:sequence>
 | 
						|
		<xsd:element name="argument"	type="argument"	maxOccurs="unbounded"/>
 | 
						|
	</xsd:sequence>
 | 
						|
</xsd:complexType>
 | 
						|
 | 
						|
 | 
						|
<xsd:complexType name="argument">
 | 
						|
	<xsd:sequence>
 | 
						|
		<xsd:element name="name"		type="xsd:string"/>
 | 
						|
		<xsd:element name="description"	type="xsd:string"/>
 | 
						|
	</xsd:sequence>
 | 
						|
</xsd:complexType>
 | 
						|
 | 
						|
 | 
						|
<xsd:complexType name="exceptions">
 | 
						|
	<xsd:sequence>
 | 
						|
		<xsd:element name="exception"	type="exception"	maxOccurs="unbounded"/>
 | 
						|
	</xsd:sequence>
 | 
						|
</xsd:complexType>
 | 
						|
 | 
						|
 | 
						|
<xsd:complexType name="exception">
 | 
						|
	<xsd:sequence>
 | 
						|
		<xsd:element name="condition"	type="xsd:string"/>
 | 
						|
		<xsd:element name="term"		type="xsd:string"/>
 | 
						|
	</xsd:sequence>
 | 
						|
</xsd:complexType>
 | 
						|
 | 
						|
 | 
						|
<xsd:complexType name="examples">
 | 
						|
	<xsd:sequence>
 | 
						|
		<xsd:element name="example"	type="example"	minOccurs="0"	maxOccurs="unbounded"/>
 | 
						|
	</xsd:sequence>
 | 
						|
</xsd:complexType>
 | 
						|
 | 
						|
 | 
						|
<xsd:complexType name="example">
 | 
						|
	<xsd:sequence>
 | 
						|
		<xsd:element name="description"	type="xsd:string"/>
 | 
						|
		<xsd:element name="call"		type="xsd:string"/>
 | 
						|
		<xsd:element name="bindings"	type="xsd:string"/>
 | 
						|
	</xsd:sequence>
 | 
						|
</xsd:complexType>
 | 
						|
 | 
						|
 | 
						|
<xsd:complexType name="remarks">
 | 
						|
	<xsd:sequence>
 | 
						|
		<xsd:element name="remark"	type="remark"	minOccurs="0"	maxOccurs="unbounded"/>
 | 
						|
	</xsd:sequence>
 | 
						|
</xsd:complexType>
 | 
						|
 | 
						|
 | 
						|
<xsd:complexType name="remark">
 | 
						|
	<xsd:sequence>
 | 
						|
		<xsd:element name="topic"	type="xsd:string"/>
 | 
						|
		<xsd:element name="text"	type="xsd:string"/>
 | 
						|
	</xsd:sequence>
 | 
						|
</xsd:complexType>
 | 
						|
 | 
						|
 | 
						|
</xsd:schema>
 |