OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Are we losing out because of grammars?



Paul Tchistopolskii wrote -
>
> 1. Let's assume that I have some schema, expressed in terms of RELAX.
> ( SQL 'core' == simple CREATE TABLE )
>
> 2. Now I want to write some 'more complex' rules / constraints a-la
Schematron
> ( SQL 'layer 2' == constraints and / or  triggers ).
>
> 3. I want to write 2 sometimes using the entities which I've defined at the
step 1.
>
> How can I do that ?
>
One thing to remember about SQL in this connection, is that the data
definition language, the query language, and the constraint language use
essentially the same lexical and syntactic structure.  Once a symbol has been
defined or created, say by "layer 1", it is persistently available to all
other 'layers'.

This makes life easier since the same parsing machinery and similar thinking
processes work at all levels.  What's not clear to me here is whether xml
itself would play that role or not.  If we had, say, a Schematron layer "on
top of" a RELAX schema, are these really similar enough to play together in
the same way as DDL and DQL in SQL (oh-oh, alphabet soup --down, boy!)?

Whichever way, access to the same symbols (elements and attributes, I suppose,
for Paul's case) is needed by all the layers.  So it seems that the core thing
that is needed is a mechanism to persist and share that level of information -
sounds like symbol tables, but there could be many ways to go about it.  With
such a mechanism, you could layer quite a few different kinds of layers if you
wanted.  Maybe someone could come up with a plug-in approach for layers.  This
approach might allow you to avoid a DOM based approach.  This could be good
because the (quasi) persistent structures would need fewer resources, and
could be built using SAX.

Hmm, YAAPI (yet another API)?

Cheers,

Tom P