common: also handle // comments in addition to /* */ ones.
[gtk-doc.git] / devhelp2.xsd
blobc58b9bc647593381e5782e1091a44d45e863bece
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3 get http://xml.fiforms.org/xs3p/ and generate docs
4 xsltproc -o devhelp2.xsd.html $HOME/download/xs3p-1.1.3/xs3p.xsl devhelp2.xsd
5 -->
6 <xsd:schema
7 xmlns:xsd="http://www.w3.org/2001/XMLSchema"
8 xmlns="urn:devhelp"
9 targetNamespace="urn:devhelp"
10 elementFormDefault="qualified">
12 <xsd:annotation>
13 <xsd:documentation>
14 Devhelp2 files are use in the 'devhelp' documentation browser.
15 </xsd:documentation>
16 </xsd:annotation>
18 <xsd:simpleType name="keyword-type">
19 <xsd:restriction base="xsd:string">
20 <xsd:enumeration value="constant"/>
21 <xsd:enumeration value="enum"/>
22 <xsd:enumeration value="function"/>
23 <xsd:enumeration value="macro"/>
24 <xsd:enumeration value="property"/>
25 <xsd:enumeration value="signal"/>
26 <xsd:enumeration value="struct"/>
27 <xsd:enumeration value="typedef"/>
28 <xsd:enumeration value="union"/>
29 <xsd:enumeration value="variable"/>
30 </xsd:restriction>
31 <xsd:annotation>
32 <xsd:documentation>
33 Known keyword types.
34 </xsd:documentation>
35 </xsd:annotation>
36 </xsd:simpleType>
38 <xsd:simpleType name="language-type">
39 <xsd:restriction base="xsd:string">
40 <xsd:enumeration value="c"/>
41 <xsd:enumeration value="c++"/>
42 <xsd:enumeration value="c#"/>
43 <xsd:enumeration value="java"/>
44 <xsd:enumeration value="javascript"/>
45 <xsd:enumeration value="perl"/>
46 <xsd:enumeration value="python"/>
47 <xsd:enumeration value="vala"/>
48 </xsd:restriction>
49 <xsd:annotation>
50 <xsd:documentation>
51 Known programing languages.
52 </xsd:documentation>
53 </xsd:annotation>
54 </xsd:simpleType>
56 <xsd:attribute name="title" type="xsd:string">
57 <xsd:annotation>
58 <xsd:documentation>
59 Title of the reference manual.
60 </xsd:documentation>
61 </xsd:annotation>
62 </xsd:attribute>
63 <xsd:attribute name="link" type="xsd:string">
64 <xsd:annotation>
65 <xsd:documentation>
66 Entry point to the manual. Can be given as a relative path to the
67 location of the devhelp2 file..
68 </xsd:documentation>
69 </xsd:annotation>
70 </xsd:attribute>
71 <xsd:attribute name="author" type="xsd:string">
72 <xsd:annotation>
73 <xsd:documentation>
74 Author of the document. Multiple authors are separated by ','.
75 </xsd:documentation>
76 </xsd:annotation>
77 </xsd:attribute>
78 <xsd:attribute name="name" type="xsd:string">
79 <xsd:annotation>
80 <xsd:documentation>
81 Short name of the manual.
82 </xsd:documentation>
83 </xsd:annotation>
84 </xsd:attribute>
85 <xsd:attribute name="version" type="xsd:integer">
86 <xsd:annotation>
87 <xsd:documentation>
88 Version of the devhelp xml specification (2).
89 </xsd:documentation>
90 </xsd:annotation>
91 </xsd:attribute>
92 <xsd:attribute name="language" type="language-type">
93 <xsd:annotation>
94 <xsd:documentation>
95 Programing language this manual refers to.
96 </xsd:documentation>
97 </xsd:annotation>
98 </xsd:attribute>
100 <xsd:attribute name="type" type="keyword-type">
101 <xsd:annotation>
102 <xsd:documentation>
103 Type of the keyword.
104 </xsd:documentation>
105 </xsd:annotation>
106 </xsd:attribute>
107 <xsd:attribute name="since" type="xsd:string">
108 <xsd:annotation>
109 <xsd:documentation>
110 Version since that the keyword is part of the API.
111 </xsd:documentation>
112 </xsd:annotation>
113 </xsd:attribute>
114 <xsd:attribute name="deprecated" type="xsd:boolean">
115 <xsd:annotation>
116 <xsd:documentation>
117 Marks the keyword as deprecated.
118 </xsd:documentation>
119 </xsd:annotation>
120 </xsd:attribute>
123 <xsd:element name="sub">
124 <xsd:complexType>
125 <xsd:sequence>
126 <xsd:element ref="sub" minOccurs="0" maxOccurs="unbounded"/>
127 </xsd:sequence>
128 <xsd:attribute ref="name" use="required"/>
129 <xsd:attribute ref="link" use="required"/>
130 </xsd:complexType>
131 <xsd:annotation>
132 <xsd:documentation>
133 Sub tags for the hierachy of the chapters and parts.
134 </xsd:documentation>
135 </xsd:annotation>
136 </xsd:element>
138 <xsd:element name="chapters">
139 <xsd:complexType>
140 <xsd:sequence>
141 <xsd:element ref="sub" minOccurs="0" maxOccurs="unbounded"/>
142 </xsd:sequence>
143 </xsd:complexType>
144 <xsd:annotation>
145 <xsd:documentation>
146 The chapters tag encloses the structure of the reference manual. Each
147 sub unit is represented by a sub tag.
148 </xsd:documentation>
149 </xsd:annotation>
150 </xsd:element>
152 <xsd:element name="keyword">
153 <xsd:complexType>
154 <xsd:attribute ref="type" use="required"/>
155 <xsd:attribute ref="name" use="required"/>
156 <xsd:attribute ref="link" use="required"/>
157 <xsd:attribute ref="since"/>
158 <xsd:attribute ref="deprecated"/>
159 </xsd:complexType>
160 <xsd:documentation>
161 The keyword tag points to the documentation of a api symbol.
162 </xsd:documentation>
163 </xsd:element>
165 <xsd:element name="functions">
166 <xsd:complexType>
167 <xsd:sequence>
168 <xsd:element ref="keyword" minOccurs="0" maxOccurs="unbounded"/>
169 </xsd:sequence>
170 </xsd:complexType>
171 <xsd:documentation>
172 The functions tag encloses all api symbols of the reference manual. Each
173 sub unit is represented by a keyword tag.
174 </xsd:documentation>
175 </xsd:element>
177 <xsd:element name="book">
178 <xsd:complexType>
179 <xsd:sequence>
180 <xsd:element ref="chapters" minOccurs="1" maxOccurs="1"/>
181 <xsd:element ref="functions" minOccurs="1" maxOccurs="1"/>
182 </xsd:sequence>
183 <xsd:attribute ref="title" use="required"/>
184 <xsd:attribute ref="link" use="required"/>
185 <xsd:attribute ref="author" use="required"/>
186 <xsd:attribute ref="name" use="required"/>
187 <xsd:attribute ref="version" use="required"/>
188 <xsd:attribute ref="language" />
189 </xsd:complexType>
190 <xsd:annotation>
191 <xsd:documentation>
192 Toplevel element of a devhelp book. A devhelp book list the structure of
193 a developer manual together with development related metadata.
194 </xsd:documentation>
195 </xsd:annotation>
196 </xsd:element>
197 </xsd:schema>