Another update on the purification of TEI content models... this seems to have worked fine, with just a couple of manual tweaks needed, EXCEPT THAT we have a problem with DTD generation which may take a while to sort out. At the moment the content models are spattered liberally with rng:group elements for no other reason than to generate parentheses in the DTD content models. Redundant rng:group elements are not carried forward during purification (if they were, downstream ISO schematron validation would fail) so DTDs are appearing without enough parentheses in them. One solution to the problem, as I so far understand it, is that the code which generates parameter entities when processing the class hierarchy needs to be a bit smarter. For example, the parameter entity corresponding with model.common should have the value "(%model.divPart; |%model.inter;)" rather than "%model.divPart; |%model.inter;" But this is definitely a four pipe problem. Any DTD magicians out there are welcome to chip in. I haven't checked in the specs with "purified" content models yet though. Some Council members may wish to take this opportunity to rehearse the arguments for dropping (or not) DTD support ... On 09/08/15 22:06, Lou Burnard wrote:
I hope to automate it all (cf the Scripts directory I just added to P5-Pure) ... and then spend ages picking up the pieces, as per usual. So far today I have identified two show stoppers
a) the content model of macro.anyXML
b) in impure ODDs DTD generation required massive numbers of redundant rng:group elements. I am hoping that these are no longer required in pure odd, since turning them all blindly into <sequence> causes various things to break.
If someone else would like to ponder what to do about (a) while I attack (b) I'd be grateful!
L
On 08/08/15 14:27, Syd Bauman wrote:
I think moving on to phase 2 now (in the P5-Pure branch, of course) is a reasonable plan. I would tag the existing P5-Pure branch before delving in to such a huge task, though.
How much of phase 2 do you plan to automate, and how much to do by hand? I'd be happy to chip in on either approach.
This means, of course, that this branch cannot be merged with the trunk until there has been a new stylesheet release and we have moved over to using it on our jinxes. Which is a pain, but not too great a one. In the circs, I think I might proceed to phase 2 of operation purity: namely, switching the content models in P5 to use pure ODD. It ought to All Just Work, but...