> > I don't think the proposal addressed this issue.
> >
> > Your example seems to be mixing two different issues. Consider just:
> >
> > A.rng
> > <grammar>
> > <include href="B.rng">
> > <define name="foo"> ... </define>
> > </include>
> > </grammar>
> >
> > B.rng
> > <grammar/>
> >
> > If the user has done this, then they have probably made a mistake. On
the
> > other hand the semantics are clear. We can either make this an error or
> > suggest that implementations give a warning. Please open an issue on
this
> > one.
>
> The following example might be more complex:
>
> A.rng:
> <grammar>
> <include href="B.rng"/>
> <include href="C.rng">
> <define name="foo"> .... </define>
> </include>
> </grammar>
>
> B.rng:
> <grammar>
> <define name="foo"> ... </define>
> </grammar>
>
> C.rng:
> <grammar/>
I don't follow you here.
The <define> inside the include only replaces the definitions in C.rng, not
the definitions in B.rng, so your example is equivalent to:
<grammar>
<include href="B.rng"/>
<define name="foo">...</define>
</grammar>
which is an error since B.rng also has a definition of "foo" and neither
have a combine attribute.
James