-
Notifications
You must be signed in to change notification settings - Fork 88
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
abstract model violation — NOT! #2497
Comments
@sydb While I am usually pleased to question the abstract model, in this case I find myself perplexed on two points:
The abstract model itself may be the problem. |
I was also very puzzled by this use of lg type=poem.... Why isnt it a div or indeed a text? |
@ebeshero — In my current state of mind I am not sure I am qualified to answer question (1), if I ever am. But I suggest it is entirely irrelevant: the TEI Guidelines explicitly permit As for (2), while I think there are definitely problems with the abstract model, I do not think this is one of them. I think the abstract model says it is perfectly OK to have @lb42 — Yes, I think the model should know that, and (fortunately) in the cases of Note that <p>This is a
<app>
<rdg><div><ab>bad</ab></div></rdg>
<rdg><div><p>terrible</p></div></rdg>
</app>
idea.
</p> |
[The following problem noticed by WWP encoder extraordinaire Grace O’Mara.]
The following (it seems to me) is a perfectly reasonable encoding:
But the "abstractModel-structure-p-in-l-or-lg" constraint fires on each of those
<p>
elements complaining that “Lines may not contain higher-level structural elements”. That happens because those<p>
elements are descendants of<lg>
, but are not a descendant of<floatingText>
, a child of<figure>
, nor a child of<note>
.[1]Possible solutions, in my preferred order:
<p>
s that are a descendant of<l>
, not of<lg>
.<p>
is also not a descendant of<epigraph>
.<p>
is also not a child of<quote>
.<epigraph>
be inside a<floatingText>
.I like (1) the best, because I am not sure why we are testing
<lg>
here. While I have a gnawing suspicion that it is at least partly my fault that we are testing<lg>
, I am having trouble figuring out what element a paragraph could occur in which should be an abstract model violation when it occurs in an<lg>
but not outside. That is, I am (once again) complaining thatis an abstract model violation, but
is not. Makes no sense to me.[2] Further, if we use solution (1), because we are soon to be required to provide a
@context
,[3] we may as well usewhich is a whole lot simpler than what we have now.
Notes
[1] The test, which is fired for each and every
<p>
, is(ancestor::tei:l or ancestor::tei:lg) and not( ancestor::tei:floatingText |parent::tei:figure |parent::tei:note )
; the error message is delivered if the test is true.[2] Well, not exactly; my usual complaint is that they should both be abstract model violations.
[3] I know we (TEI Technical Council) have pretty much decided to require an
<sch:rule context="…">
in every<constraintSpec scheme="schematron">
, but I could not find a ticket for that.The text was updated successfully, but these errors were encountered: