-
Notifications
You must be signed in to change notification settings - Fork 2
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
Simplify grammar for implementing it in lutaml-model #56
Comments
We're going to get rid of FormattedString anyway, since we're using Basicdoc for all formatted text. |
And we will get rid of variant. So
becomes
|
choice/group: ... ugh, unhappy about simplifying these, but:
becomes
and
becomes
|
|
Also getting rid of Name Variants:
This is recursive and complicates things unnecessarily, given we have multiple name strings. This hasn't been used anyway in Relaton. We will just have optional type on names. |
Changing bplace from choice/group
to follow other elements in having an optional formattedplace element, which concatenates all the elements into a single element:
cf. formattedAddress This is a breaking change; so |
Also flattening the choice/group in keyword,
to
Another breaking change: if the keyword is just text ( |
There is an instance of recursion in the grammar that I have introduced somewhat recently, and that I really do not want to get rid of:
That is, model organisation subdivisions as full organisations themselves; this proved necessary for JIS, as subdivisions had internal structure and could not be restricted to just name strings. |
I'm flattening
is supposedly beyond the ability of Shale to deal with, as two levels of indirection. That Shale apparently cannot deal with
is reprehensible, and I deserve an apology for it, @ronaldtse . I'm sure I won't get one. |
I've simplified the Relaton grammar as far as I'm prepared to. Over to you, @andrew2net |
In preparation, getting rid of |
This kind of recursion can always be modeled through relationships, ie. a flat structure for organizations then link them together using attributes or elements. |
Org 1, Org 2, Org 3, Org 1 is child of Org 2? ... Ugly. I'll wait on what @andrew2net has to say. |
Make PureTextElement recursive, so that its instances of em, strong do not invoke instances outside of PureTextElement; and use PureTextElement more in Relaton grammar, where more full TextElement support is unneeded. @andrew2net will treat the full prose elements like Abstract, which do need full TextElement support, as Nokogiri XML rather than try to deal with them in Shale. |
In biblio.rnc, TextElement* is now restricted to abstract and formattedref. Everywhere else, including titles, is constrained to PureTextElement* |
The text was updated successfully, but these errors were encountered: