Validating IDREFS...

Tyler Baker tyler at infinet.com
Sun Aug 30 03:18:35 BST 1998


James Clark wrote:

> Tyler Baker wrote:
>
> > Does this mean that you need to have the entire document parsed before
> > you can make the check that the value of the ID matches the ID of some
> > element in the document?
>
> Yes.
>
> > If this is true, then for validating parser implementations you will
> > first need to build an in memory parse tree using a non-validating
> > parser and then validate the document by recursively traversing the
> > parse tree.  For large documents that wish to be validated, this seems
> > like a major performance and memory problem, especially in memory hungry
> > languages like Java.
>
> You need to maintain a hash table of IDs in order to enforce the ID VC
> (uniqueness of IDs).  To check matching of IDs you just add a boolean
> that says whether the ID has been defined yet.  At the end of the
> document, iterate over the hash table and give an error for each
> undefined ID.
>
> James

This I know is one idea to get around this problem and this is basically my
current implementation as well, but shouldn't a validating XML parser flag an
error if an IDREF does not have a corresponding ID when the error occurs.  In
other words, I would think that deferring errors before the content is passed to
the document would be illegal.

Basically, I just need to know if it is OK to pass errors to the application
after all of the content has already been parsed and passed to the application.

Thanx,

Tyler


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




More information about the Xml-dev mailing list