[Home] [By Thread] [By Date] [Recent Entries]

  • From: David Carlisle <davidc@n...>
  • To: =?KOI8-R?Q?=CF=CC=D8=C7=C1_=CB=D2=D9=D6=C1=CE=CF=D7=D3=CB=C1=D1?= <olga.kryzhanovska@g...>
  • Date: Fri, 07 Dec 2012 20:10:15 +0000

On 07/12/2012 18:24, ÏÌØÇÁ ËÒÙÖÁÎÏ×ÓËÁÑ wrote:
> David, can you give me such an example? Also, does libxml2 implement
> such checks?

yes and yes, I gave an example earlier but

<!DOCTYPE x [
<!ENTITY foo "<x>aaa">
]>
<x>
<x>foo</x>
</x>

is well formed. emacs nxml-mode asys "Valid" as I wrote it
rxp, xmllint (libxml2) and java xerces similarly give no error.
Change it to use the entity:

<!DOCTYPE x [
<!ENTITY foo "<x>aaa">
]>
<x>
&foo;</x>
</x>

nxml-mode, rxp, xmllint and xerces all flag an error

nxml-mode:
Extra end-tag

rxp:
Error: Element ends in different entity from that in which it starts
  in unnamed entity at line 5 char 9 of file:///c:/tmp/bad2.xml

xmllint:
Entity: line 1: parser error : Premature end of data in tag x line 1
<x>aaa
       ^
bad2.xml:5: parser error : Entity 'foo' failed to parse
&foo;</x>
      ^
bad2.xml:6: parser error : Extra content at the end of the document
</x>
^

xerces
XML document structures must start and end within
   the same entity.



David




[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]


Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member