| 1 |  | 
|---|
| 2 | namespace c = "http://schema.cross-lfs.org/book" | 
|---|
| 3 |  | 
|---|
| 4 | # We are building around the DocBook Schema | 
|---|
| 5 | include "../../../docbook/4.5/rng/docbook.rnc" { | 
|---|
| 6 | sect1 = ( | 
|---|
| 7 | element sect1 { | 
|---|
| 8 | sect1.attlist, | 
|---|
| 9 | sect1info?, | 
|---|
| 10 | sect.title.content, | 
|---|
| 11 | nav.class*, | 
|---|
| 12 | ((divcomponent.mix+, (refentry.class* | sect2* | simplesect*)) | 
|---|
| 13 | | refentry.class+ | 
|---|
| 14 | | sect2+ | 
|---|
| 15 | | simplesect+), | 
|---|
| 16 | nav.class* | 
|---|
| 17 | } | clfs.sect.package ) | 
|---|
| 18 | } | 
|---|
| 19 |  | 
|---|
| 20 | # Extend the standard profiling attributes | 
|---|
| 21 | local.effectivity.attrib &= | 
|---|
| 22 | clfs.attrib.arch, | 
|---|
| 23 | clfs.attrib.bits, | 
|---|
| 24 | clfs.attrib.multilib | 
|---|
| 25 |  | 
|---|
| 26 | # Profiling Attributes | 
|---|
| 27 | clfs.attrib.arch = attribute c:arch { text }? | 
|---|
| 28 | clfs.attrib.bits = attribute c:bits { text }? | 
|---|
| 29 | clfs.attrib.multilib = attribute c:multilib { "true" | "false" }? | 
|---|
| 30 |  | 
|---|
| 31 | # Inline Elements | 
|---|
| 32 |  | 
|---|
| 33 | clfs.inline = | 
|---|
| 34 | (clfs.inline.literal | | 
|---|
| 35 | clfs.inline.replaceable | | 
|---|
| 36 | clfs.inline.application | | 
|---|
| 37 | clfs.inline.dirname | | 
|---|
| 38 | clfs.inline.filename | | 
|---|
| 39 | clfs.inline.command | | 
|---|
| 40 | text)* | 
|---|
| 41 |  | 
|---|
| 42 | clfs.inline.common.attrib = | 
|---|
| 43 | clfs.attrib.arch, | 
|---|
| 44 | clfs.attrib.bits, | 
|---|
| 45 | clfs.attrib.multilib | 
|---|
| 46 |  | 
|---|
| 47 | clfs.inline.literal = | 
|---|
| 48 | element c:literal { | 
|---|
| 49 | clfs.inline.common.attrib, | 
|---|
| 50 | clfs.inline | 
|---|
| 51 | } | 
|---|
| 52 | clfs.inline.replaceable = | 
|---|
| 53 | element c:replaceable { | 
|---|
| 54 | clfs.inline.common.attrib, | 
|---|
| 55 | clfs.inline | 
|---|
| 56 | } | 
|---|
| 57 | clfs.inline.application = | 
|---|
| 58 | element c:application { | 
|---|
| 59 | clfs.inline.common.attrib, | 
|---|
| 60 | clfs.inline | 
|---|
| 61 | } | 
|---|
| 62 | clfs.inline.dirname = | 
|---|
| 63 | element c:dirname { | 
|---|
| 64 | clfs.inline.common.attrib, | 
|---|
| 65 | clfs.inline | 
|---|
| 66 | } | 
|---|
| 67 | clfs.inline.filename = | 
|---|
| 68 | element c:filename { | 
|---|
| 69 | clfs.inline.common.attrib, | 
|---|
| 70 | clfs.inline | 
|---|
| 71 | } | 
|---|
| 72 | clfs.inline.command = | 
|---|
| 73 | element c:command { | 
|---|
| 74 | clfs.inline.common.attrib, | 
|---|
| 75 | clfs.inline | 
|---|
| 76 | } | 
|---|
| 77 |  | 
|---|
| 78 | # Block Elements | 
|---|
| 79 |  | 
|---|
| 80 | clfs.block.para = | 
|---|
| 81 | element c:para { | 
|---|
| 82 | clfs.inline | 
|---|
| 83 | } | 
|---|
| 84 |  | 
|---|
| 85 | clfs.block.note = | 
|---|
| 86 | element c:note { | 
|---|
| 87 | clfs.block.para* | 
|---|
| 88 | } | 
|---|
| 89 |  | 
|---|
| 90 | clfs.block.command = | 
|---|
| 91 | element c:command { | 
|---|
| 92 | clfs.attrib.arch, | 
|---|
| 93 | clfs.attrib.bits, | 
|---|
| 94 | clfs.attrib.multilib, | 
|---|
| 95 | attribute c:nodump { | 
|---|
| 96 | "true" | "false" | 
|---|
| 97 | }?, | 
|---|
| 98 | (element c:literal { text } | text)+ | 
|---|
| 99 | } | 
|---|
| 100 |  | 
|---|
| 101 | # The Package | 
|---|
| 102 | clfs.sect.package = | 
|---|
| 103 | element c:package { | 
|---|
| 104 | attribute id { text }, | 
|---|
| 105 | clfs.attrib.arch, | 
|---|
| 106 | clfs.attrib.bits, | 
|---|
| 107 | clfs.attrib.multilib, | 
|---|
| 108 | attribute c:multibuild { | 
|---|
| 109 | "true" | "false" | 
|---|
| 110 | }, | 
|---|
| 111 |  | 
|---|
| 112 | element c:title { text }, | 
|---|
| 113 | element c:version { text }, | 
|---|
| 114 | element c:description { clfs.inline }, | 
|---|
| 115 |  | 
|---|
| 116 | element c:install { | 
|---|
| 117 | (clfs.block.para | | 
|---|
| 118 | clfs.block.command | | 
|---|
| 119 | clfs.block.note)+ | 
|---|
| 120 | }+, | 
|---|
| 121 |  | 
|---|
| 122 | element c:contents { | 
|---|
| 123 | attribute c:ref { | 
|---|
| 124 | text | 
|---|
| 125 | } | ( | 
|---|
| 126 | element c:program { | 
|---|
| 127 | element c:name { | 
|---|
| 128 | text | 
|---|
| 129 | }, | 
|---|
| 130 | element c:description { | 
|---|
| 131 | clfs.inline | 
|---|
| 132 | } | 
|---|
| 133 | }*, | 
|---|
| 134 | element c:library { | 
|---|
| 135 | element c:name { | 
|---|
| 136 | text | 
|---|
| 137 | }, | 
|---|
| 138 | element c:description { | 
|---|
| 139 | clfs.inline | 
|---|
| 140 | } | 
|---|
| 141 | }*, | 
|---|
| 142 | element c:directory { | 
|---|
| 143 | element c:name { | 
|---|
| 144 | text | 
|---|
| 145 | }, | 
|---|
| 146 | element c:description { | 
|---|
| 147 | clfs.inline | 
|---|
| 148 | } | 
|---|
| 149 | }* | 
|---|
| 150 | ) | 
|---|
| 151 | }? | 
|---|
| 152 | } | 
|---|