#% dom input model, part of SiSU and under the same license default namespace = "" start = element document { element head { element header { attribute class { xsd:NCName }, (element creator { text } | element date { xsd:NMTOKEN } | element date.available { xsd:NMTOKEN } | element date.created { xsd:NMTOKEN } | element date.issued { xsd:NMTOKEN } | element date.modified { xsd:NMTOKEN } | element date.valid { xsd:NMTOKEN } | element italicize { text } | element language { xsd:NCName } | element links { text } | element markup { text } | element rights { text } | element skin { xsd:NCName } | element subject { text } | element title { text } | element type { xsd:NCName } | element vocabulary { xsd:NCName }) }+ }, element body { element heading1 { heading, element heading2 { heading, contents1+, element heading3 { heading, contents1+ }+ } } } } heading = element heading { object } contents1 = element contents1 { heading, content, element contents2 { heading, content, element contents3 { heading, content }* }* } object = element object { element text { (text | italic | element bold { xsd:NMTOKEN } | element endnote { element symbol { text }?, element note { (text | italic | element br { empty })+ } } | element underscore { italic } | element image.path { text } | element italic { text })+ } } italic = element italic { text } content = element content { object+ }