[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]
Subject: Re: Issue: references to an external grammar
As things are at the moment, an implementation can avoid rereading by noticing when it gets a) an externalRef to a grammar, or b) a grammar whose only child is an include whose only child is a start without a name attribute, or c) a grammar element containing an empty include element and a start without a name attribute It keeps a table mapping URIs to such grammars. When it encounters a case of type (b) or (c), it simply evaluates the content of the <start> in the context of the saved grammar. I'm not clear what you perceive the problem to be with the current state of things. The above optimization is not hard to implement; the only problem is that an implementor may not know about it, or may not think it worth implementing. Is it that you think <grammar> <include href="..."> <start> <ref name="..."/> </start> </include> </grammar> is too verbose? One possibility is to introduce a construct: <withGrammar href="u"> p </withGrammar> equivalent to <grammar><include href="u"><start>p</start></include></grammar> or <grammar><include href="u"/><start>p</start></grammar> depending on whether u already has a <start> or not. Then you can say, eg <withGrammar name="x.rng"> <choice> <ref name="foo"/> <ref name="bar"/> </choice> </withGrammar> --On 07 July 2001 10:56 +0900 Murata Makoto <mura034@attglobal.net> wrote: > James Clark wrote: > >> Is the issue here simply whether we want a shorthand for > ... >> ? > > I do not have any good ideas. But here are some questions. > > - How do we avoid rereading? > > - Does it make sense to introduce two constructs? One is for including > external patterns without collisions of named patterns, and the other > is for referencing named patterns in already-included patterns. > > Cheers, > > Makoto > > ------------------------------------------------------------------ > To unsubscribe from this elist send a message with the single word > "unsubscribe" in the body to: relax-ng-request@lists.oasis-open.org > >
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]
Powered by eList eXpress LLC