OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   RE: Query about doc well-formedness

[ Lists Home | Date Index | Thread Index ]
  • From: Richard Tobin <richard@cogsci.ed.ac.uk>
  • To: Peter Jones <peterj@wrox.com>, "'xml-dev@ic.ac.uk'" <xml-dev@ic.ac.uk>
  • Date: Tue, 25 Aug 1998 15:26:03 +0100 (BST)

> I have a well-formed document thus:
> <root>
> 	<text> Blah blah blah &ent1; </text>
> 	&ent2;
> </root>

If this is the whole document - there is no DTD - then it is *not*
well-formed, by the WFC on production 68.

Here is my understanding of the issue.  Essentially, all entities must
be declared.  But as a concession to processors that do not process
the external subset or external parameter entities, they do not have
to detect undeclared entities in documents where they can't tell
(because the declaration might be in the part they don't process).

Since the standard doesn't want to say "this is a well-formedness
constraint but you don't have to detect it", it instead makes the
lack of a declaration a validity error.

If there is no external subset and no external PEs, or if the document
has standalone="yes", then even a non-validating processor can be sure
that it really is undeclared and must report the WF error.

> Q1) will a non-validating parser flag an error when it encounters either
> of the entity references above?

Yes; the document is not well-formed.

If the document had this DTD:

  <!DOCTYPE root SYSTEM "foo">

and *didn't* have

  <?xml version="1.0" standalone="yes"?>

and "foo" did not declare the entities, then the error would become a
validity error and a non-validating processor would not have to report
it (though it can if it chooses to process the external susbset).

> (ii) in order to avoid the referencing problem I put <!ENTITY....>
> declarations in the doc above to provide the 'answers' to the entity
> references.
> Q2) Will a non-validating parser know how to deal with such <!ENTITY...>
> declarations and thus not flag errors on the entity references at parse
> time?

Provided you put them in the internal subset, even a non-validating
processor is required to process them.

-- Richard

xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/
To (un)subscribe, mailto:majordomo@ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo@ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa@ic.ac.uk)





 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS