RE: An invalid example in SVG 1.0 Spec. - Chapter 17.1

Simon, thanks for pointing out that I overstated restrictions on DTDs
with respect to names beginning with "xml" and use of colon. I stand
(well, sit) corrected.

However, it is being suggested that the DTD (which is inherently not
namespace aware) should contain namespace declarations, as if they were
attributes. But namespace declarations are not attributes. Because SVG
1.0 states that it conforms to Namespaces in XML, why should it be
necessary to notate which elements may or must contain with namespace
declarations in order to be valid?

Conformance with Namespaces in XML seems to mean that one can add
whatever namespace declarations one fancies to any element at all
without effecting the validity of the document (so long as they don't
interfere with other namespace declarations). Will the DTD for SVG be
augmented to indicate all the namespace declarations that might appear
on all elements? Why would this be necessary? What would such a DTD
declaration look like? Can you provide an example?

Let's look forward to that bright day when DTDs are deprecated, and we
don't have to think so hard how to make them do things they never were
never intended to.

Cheers,
Stuart

-----Original Message-----
From: Simon St.Laurent [mailto:simonstl@simonstl.com] 
Sent: Wednesday, March 13, 2002 18:28
To: Stuart Celarier
Cc: www-svg@w3.org
Subject: RE: An invalid example in SVG 1.0 Spec. - Chapter 17.1

On Wed, 2002-03-13 at 13:26, Stuart Celarier wrote:
> No DTD can ever specify xmlns:link as the
> name of an attribute (a name cannot begin with "xml" and cannot
contain
> a colon).

Neither of those statements is true.  DTDs can specify attributes whose
names begin with xml (and it is in fact required to validate documents
containing xml:space and xml:lang attributes).  The creation of such
names is reserved to XML specifications, but that has no impact on DTDs
including such names.
 
Similarly, XML 1.0 permits the use of colons, even multiple colons, in
names.  Namespaces in XML restricts the use of colons to single colons
in names, used only as a separator between namespace prefixes and local
names.

While DTDs may not be smart about how namespaces work, they're perfectly
capable of defining the parts namespaces use to get their work done.

As Dean noted, the issue rates an erratum.

-- 
Simon St.Laurent
Ring around the content, a pocket full of brackets
Errors, errors, all fall down!
http://simonstl.com

Received on Wednesday, 13 March 2002 22:40:02 UTC