Hello Ian,

Thank you very much for the pointer.
I have not seen the ODF Explorer before and it seems very worth to take a
deeper look into it.
During installation I have seen that you are using as well the
MultiSchemaValidator and I like the idea of using GraphViz together with a
browser front-end.

As I said, definetly worth to take a closer look into it!
Thanks again for the pointer, Ian!

Cheers,
Svante
ᐧ

2017-01-22 13:47 GMT+01:00 Ian C <[email protected]>:

> Hi Svante,
>
> have you seen the ODF Explorer tool I created.
>
> Available from https://github.com/hammyau/ODFExplorer
>
> and http://hammyau.github.io/ODFExplorer/ tries to show some more how to
> use it.
>
> The tool there is wrapped in a nodejs web server. But doesn't really need
> to be, the underlying Java is standalone.
>
> Hope that helps. And if not please contact me directly I have been playing
> around looking into ODF documents for a while now.
>
> And would love to get some feedback and extend the thing for a real user.
>
> Cheers,
>
> Ian
>
>
>
> On Sun, Jan 22, 2017 at 12:34 AM, Svante Schubert <
> [email protected]
> > wrote:
>
> > Hi guys,
> >
> > I need some feed-back of yours!
> > I would like to analyse the ODF XML schema a little more to create test
> > documents, which are valid variations of a certain ODF feature.
> >
> > Think of a paragraph. It is represented by the <text:p> element.
> > If ODF applications would like to have 'sufficient' test documents of the
> > paragraph feature. How would they proceed?
> > Straight forward someone would generate a test document with none, one or
> > some random number of generated paragraphs on root level.
> >
> > What else can we think of? Paragraphs being part of header & footer come
> to
> > my mind.
> > Perhaps a paragraph within a cell? To generalize these cases - within
> > different ODF feature.
> >
> > But how do we know that we have tests for all type of variations?
> > The only possible way seems to me to take a look into the ODF schema.
> >
> > If you open the ODF 1.2 XML RelaxNG schema
> > <http://docs.oasis-open.org/office/v1.2/os/OpenDocument-
> v1.2-os-schema.rng>
> > in
> > an editor or viewer you may find one reference to the <text:p> element:
> > <define name="text-p">
> > <element name="text:p">
> > <ref name="paragraph-attrs"/>
> > <zeroOrMore>
> > <ref name="paragraph-content-or-hyperlink"/>
> > </zeroOrMore>
> > </element>
> > </define>
> > Which is used 19 times throughout the schema.
> > The question is: Are there 19 distinct feature scenarios to be tested?
> >
> > When you try to take a look at some of those occurences, you quickly
> > realize that it is very cumbersome to jump back in forth within the text
> > file.
> > For this reason the Toolkit is generating an HTML file in one of his
> tests.
> >
> > After 'mvn install' on all sources you may find the follwing file
> > odftoolkit20170121/generator/schema2template/target/OdfReference.html
> > I have shared for ease of use at OdfReference.html via public dropbox
> > (1.8MB) <https://dl.dropboxusercontent.com/u/49473263/OdfReference.html
> >.
> >
> > As you see that in the HTML the RelaxNG sequence and choice is yet
> missing.
> > The generator is not evaluating those, yet.
> >
> > If you are curious how this works:
> > The RelaxNG is being parse by using Sun Microsystems MultiSchemaValidator
> > (MSV). A tool that is able to load DTD, W3C schema and RelaxNG into a
> > common internal model and use any of them for XML validation.
> > Our generator project is using MSV to create an internal model of the ODF
> > 1.2 RelaxNG schema and create the typed source classes for the ODFDOM
> > project by filling data into templates from the Apache Velocity project.
> > Basically text files with Java source code, which are accessing data from
> > environment variabels like Java maps in our case the MSV model.
> >
> > Interesting in this context is the dump of the internal model that can be
> > found at
> > odftoolkit20170121/generator/schema2template/target/odf12-msvtree.dump
> > Again I have shared it odf12-msvtree.dump via public dropbox (0.6MB)
> > <https://dl.dropboxusercontent.com/u/49473263/odf12-msvtree.dump>.
> >
> > So I would like to have some feed-back of you guys?
> > What are the possible ways to proceed on this task?
> > Is it feasable to load the model of the RelaxNG into a GraphDB to do some
> > analysing. For instance, can a certain element be nested?
> > Also I would add metadata to elements which belong to a user feature.
> Like
> > all elements that belong to a table, or elements that are basically just
> > boilerplate, such as <office:body>.
> >
> > What you think? Any experiences in this area by anyone? Any thoughts are
> > welcome!
> >
> > All the best,
> > Svante
> > ᐧ
> >
>
>
>
> --
> Cheers,
>
> Ian C
>

Reply via email to