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


>___Note that a SystemLiteral can be
>parsed without scanning for markup.___

>I wonder what the last sentence really wants to say. 

A system literal is the URI string in something like

  <!ENTITY foo SYSTEM "http://whatever/foo">

or

  <!DOCTYPE foo SYSTEM "foo.dtd">

The point is that those strings can't contain any markup.  Obviously
they can't contain elements, but in particular they can't contain
entity references, so you can't for example do

  <!ENTITY % myurl "http://whatever/foo">
  <!ENTITY foo SYSTEM "%myurl;">

And if you have something like

  <!ENTITY foo SYSTEM "my%20url">

the %20 will work perfectly well as a URI-escape for the space character,
and won't cause a syntax error as it would in an internal entity value.

Contrast the EntityValue and AttValue productions [9] and [10] in
which some characters are interpreted as markup with the system
literal production [11] in which no characters are special except the
quotes.

-- Richard

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