[relaxng-user] Re: examples of application of interleave?
David Tolpin
dvd at davidashen.net
Tue Sep 30 22:06:24 ICT 2003
>
> Sounds like you are trying to implement a RELAX NG processor, and if so,
> I wonder what is the point in adopting an algorithm that is known to be
> incapable of supporting full RELAX NG.
>
No, I am trying to use jing (actually, one modified for use with
rng2srng just because relaxng/impl is good for walking the graph
and is not public in the original jing) as a toolkit to parse schemas
to build LR parser on top of a markup for a language where elements
of original markup are symbols (and elements with no content or
text-only content are terminals). I am therefore trying to develop
algorithm that approximates a schema with a context-free grammar
as close as possible. I realize that a new method can be developed
to build an LR parsing algorithm for a language derived from the full
RNG but this is beyond my domain of interest now.
All markup schemas I looked at can either be trivially rewritten
without interleave or use interleave with exactly one element in
one of two branches. These cases require a much simpler implementation
than the general case.
I am now (with the examples brought) even more convinced that
interleave as a language tool is a solution looking for a problem;
it lets users define languages which are great for validation by
RNG but significantly complicate certain other operations beyond
the scope of validation.
I will be trying to find a solution, but not too hard. Loosening
the grammar just a bit will solve my problem and give me a good
tool.
David Tolpin
http://davidashen.net/
More information about the relaxng-user
mailing list