aboutsummaryrefslogblamecommitdiffstats
path: root/hes16a.rnc
blob: 319cc344e1203c3e6ca0a3aeb5b8f06bc1dcad24 (plain) (tree)
































































































































































































                                                                     
# hes16a.dtd (multiple C*)
# derived from:
# losfile.dtd
# DTD for the bible texts of the freeware watchwords programs.
# Version 06t-33:
# last changes:
# attribute kni
# attribute c
# previous version: hes06-33t.dtd

namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0"

Books =
  "Gn"
  | "Ex"
  | "Lv"
  | "Nu"
  | "Dt"
  | "Jos"
  | "Jdc"
  | "Rth"
  | "1Sm"
  | "2Sm"
  | "1Rg"
  | "2Rg"
  | "1Chr"
  | "2Chr"
  | "Esr"
  | "Neh"
  | "Esth"
  | "Job"
  | "Ps"
  | "Prv"
  | "Eccl"
  | "Ct"
  | "Is"
  | "Jr"
  | "Thr"
  | "Ez"
  | "Dn"
  | "Hos"
  | "Joel"
  | "Am"
  | "Ob"
  | "Jon"
  | "Mch"
  | "Nah"
  | "Hab"
  | "Zph"
  | "Hgg"
  | "Zch"
  | "Ml"
  | "Mt"
  | "Mc"
  | "L"
  | "J"
  | "Act"
  | "R"
  | "1K"
  | "2K"
  | "G"
  | "E"
  | "Ph"
  | "Kol"
  | "1Th"
  | "2Th"
  | "1T"
  | "2T"
  | "Tt"
  | "Phm"
  | "H"
  | "Jc"
  | "1P"
  | "2P"
  | "1J"
  | "2J"
  | "3J"
  | "Jd"
  | "Ap"
Line = (text | X | EM)*
# Top level structure
LOSFILE =
  element LOSFILE {
    attlist.LOSFILE, HEAD, (YEAR | MONTH | WEEK | DAY | LOSUNG)+
  }
attlist.LOSFILE &=
  [ a:defaultValue = "1" ] attribute dtdmainvers { string "1" }?,
  attribute dtdsubvers { text }?,
  attribute xml:lang { xsd:NMTOKEN },
  attribute year { text }
HEAD = element HEAD { attlist.HEAD, FILEVERS, XLAT, SUBLANG* }
attlist.HEAD &= empty
FILEVERS = element FILEVERS { attlist.FILEVERS, text }
attlist.FILEVERS &= empty
XLAT = element XLAT { attlist.XLAT, text }
attlist.XLAT &= empty
# language info
SUBLANG = element SUBLANG { attlist.SUBLANG, TLPATTERN, MONTHS, DOW }
attlist.SUBLANG &= attribute subcode { text }
TLPATTERN = element TLPATTERN { attlist.TLPATTERN, Line }
attlist.TLPATTERN &= empty
MONTHS = element MONTHS { attlist.MONTHS, empty }
attlist.MONTHS &=
  attribute jan { text },
  attribute feb { text },
  attribute mar { text },
  attribute apr { text },
  attribute may { text },
  attribute jun { text },
  attribute jul { text },
  attribute aug { text },
  attribute sep { text },
  attribute oct { text },
  attribute nov { text },
  attribute dec { text }
DOW = element DOW { attlist.DOW, empty }
attlist.DOW &=
  attribute sun { text },
  attribute mon { text },
  attribute tue { text },
  attribute wed { text },
  attribute thu { text },
  attribute fri { text },
  attribute sat { text }
# Non-watchwords info (calendar etc.)
YEAR = element YEAR { attlist.YEAR, TL, S, IL?, L+, SL }
attlist.YEAR &= attribute y { text }
MONTH = element MONTH { attlist.MONTH, TL, S, IL?, L+, SL }
attlist.MONTH &= attribute m { text }
WEEK = element WEEK { attlist.WEEK, S, IL?, L+, SL }
attlist.WEEK &=
  attribute d { text },
  attribute m { text },
  attribute ord { text }?
DAY = element DAY { attlist.DAY, (S, IL?, L+, SL, SR?, CR?, C?)? }
attlist.DAY &=
  attribute d { text },
  attribute m { text },
  [ a:defaultValue = "important" ]
  attribute type { "sunday" | "holiday" | "important" | "week" }?,
  attribute ord { text }?,
  attribute label { text }?,
  attribute name { text },
  attribute meaning { text }?,
  attribute src { text }?
# Structure for one watch word (one day)
LOSUNG =
  element LOSUNG { attlist.LOSUNG, TL, OT, NT, TT?, SR?, CR?, C* }
attlist.LOSUNG &=
  attribute d { text },
  attribute m { text }
OT = element OT { attlist.OT, S, IL?, L+, SL }
attlist.OT &= empty
NT = element NT { attlist.NT, S, IL?, L+, SL }
attlist.NT &= empty
TT = element TT { attlist.TT, L+, SL }
attlist.TT &= empty
S = element S { attlist.S, empty }
attlist.S &=
  attribute b { Books },
  attribute kni { text }?,
  attribute ch { xsd:integer }?,
  attribute v { xsd:integer },
  attribute r2 { text }?,
  attribute ch2 { xsd:integer }?,
  attribute v2 { xsd:integer }?,
  attribute r3 { text }?,
  attribute ch3 { xsd:integer }?,
  attribute v3 { xsd:integer }?,
  attribute r4 { text }?,
  attribute ch4 { xsd:integer }?,
  attribute v4 { xsd:integer }?,
  attribute n { text }?,
  attribute tr { text }?
TL = element TL { attlist.TL, Line }
attlist.TL &= empty
IL = element IL { attlist.IL, Line }
attlist.IL &= empty
SL = element SL { attlist.SL, Line }
attlist.SL &= empty
SR = element SR { attlist.SR, S*, SL }
attlist.SR &= empty
CR = element CR { attlist.CR, S?, SL }
attlist.CR &= empty
C = element C { attlist.C, L+ }
attlist.C &= empty
L = element L { attlist.L, Line }
attlist.L &= empty
X = element X { attlist.X, text }
attlist.X &= empty
EM = element EM { attlist.EM, text }
attlist.EM &= empty
start = LOSFILE