source: BOOK/schema/clfs/0.1/rng/clfs.rng@ 4fe47e3

Last change on this file since 4fe47e3 was 4fe47e3, checked in by Joe Ciccone <jciccone@…>, 14 years ago

Add the initial changes for a new xml format for the packages part
of the book. This is still preliminary and currently is pretty
broken, more to come in the future as bugs get squashed.

  • Property mode set to 100644
File size: 3.2 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<grammar xmlns:c="http://schema.cross-lfs.org/book" xmlns="http://relaxng.org/ns/structure/1.0">
3 <!-- We are building around the DocBook Schema -->
4 <include href="docbook.rng">
5 <define name="sect1">
6 <choice>
7 <element name="sect1">
8 <ref name="sect1.attlist"/>
9 <optional>
10 <ref name="sect1info"/>
11 </optional>
12 <ref name="sect.title.content"/>
13 <zeroOrMore>
14 <ref name="nav.class"/>
15 </zeroOrMore>
16 <choice>
17 <group>
18 <oneOrMore>
19 <ref name="divcomponent.mix"/>
20 </oneOrMore>
21 <choice>
22 <zeroOrMore>
23 <ref name="refentry.class"/>
24 </zeroOrMore>
25 <zeroOrMore>
26 <ref name="sect2"/>
27 </zeroOrMore>
28 <zeroOrMore>
29 <ref name="simplesect"/>
30 </zeroOrMore>
31 </choice>
32 </group>
33 <oneOrMore>
34 <ref name="refentry.class"/>
35 </oneOrMore>
36 <oneOrMore>
37 <ref name="sect2"/>
38 </oneOrMore>
39 <oneOrMore>
40 <ref name="simplesect"/>
41 </oneOrMore>
42 </choice>
43 <zeroOrMore>
44 <ref name="nav.class"/>
45 </zeroOrMore>
46 </element>
47 <ref name="clfs.sect1.package"/>
48 </choice>
49 </define>
50 </include>
51 <!-- Extend the standard profiling attributes -->
52 <define name="local.effectivity.attrib" combine="interleave">
53 <ref name="clfs.attrib.arch"/>
54 <ref name="clfs.attrib.bits"/>
55 <ref name="clfs.attrib.multilib"/>
56 </define>
57 <!-- Custom attributes unsed in this schema -->
58 <define name="clfs.attrib.arch">
59 <optional>
60 <attribute name="c:arch"/>
61 </optional>
62 </define>
63 <define name="clfs.attrib.bits">
64 <optional>
65 <attribute name="c:bits"/>
66 </optional>
67 </define>
68 <define name="clfs.attrib.multilib">
69 <optional>
70 <attribute name="c:multilib">
71 <choice>
72 <value>true</value>
73 <value>false</value>
74 </choice>
75 </attribute>
76 </optional>
77 </define>
78 <define name="clfs.attrib.multibuild">
79 <attribute name="c:multibuild">
80 <choice>
81 <value>true</value>
82 <value>false</value>
83 </choice>
84 </attribute>
85 </define>
86 <!-- Package element to be used inside of the chapter element -->
87 <define name="clfs.sect1.package">
88 <element name="c:package">
89 <attribute name="id"/>
90 <ref name="clfs.attrib.arch"/>
91 <ref name="clfs.attrib.bits"/>
92 <ref name="clfs.attrib.multilib"/>
93 <ref name="clfs.attrib.multibuild"/>
94 <ref name="sect1"/>
95 </element>
96 </define>
97 <!-- Switch case to be used inside of a sect1 -->
98 <define name="clfs.sect1.switch">
99 <element name="c:switch">
100 <zeroOrMore>
101 <element name="c:case">
102 <ref name="clfs.attrib.arch"/>
103 <ref name="clfs.attrib.bits"/>
104 <ref name="clfs.attrib.multilib"/>
105 </element>
106 </zeroOrMore>
107 <element name="c:default">
108 <empty/>
109 </element>
110 </element>
111 </define>
112</grammar>
Note: See TracBrowser for help on using the repository browser.