diff options
Diffstat (limited to 'lib/docbuilder/xsd')
-rwxr-xr-x | lib/docbuilder/xsd/application.xsd | 31 | ||||
-rwxr-xr-x | lib/docbuilder/xsd/appref.xsd | 27 | ||||
-rwxr-xr-x | lib/docbuilder/xsd/book.xsd | 292 | ||||
-rwxr-xr-x | lib/docbuilder/xsd/chapter.xsd | 45 | ||||
-rwxr-xr-x | lib/docbuilder/xsd/common.entities.xsd | 2 | ||||
-rwxr-xr-x | lib/docbuilder/xsd/common.header.xsd | 29 | ||||
-rwxr-xr-x | lib/docbuilder/xsd/common.image.xsd | 18 | ||||
-rwxr-xr-x | lib/docbuilder/xsd/common.refs.xsd | 102 | ||||
-rwxr-xr-x | lib/docbuilder/xsd/common.table.xsd | 42 | ||||
-rwxr-xr-x | lib/docbuilder/xsd/common.xsd | 212 | ||||
-rwxr-xr-x | lib/docbuilder/xsd/comref.xsd | 26 | ||||
-rwxr-xr-x | lib/docbuilder/xsd/cref.xsd | 35 | ||||
-rwxr-xr-x | lib/docbuilder/xsd/erlref.xsd | 26 | ||||
-rwxr-xr-x | lib/docbuilder/xsd/fascicules.xsd | 25 | ||||
-rwxr-xr-x | lib/docbuilder/xsd/fileref.xsd | 26 | ||||
-rwxr-xr-x | lib/docbuilder/xsd/part.xsd | 31 |
16 files changed, 969 insertions, 0 deletions
diff --git a/lib/docbuilder/xsd/application.xsd b/lib/docbuilder/xsd/application.xsd new file mode 100755 index 0000000000..eb666cb6c7 --- /dev/null +++ b/lib/docbuilder/xsd/application.xsd @@ -0,0 +1,31 @@ +<?xml version="1.0" encoding="utf-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+ <xs:include schemaLocation="common.xsd"/>
+ <xs:include schemaLocation="common.header.xsd"/>
+ <xs:element name="application">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="header"/>
+ <xs:element minOccurs="0" ref="description"/>
+ <xs:element maxOccurs="unbounded" ref="include"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="description">
+ <xs:complexType>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="block"/>
+ <xs:element ref="quote"/>
+ <xs:element ref="br"/>
+ <xs:element ref="marker"/>
+ <xs:element ref="warning"/>
+ <xs:element ref="note"/>
+ </xs:choice>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="include">
+ <xs:complexType>
+ <xs:attribute name="file" use="required"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/lib/docbuilder/xsd/appref.xsd b/lib/docbuilder/xsd/appref.xsd new file mode 100755 index 0000000000..b63839e494 --- /dev/null +++ b/lib/docbuilder/xsd/appref.xsd @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="utf-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+ <xs:include schemaLocation="common.refs.xsd"/>
+ <!-- Structure -->
+ <xs:element name="appref">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="header"/>
+ <xs:element ref="app"/>
+ <xs:element ref="appsummary"/>
+ <xs:element ref="description"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="section"/>
+ <xs:element ref="funcs"/>
+ </xs:choice>
+ <xs:element ref="authors"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="app" type="xs:string"/>
+ <xs:element name="appsummary" type="xs:string"/>
+ <!--
+ `name' is used in common.refs.dtd and must therefore
+ be defined in each *ref. dtd
+ -->
+ <xs:element name="name" type="xs:string"/>
+</xs:schema>
diff --git a/lib/docbuilder/xsd/book.xsd b/lib/docbuilder/xsd/book.xsd new file mode 100755 index 0000000000..b47962263a --- /dev/null +++ b/lib/docbuilder/xsd/book.xsd @@ -0,0 +1,292 @@ +<?xml version="1.0" encoding="utf-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+ <xs:include schemaLocation="common.xsd"/>
+ <xs:include schemaLocation="common.table.xsd"/>
+ <xs:element name="book">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="header"/>
+ <xs:element minOccurs="0" ref="insidecover"/>
+ <xs:element ref="pagetext"/>
+ <xs:element ref="preamble"/>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="applications"/>
+ <xs:element ref="parts"/>
+ <xs:element ref="headline"/>
+ <xs:element ref="pagetext"/>
+ </xs:choice>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="listoffigures"/>
+ <xs:element minOccurs="0" ref="listoftables"/>
+ <xs:element minOccurs="0" ref="listofterms"/>
+ <xs:element minOccurs="0" ref="bibliography"/>
+ <xs:element minOccurs="0" ref="index"/>
+ </xs:sequence>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="header">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="title"/>
+ <xs:element ref="prepared"/>
+ <xs:element minOccurs="0" ref="responsible"/>
+ <xs:element ref="docno"/>
+ <xs:element minOccurs="0" ref="approved"/>
+ <xs:element minOccurs="0" ref="checked"/>
+ <xs:element ref="date"/>
+ <xs:element ref="rev"/>
+ <xs:element minOccurs="0" ref="file"/>
+ <xs:element minOccurs="0" ref="abbreviation"/>
+ </xs:sequence>
+ <xs:attribute name="titlestyle" default="normal">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="special"/>
+ <xs:enumeration value="normal"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="title">
+ <xs:complexType mixed="true">
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="br"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="prepared">
+ <xs:complexType mixed="true">
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="br"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="responsible">
+ <xs:complexType mixed="true">
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="br"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="docno">
+ <xs:complexType mixed="true">
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="br"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="approved">
+ <xs:complexType mixed="true">
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="br"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="checked">
+ <xs:complexType mixed="true">
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="br"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="date">
+ <xs:complexType mixed="true">
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="br"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="rev">
+ <xs:complexType mixed="true">
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="br"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="file">
+ <xs:complexType mixed="true">
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="br"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="abbreviation">
+ <xs:complexType mixed="true">
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="br"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="pagetext" type="xs:string"/>
+ <xs:element name="preamble">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="preface"/>
+ <xs:element minOccurs="0" ref="contents"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="preface">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="block"/>
+ <xs:element ref="quote"/>
+ <xs:element ref="br"/>
+ <xs:element ref="marker"/>
+ <xs:element ref="warning"/>
+ <xs:element ref="note"/>
+ <xs:element ref="table"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="insidecover">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="br"/>
+ <xs:element ref="theheader"/>
+ <xs:element ref="vfill"/>
+ <xs:element ref="tt"/>
+ <xs:element ref="bold"/>
+ <xs:element ref="include"/>
+ </xs:choice>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="tt">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="br"/>
+ <xs:element ref="theheader"/>
+ <xs:element ref="vfill"/>
+ </xs:choice>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="bold">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="br"/>
+ <xs:element ref="theheader"/>
+ <xs:element ref="vfill"/>
+ </xs:choice>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="vfill">
+ <xs:complexType/>
+ </xs:element>
+ <xs:element name="theheader">
+ <xs:complexType>
+ <xs:attribute name="tag" default="none">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="title"/>
+ <xs:enumeration value="prepared"/>
+ <xs:enumeration value="responsible"/>
+ <xs:enumeration value="docno"/>
+ <xs:enumeration value="approved"/>
+ <xs:enumeration value="checked"/>
+ <xs:enumeration value="date"/>
+ <xs:enumeration value="rev"/>
+ <xs:enumeration value="file"/>
+ <xs:enumeration value="abbreviation"/>
+ <xs:enumeration value="none"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="applications">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="include"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="parts">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:element minOccurs="0" ref="description"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="include"/>
+ <xs:element ref="onepart"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attribute name="lift" default="no">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="yes"/>
+ <xs:enumeration value="no"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="headline" type="xs:string"/>
+ <xs:element name="index">
+ <xs:complexType/>
+ </xs:element>
+ <xs:element name="listoffigures">
+ <xs:complexType/>
+ </xs:element>
+ <xs:element name="listoftables">
+ <xs:complexType/>
+ </xs:element>
+ <xs:element name="listofterms">
+ <xs:complexType/>
+ </xs:element>
+ <xs:element name="bibliography">
+ <xs:complexType/>
+ </xs:element>
+ <xs:element name="contents">
+ <xs:complexType>
+ <xs:attribute name="level" default="2">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0"/>
+ <xs:enumeration value="1"/>
+ <xs:enumeration value="2"/>
+ <xs:enumeration value="3"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="onepart">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="title"/>
+ <xs:element minOccurs="0" ref="description"/>
+ <xs:element maxOccurs="unbounded" ref="include"/>
+ </xs:sequence>
+ <xs:attribute name="lift" default="no">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="yes"/>
+ <xs:enumeration value="no"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="description">
+ <xs:complexType>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="block"/>
+ <xs:element ref="quote"/>
+ <xs:element ref="br"/>
+ <xs:element ref="marker"/>
+ <xs:element ref="warning"/>
+ <xs:element ref="note"/>
+ </xs:choice>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="include">
+ <xs:complexType>
+ <xs:attribute name="file" use="required"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/lib/docbuilder/xsd/chapter.xsd b/lib/docbuilder/xsd/chapter.xsd new file mode 100755 index 0000000000..4d89baa988 --- /dev/null +++ b/lib/docbuilder/xsd/chapter.xsd @@ -0,0 +1,45 @@ +<?xml version="1.0" encoding="utf-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+ <xs:include schemaLocation="common.xsd"/>
+ <xs:include schemaLocation="common.header.xsd"/>
+ <xs:include schemaLocation="common.table.xsd"/>
+ <xs:include schemaLocation="common.image.xsd"/>
+ <!-- Structure -->
+ <xs:element name="chapter">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="header"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="block"/>
+ <xs:element ref="quote"/>
+ <xs:element ref="warning"/>
+ <xs:element ref="note"/>
+ <xs:element ref="br"/>
+ <xs:element ref="image"/>
+ <xs:element ref="marker"/>
+ <xs:element ref="table"/>
+ </xs:choice>
+ <xs:element maxOccurs="unbounded" ref="section"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="section">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="marker"/>
+ <xs:element ref="title"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="block"/>
+ <xs:element ref="quote"/>
+ <xs:element ref="warning"/>
+ <xs:element ref="note"/>
+ <xs:element ref="br"/>
+ <xs:element ref="image"/>
+ <xs:element ref="marker"/>
+ <xs:element ref="table"/>
+ <xs:element ref="section"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/lib/docbuilder/xsd/common.entities.xsd b/lib/docbuilder/xsd/common.entities.xsd new file mode 100755 index 0000000000..52a5d35179 --- /dev/null +++ b/lib/docbuilder/xsd/common.entities.xsd @@ -0,0 +1,2 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"/>
diff --git a/lib/docbuilder/xsd/common.header.xsd b/lib/docbuilder/xsd/common.header.xsd new file mode 100755 index 0000000000..bfee4b8bb4 --- /dev/null +++ b/lib/docbuilder/xsd/common.header.xsd @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+ <xs:element name="header">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="title"/>
+ <xs:element minOccurs="0" ref="shorttitle"/>
+ <xs:element ref="prepared"/>
+ <xs:element minOccurs="0" ref="responsible"/>
+ <xs:element ref="docno"/>
+ <xs:element minOccurs="0" ref="approved"/>
+ <xs:element minOccurs="0" ref="checked"/>
+ <xs:element ref="date"/>
+ <xs:element ref="rev"/>
+ <xs:element minOccurs="0" ref="file"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="title" type="xs:string"/>
+ <xs:element name="shorttitle" type="xs:string"/>
+ <xs:element name="prepared" type="xs:string"/>
+ <xs:element name="responsible" type="xs:string"/>
+ <xs:element name="docno" type="xs:string"/>
+ <xs:element name="approved" type="xs:string"/>
+ <xs:element name="checked" type="xs:string"/>
+ <xs:element name="date" type="xs:string"/>
+ <xs:element name="rev" type="xs:string"/>
+ <xs:element name="file" type="xs:string"/>
+</xs:schema>
diff --git a/lib/docbuilder/xsd/common.image.xsd b/lib/docbuilder/xsd/common.image.xsd new file mode 100755 index 0000000000..17054eb23c --- /dev/null +++ b/lib/docbuilder/xsd/common.image.xsd @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+ <xs:element name="image">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="icaption">
+ <xs:attribute name="file" use="required"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:complexType name="icaption">
+ <xs:sequence>
+ <xs:element ref="icaption"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:element name="icaption" type="xs:string"/>
+</xs:schema>
diff --git a/lib/docbuilder/xsd/common.refs.xsd b/lib/docbuilder/xsd/common.refs.xsd new file mode 100755 index 0000000000..58b450669d --- /dev/null +++ b/lib/docbuilder/xsd/common.refs.xsd @@ -0,0 +1,102 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file contains common stuff for the *ref.dtd files.
+ Note that `name' is defined in each *ref.dtd.
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+ <xs:include schemaLocation="common.xsd"/>
+ <xs:include schemaLocation="common.header.xsd"/>
+ <xs:element name="description">
+ <xs:complexType>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="block"/>
+ <xs:element ref="quote"/>
+ <xs:element ref="br"/>
+ <xs:element ref="marker"/>
+ <xs:element ref="warning"/>
+ <xs:element ref="note"/>
+ </xs:choice>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="funcs">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="func"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="func">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="name"/>
+ <xs:element ref="fsummary"/>
+ <xs:element minOccurs="0" ref="type"/>
+ <xs:element minOccurs="0" ref="desc"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <!-- ELEMENT name is defined in each ref dtd -->
+ <xs:element name="fsummary">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="c"/>
+ <xs:element ref="em"/>
+ </xs:choice>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="type">
+ <xs:complexType>
+ <xs:sequence maxOccurs="unbounded">
+ <xs:element ref="v"/>
+ <xs:element minOccurs="0" ref="d"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="v" type="xs:string"/>
+ <xs:element name="d">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="c"/>
+ <xs:element ref="em"/>
+ </xs:choice>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="desc">
+ <xs:complexType>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="block"/>
+ <xs:element ref="quote"/>
+ <xs:element ref="br"/>
+ <xs:element ref="marker"/>
+ <xs:element ref="warning"/>
+ <xs:element ref="note"/>
+ </xs:choice>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="authors">
+ <xs:complexType>
+ <xs:sequence maxOccurs="unbounded">
+ <xs:element ref="aname"/>
+ <xs:element ref="email"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="aname" type="xs:string"/>
+ <xs:element name="email" type="xs:string"/>
+ <xs:element name="section">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="marker"/>
+ <xs:element ref="title"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="block"/>
+ <xs:element ref="quote"/>
+ <xs:element ref="br"/>
+ <xs:element ref="marker"/>
+ <xs:element ref="warning"/>
+ <xs:element ref="note"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/lib/docbuilder/xsd/common.table.xsd b/lib/docbuilder/xsd/common.table.xsd new file mode 100755 index 0000000000..cf63df4317 --- /dev/null +++ b/lib/docbuilder/xsd/common.table.xsd @@ -0,0 +1,42 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+ <xs:element name="table">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="row"/>
+ <xs:element ref="tcaption"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="row">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="cell"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="cell">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="inline"/>
+ <xs:attribute name="align" default="left">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="left"/>
+ <xs:enumeration value="center"/>
+ <xs:enumeration value="right"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="valign" default="middle">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="top"/>
+ <xs:enumeration value="middle"/>
+ <xs:enumeration value="bottom"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="tcaption" type="xs:string"/>
+</xs:schema>
diff --git a/lib/docbuilder/xsd/common.xsd b/lib/docbuilder/xsd/common.xsd new file mode 100755 index 0000000000..3d43390bd8 --- /dev/null +++ b/lib/docbuilder/xsd/common.xsd @@ -0,0 +1,212 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<!-- This file contains common stuff for all dtds. -->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+ <xs:element name="block" abstract="true"/>
+ <xs:group name="inline">
+ <xs:sequence>
+ <xs:choice minOccurs="0">
+ <xs:element ref="c"/>
+ <xs:element ref="em"/>
+ <xs:element ref="term"/>
+ <xs:element ref="cite"/>
+ <xs:element ref="br"/>
+ <xs:element ref="path"/>
+ <xs:element ref="seealso"/>
+ <xs:element ref="url"/>
+ <xs:element ref="marker"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+ <!-- XXX -->
+ <xs:element name="p" substitutionGroup="block">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="inline"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="pre" substitutionGroup="block">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="seealso"/>
+ <xs:element ref="url"/>
+ <xs:element ref="input"/>
+ </xs:choice>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="input">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="seealso"/>
+ <xs:element ref="url"/>
+ </xs:choice>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="code" substitutionGroup="block">
+ <xs:complexType mixed="true">
+ <xs:attribute name="type" default="none">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="erl"/>
+ <xs:enumeration value="c"/>
+ <xs:enumeration value="none"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="quote">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="p"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="warning">
+ <xs:complexType>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="block"/>
+ <xs:element ref="quote"/>
+ <xs:element ref="br"/>
+ <xs:element ref="marker"/>
+ </xs:choice>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="note">
+ <xs:complexType>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="block"/>
+ <xs:element ref="quote"/>
+ <xs:element ref="br"/>
+ <xs:element ref="marker"/>
+ </xs:choice>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="c" type="xs:string"/>
+ <xs:element name="em">
+ <xs:complexType mixed="true">
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="c"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <!-- XXX -->
+ <xs:element name="term">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="termdef"/>
+ </xs:sequence>
+ <xs:attribute name="id" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="termdef" type="xs:string"/>
+ <xs:element name="cite">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="citedef"/>
+ </xs:sequence>
+ <xs:attribute name="id" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="citedef">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="ctitle"/>
+ <xs:element ref="cauthor"/>
+ <xs:element ref="chowpublished"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="ctitle" type="xs:string"/>
+ <xs:element name="cauthor" type="xs:string"/>
+ <xs:element name="chowpublished" type="xs:string"/>
+ <!-- XXX -->
+ <xs:element name="br">
+ <xs:complexType/>
+ </xs:element>
+ <!-- Path -->
+ <xs:element name="path">
+ <xs:complexType mixed="true">
+ <xs:attribute name="unix" default=""/>
+ <xs:attribute name="windows" default=""/>
+ </xs:complexType>
+ </xs:element>
+ <!-- List -->
+ <xs:element name="list" substitutionGroup="block">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="item"/>
+ </xs:sequence>
+ <xs:attribute name="type" default="bulleted">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="ordered"/>
+ <xs:enumeration value="bulleted"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="taglist" substitutionGroup="block">
+ <xs:complexType>
+ <xs:sequence maxOccurs="unbounded">
+ <xs:element ref="tag"/>
+ <xs:element ref="item"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="tag">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="c"/>
+ <xs:element ref="em"/>
+ <xs:element ref="seealso"/>
+ <xs:element ref="url"/>
+ </xs:choice>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="item">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="inline"/>
+ <xs:element ref="block"/>
+ </xs:choice>
+ </xs:complexType>
+ </xs:element>
+ <!-- References -->
+ <xs:element name="seealso">
+ <xs:complexType mixed="true">
+ <xs:attribute name="marker" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="url">
+ <xs:complexType mixed="true">
+ <xs:attribute name="href" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="marker">
+ <xs:complexType>
+ <xs:attribute name="id" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- CodeInclude -->
+ <xs:element name="codeinclude" substitutionGroup="block">
+ <xs:complexType>
+ <xs:attribute name="file" use="required"/>
+ <xs:attribute name="tag" default=""/>
+ <xs:attribute name="type" default="none">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="erl"/>
+ <xs:enumeration value="c"/>
+ <xs:enumeration value="none"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ </xs:element>
+ <!-- ErlEval -->
+ <xs:element name="erleval" substitutionGroup="block">
+ <xs:complexType>
+ <xs:attribute name="expr" use="required"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/lib/docbuilder/xsd/comref.xsd b/lib/docbuilder/xsd/comref.xsd new file mode 100755 index 0000000000..61df4dd848 --- /dev/null +++ b/lib/docbuilder/xsd/comref.xsd @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="utf-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+ <xs:include schemaLocation="common.refs.xsd"/>
+ <xs:element name="comref">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="header"/>
+ <xs:element ref="com"/>
+ <xs:element ref="comsummary"/>
+ <xs:element ref="description"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="section"/>
+ <xs:element ref="funcs"/>
+ </xs:choice>
+ <xs:element ref="authors"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="com" type="xs:string"/>
+ <xs:element name="comsummary" type="xs:string"/>
+ <!--
+ `name' is used in common.refs.dtd and must therefore
+ be defined in each *ref. dtd
+ -->
+ <xs:element name="name" type="xs:string"/>
+</xs:schema>
diff --git a/lib/docbuilder/xsd/cref.xsd b/lib/docbuilder/xsd/cref.xsd new file mode 100755 index 0000000000..f1cbeddfff --- /dev/null +++ b/lib/docbuilder/xsd/cref.xsd @@ -0,0 +1,35 @@ +<?xml version="1.0" encoding="utf-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+ <xs:include schemaLocation="common.refs.xsd"/>
+ <xs:element name="cref">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="header"/>
+ <xs:element ref="lib"/>
+ <xs:element ref="libsummary"/>
+ <xs:element ref="description"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="section"/>
+ <xs:element ref="funcs"/>
+ </xs:choice>
+ <xs:element ref="authors"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="lib" type="xs:string"/>
+ <xs:element name="libsummary" type="xs:string"/>
+ <!--
+ `name' is used in common.refs.dtd and must therefore
+ be defined in each *ref. dtd
+ -->
+ <xs:element name="name">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="ret"/>
+ <xs:element ref="nametext"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="ret" type="xs:string"/>
+ <xs:element name="nametext" type="xs:string"/>
+</xs:schema>
diff --git a/lib/docbuilder/xsd/erlref.xsd b/lib/docbuilder/xsd/erlref.xsd new file mode 100755 index 0000000000..f6011b7bea --- /dev/null +++ b/lib/docbuilder/xsd/erlref.xsd @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="utf-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+ <xs:include schemaLocation="common.refs.xsd"/>
+ <xs:element name="erlref">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="header"/>
+ <xs:element ref="module"/>
+ <xs:element ref="modulesummary"/>
+ <xs:element ref="description"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="section"/>
+ <xs:element ref="funcs"/>
+ </xs:choice>
+ <xs:element ref="authors"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="module" type="xs:string"/>
+ <xs:element name="modulesummary" type="xs:string"/>
+ <!--
+ `name' is used in common.refs.dtd and must therefore
+ be defined in each *ref. dtd
+ -->
+ <xs:element name="name" type="xs:string"/>
+</xs:schema>
diff --git a/lib/docbuilder/xsd/fascicules.xsd b/lib/docbuilder/xsd/fascicules.xsd new file mode 100755 index 0000000000..bfdb5bd604 --- /dev/null +++ b/lib/docbuilder/xsd/fascicules.xsd @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="utf-8"?>
+<!-- Structure -->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+ <xs:element name="fascicules">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="fascicule"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="fascicule">
+ <xs:complexType mixed="true">
+ <xs:attribute name="file" use="required"/>
+ <xs:attribute name="href" use="required"/>
+ <xs:attribute name="entry" default="no">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="yes"/>
+ <xs:enumeration value="no"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/lib/docbuilder/xsd/fileref.xsd b/lib/docbuilder/xsd/fileref.xsd new file mode 100755 index 0000000000..8038f2115f --- /dev/null +++ b/lib/docbuilder/xsd/fileref.xsd @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="utf-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+ <xs:include schemaLocation="common.refs.xsd"/>
+ <xs:element name="fileref">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="header"/>
+ <xs:element ref="file"/>
+ <xs:element ref="filesummary"/>
+ <xs:element ref="description"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="section"/>
+ <xs:element ref="funcs"/>
+ </xs:choice>
+ <xs:element ref="authors"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <!-- Note: ELEMENT file is already defined -->
+ <xs:element name="filesummary" type="xs:string"/>
+ <!--
+ `name' is used in common.refs.dtd and must therefore
+ be defined in each *ref. dtd
+ -->
+ <xs:element name="name" type="xs:string"/>
+</xs:schema>
diff --git a/lib/docbuilder/xsd/part.xsd b/lib/docbuilder/xsd/part.xsd new file mode 100755 index 0000000000..30d6ec0120 --- /dev/null +++ b/lib/docbuilder/xsd/part.xsd @@ -0,0 +1,31 @@ +<?xml version="1.0" encoding="utf-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+ <xs:include schemaLocation="common.xsd"/>
+ <xs:include schemaLocation="common.header.xsd"/>
+ <xs:element name="part">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="header"/>
+ <xs:element minOccurs="0" ref="description"/>
+ <xs:element maxOccurs="unbounded" ref="include"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="description">
+ <xs:complexType>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="block"/>
+ <xs:element ref="quote"/>
+ <xs:element ref="br"/>
+ <xs:element ref="marker"/>
+ <xs:element ref="warning"/>
+ <xs:element ref="note"/>
+ </xs:choice>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="include">
+ <xs:complexType>
+ <xs:attribute name="file" use="required"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
|