Dynamic Information Model: RELAX NG enhancement?

Post here questions and problems related to editing and publishing DITA content.
Frank Ralf
Posts: 457
Joined: Thu Jan 23, 2014 2:29 pm
Location: Hamburg
Contact:

Dynamic Information Model: RELAX NG enhancement?

Post by Frank Ralf »

Hi,

I'm having a closer look at Frank Miller's and George Bina's Dynamic Information Model which allows the automatic creation of Schematron rules from DITA topics. This is a very cool concept and implementation!

- http://www.infomanagementcenter.com/DIT ... htm#Miller
- https://github.com/oxygenxml/dim

I'm wondering whether it would be feasible to extend this model from creating Schematron rules for validating business rules to creating RELAX NG schemas for validating document structure, as suggested by the following resources:

- http://etutorials.org/XML/xml+hacks/Cha ... ess+Rules/
- http://www.xml.com/lpt/a/2004/02/11/relaxtron.html
- http://books.xmlschemata.org/relaxng/relax-APP-A.html

If you could give me some pointers where to start I will give this a try ;-)

Kind regards,
Frank
Frank Ralf
parson AG
www.parson-europe.com
george
Site Admin
Posts: 2095
Joined: Thu Jan 09, 2003 2:58 pm

Re: Dynamic Information Model: RELAX NG enhancement?

Post by george »

Hi Frank,

The pointers you included refer to the possibility of embedding Schematron rules as annotations in relax NG - the same is possible in XML Schema. oXygen supports embedded Schematron in Relax NG XML and XML Schema, in case you want to use that.

Now, I do not understand how that relates to the DIM project. In the DIM project we encode a Schematron fragment, specifically an instantiation of an abstract pattern, as a data list element and we use a stylesheet to generate the Schemaron rules from the styleguide. In a way, you can think of this case as embedded Schematron within a DITA style guide, only that the Schematron is not embedded directly as Schematron but encoded as data list (more specifically dl elements within a section having audience="rules").

For more info about some of the ideas implemented in DIM please see my presentation from XML Prague:
http://www.oxygenxml.com/events/2015/oX ... Architects

One of the future goals of the DIM project is to support also generating DITA constraints - that means pointing to a standard DITA Relax NG schema and providing information on what elements you want removed and automatically generating the constrained schema that removes those elements.

Hope this helps,
George
George Cristian Bina
Frank Ralf
Posts: 457
Joined: Thu Jan 23, 2014 2:29 pm
Location: Hamburg
Contact:

Re: Dynamic Information Model: RELAX NG enhancement?

Post by Frank Ralf »

Hi George,

Thanks for the information. I will have a look at your presentation. I suppose DITA constraints is what I meant with creating DITA content types ;-)

Kind regards,
Frank
Frank Ralf
parson AG
www.parson-europe.com
Frank Ralf
Posts: 457
Joined: Thu Jan 23, 2014 2:29 pm
Location: Hamburg
Contact:

Re: Dynamic Information Model: RELAX NG enhancement?

Post by Frank Ralf »

JFTR, Magda Caloian has created an oXygen framework for building a DITA project from a content outline. Authors will insert the topic titles, type and level, then the project structure is generated, including project file, ditamap, topics: https://github.com/mgcalo/model2dita
Frank Ralf
parson AG
www.parson-europe.com
Post Reply