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

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   Re: [xml-dev] More questions about conformance and entities

[ Lists Home | Date Index | Thread Index ]

> Jeff Rafter wrote:
>>>Bonus questions: Which wins out: "Well-formedness constraint: In DTD" 
>>>[3] or "Not Recognized" [4]
>>>[3] http://www.w3.org/TR/REC-xml/#indtd
>>>[4] http://www.w3.org/TR/REC-xml/#not-recognized
> 
> Karl Waclawek answered:
>> I have always found "Well-formedness constraint: In DTD" redundant,
>> as due to "Not Recognized", you cannot define PE references outside of the DTD.
>> So, "Not Recognized" wins, and the above entity declaration is legal.
> 
> Just to make sure everyone else is as sick of this minutia as I am I 
> thought I would take this a step further. Consider:
> 
> Doc5.xml
> ========
> <!DOCTYPE doc SYSTEM "doc5.dtd">
> <doc>&gen_foo;</doc>
> 
> Doc5.dtd
> ========
> <!ELEMENT doc (foo)>
> <!ELEMENT foo EMPTY>
> <!ENTITY % pe_foo "<foo>">
> <!ENITY gen_foo "&#37;pe_foo;</foo>">
> 
> Now, the replacement text for gen_foo after it is scanned becomes:
> 
> %pe_foo;</foo>
> 
> It is obvious that the reference to gen_foo would violate WFness. The 
> question is: is this a PE inside the DTD and inside content-- thus 
> violating "Well-formedness constraint: In DTD" while simultaneously 
> being "recognized"? : )

I don't see how. Outside the DTD, '%' is simply another character.
All this is, is and end tag without start tag.

Karl





 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS