[relaxng-user] RELAX NG and system entities

Matthew Burgess matthew at linuxfromscratch.org
Sun Nov 21 19:27:16 ICT 2004


Sebastian Rahtz wrote:
> Matthew Burgess wrote:
> 
>>
>> From what I can gather, being a complete newbie to RELAX NG, system 
>> entities aren't usable with RELAX NG (and schema languages in general).
>>
> The two are unrelated, really. Entity expansion takes place at the XML 
> parsing stage, before validation by schema
> is applied. Any XML processor has to read a DTD subset, grok the 
> entities declared there, and expand instances later.
> You can't _declare_ entities in a schema, as you used to be able to with 
> external DTDs, thats the difference.
> 
> Your example will carry on working just fine, if you just remove
>   SYSTEM "myDoctype.dtd"
> and use a RelaxNG validator or other XML tool. Well, maybe some tools
> will protest, but the ones I use daily (jing, libxml2, rnv) do
> what I expect.

Many thanks for everyones comments on this.  The above suggestion was 
the bit I was missing, and indeed everything is working fine now.  RELAX 
NG and entities would appear to co-exist quite happily here :-)

Thanks again,

Matt.



More information about the relaxng-user mailing list