Comments on Infoset 2001 02 02

This is independent feedback.

Section 2.1 Document

The document does not have a [charset].  External entity items do. 
Since the [charset] may appear in either place, it ought to be
representable in either place.

Section 2.3 Attribute

Complete inconsistency.

The prolog to the numbered list states that attributes defaulted from
the DTD are not a part of the infoset.  Item 5 in the list provides a
property, [specified], which is therefore always true, since defaulted
attributes do not appear in the infoset.  Either remove the restriction
in the prolog, or remove item 5.

Attribute types are defined solely with regard to the DTD schema type. 
The infoset will therefore need to be revisited when additional schema
types come into wider use, or a standard mechanism for extending the
type mechanism should be defined.

The "Note" in the prolog seems to be weaseling.  Defining the infoset
will require that hard decisions be made, and this is one.  If entity
information is available elsewhere in the infoset, it must be made
available in the attributes.  If it is not available in attributes,
then the infoset must establish that entity boundaries are not
significant anywhere else.  Following along with the inconsistency in
DOM1 is not an acceptable option.

Section 2.8 Doctype Declaration

This appears to be a case of avoiding the hard decisions.  The
information item here is wholly inadequate for any practical purpose.

The Document item has been given ownership of entities and notations. 
Why?  In order to support documents based on a schema type other than
DTD?  But it already ties itself to DTD in the definition of attribute
types; it will have to be revised anyway when additional schema types
become canonical, and then those schema types may also act as
containers for entity or notation information items.

Inclusion of comments, in particular (but PIs as well) without their
context is completely nonsensical.  Comments are always associated with
a thing that they are commenting on (with few exceptions); if they are
to be reported at all, they *must* be reported in context.  Nor is it
clear what purpose is served by reporting processing instructions for
the DTD in the context of the document.

The Doctype Declaration item should either be minimal (system id,
public id ... but parent is useless, given that it can only be one
thing), or complete.  If the infoset group cannot make the decision as
to what belongs in the infoset for a DTD, then it should provide
minimal information.  If more information is to be provided, then it
must be structured and meaningful; handing off some children to
document, ignoring others, and reporting the remainder is folly (the
requirement for reporting comments and PIs in document order, without
their context, looks like the kind of decision a committee makes at
four in the morning after sixteen hours of inconclusive wrangling ...
that is, a *bad* decision).

I see that others have already commented on the confusion surrounding
namespace declarations, membership in a namespace, and namespaces in
scope.  I second the calls for clarification.

Sorry for the harshness.  I have only just gotten around to reading the
document (largely due to comments on xml-dev).  My overall summary
judgment is that this document should not be in last call.  It is
internally inconsistent; establishing an inconsistent infoset is going
to be a problem.  Since existing infosets informally defined by other
WGs and recommendations are inconsistent (some internally, but notably
between recommendations), there is going to be some pain, and some
required revision.  That, I think, is unavoidable; formalizing an
inconsistency will not lead to any good result.

Amy!
-- 
Amelia A. Lewis          alicorn@mindspring.com          amyzing@talsever.com
Yankees are compelled by some mysterious force to imitate Southern accents
and they're so damn dumb they don't know the difference beween a Tennessee
drawl and a Charleston clip.
					-- Rita Mae Brown, "Rubyfruit Jungle"

Received on Sunday, 4 March 2001 22:35:46 UTC