
The `trang` in P5/Utilities/lib/trang.jar is version 20030619. The `trang` I use on my desktop is version 20131210. The former incorrectly converts [1] into [2]; the latter correctly converts it into [3]. (Notice that [2] has "*?", whereas [3] puts in a layer of parens, so you correctly get "*)?", which is silly but at least valid.) Now, I realize that [1] has problems (Why is there an <optional> child of <zeroOrMore>? Why is there a <choice> of only one value?), and we may want to address those, too. But in the meantime, is there any reason not to switch our trang to a newer version? [1], snippet of RNG ---- ------- -- --- <attribute name="otherLangs"> <a:documentation>(other languages) one or more codes identifying any other languages used in the bibliographic work.</a:documentation> <list> <zeroOrMore> <optional> <choice> <data type="language"/> <choice> <value/> <a:documentation/> </choice> </choice> </optional> </zeroOrMore> </list> </attribute> [2], RNG converted to RNC by P5/Utilities/lib/trang.jar (whitespace tweaked) ---- --- --------- -- --- -- -------------------------- ----------- -------- ## (other languages) one or more codes identifying any other languages used in the bibliographic work. attribute otherLangs { list { ( xsd:language | (## "") )?* } } [3], RNG converted to RNG by `trang` on my desktop (whitespace tweaked) ---- --- --------- -- --- -- ------- -- -- ------- ----------- -------- ## (other languages) one or more codes identifying any other languages used in the bibliographic work. attribute otherLangs { list { ( ( xsd:language | ( (## "") )? )* } }
participants (1)
-
Syd Bauman