[
Lists Home |
Date Index |
Thread Index
]
>___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
|