Can XInclude Processors Rewrite IDs and References?

I am implementing XInclude processing in XSLT by generating a new single 
result document in memory. This means that I'm not literally creating a 
new info set.

In my use cases it is essentially a certainty that IDs will be 
duplicated among the member documents included (because otherwise it 
would be necessary to make IDs unique across all possible documents, 
which is neither practical nor, in the abstract, necessary).

Therefore I must rewrite IDs and their references.

I want to confirm that my reading of the 10 November Working Draft 
allows this processing. In particular, I intepret the 3rd bullet under 
4.5.3:

   o The result infoset has ID clashes - that is, more than one 
attribute with attribute type ID with the same normalized value. In this 
case, attributes with attribute type IDREF or IDREFS with the same 
normalized value might have different values for their references 
properties.

as indicating that the effective target of references to duplicated IDs 
will be to the original elements (as included), that is, that "might 
have different values for their reference properties" is the infoset 
equivalent of ID rewriting.

Is my interpretation correct?

Thanks,

Eliot
-- 
W. Eliot Kimber
Professional Services
Innodata Isogen
9030 Research Blvd, #410
Austin, TX 78758
(512) 372-8122

eliot@innodata-isogen.com
www.innodata-isogen.com

Received on Sunday, 14 March 2004 17:36:34 UTC