Re: xml-model and DTDs [was: Minutes for XML Core WG telcon of 2011 April 6]

Grosso, Paul scripsit:

> Sure, at one level, a PI is a PI and therefore cannot affect the
> validity of the document which contains it.

That's my only point.

> But an application such as an editor might peek into the file and
> find the xml-model PI and decide to act as though the document had
> a doctype declaration that referenced said DTD when it parses the
> document.  Or maybe it parses the document as XML, finds that a
> xml-model PI associates a DTD with it, and then reparses it using the
> DTD as the referenced external subset (in which case the DTD didn't
> affect the validity for the first parse, but it did for the second
> parse).

That's why I spoke of validity rather than validation.  XML validity
is a property of documents, whereas validation of XML is a much more
flexible notion, which may or may not involve determining XML validity.
In your second parse, the application validates the document against the
DTD, but that doesn't make the document valid.  Another closely related
document might turn out to be valid, but the original document has no
DOCTYPE and is invalid, period.

> I want to keep the whole question of what an application does with
> an xml-model PI out of scope of this WG Note (which is just about
> providing applications with associated schemas, not about what to do
> with them).  And saying that an xml-model PI referencing a DTD *does
> not affect* validity is starting to mandate application behavior.

Not at all.

> Given what the spec already says (see the quotes above), what other
> wording should we add that addresses questions such as:
>
> * what should it mean if the document has both a doctype declaration
> and an xml-model that points to a DTD.

It's up to the application what that means, but only the DOCTYPE
declaration affects validity.

> * are DTDs associated with a document via an xml-model PI used for
> creating or augmenting an information set from a given document?  Or,
> are such DTDs simply used for validation rather than augmentation?

The application can do either validation or augmentation or both or
neither.

-- 
A rose by any other name                            John Cowan
may smell as sweet,                                 http://www.ccil.org/~cowan
but if you called it an onion                       cowan@ccil.org
you'd get cooks very confused.          --RMS

Received on Wednesday, 13 April 2011 00:38:23 UTC