I think XXE is wrongly not supporting an un-scoped conref in this case. 

The conref in question was in a map/topicref element. I originally tried
using a scoped href (file.ditamap#map_id/topicref_id), which XXE
successfully transcluded; but the toolkit threw an error, expecting a
non-scoped id (file.ditamap#topicref_id). So I think this is an XXE bug.



-----Original Message-----
From: Hussein Shafie [mailto:[email protected]] 
Sent: Friday, August 11, 2006 3:11 AM
To: Mark Fletcher
Cc: xmleditor-support at xmlmind.com
Subject: Re: [XXE] dita_map.css shows @href of source topicref even when
a @conref is specified

Mark Fletcher wrote:
> 
> On a related topic, it looks like conrefs to map elements should not 
> be scoped. We had an earlier discussion about this regarding a 
> topicgroup, but I think it applies to all map elements. If my topicref

> @conref looks like this:
> 
> bar.ditamap#x/y
> 
> the toolkit gives this error: 
> 
> [xslt] [DOTX010E][ERROR]: Unable to find target for 
> conref="bar.ditamap#x/y". Check the target element is available, and 
> that it is a 'xxxx' element. Check to make sure the target of conref 
> is correct.
> 
> If I change my @conref to:
> 
> bar.ditamap#y
> 
> the process runs without a problem. However, XXE complains that it 
> can't transclude the @conref in this form.

It is important to be very precise about what you really want to
transclude:



* If file "MyFile.dita" contains a *single* topic having "MyTopic" as
its @id, this topic can be referred to as:

[a] MyFile.dita
[b] *OR* MyFile.dita#MyTopic

--> XXE fully supports both paths.

--> As of v3.4, the conref facility of XXE will use [a] rather than [b]
because the DITA OT seems to prefer [a]. (Previously v3.3 always used
[b].)



* If file "MyFile.dita" contains a single topic having "MyTopic" as its
@id, and if this topic contains a paragraph p having "MyParagraph" as
its @id, the *only* way to refer to this paragraph is:

MyFile.dita#MyTopic/MyParagraph

"MyFile.dita#MyTopic" specifies the topic.
"MyFile.dita#MyTopic/MyParagraph" specifies the p. You *cannot* use one
for the other. If you attempt to do so, you'll get invalidity errors in
XXE and of course, the p will not be transcluded.

If XXE does not behave exactly as  described above, then you may have
found a bug.




* In principle, if you use XXE *v3.4* conref facility, you should have
no problem with the DITA OT. However, XXE *v3.3* used to create
perfectly kosher documents which the DITA OT didn't like (due to bugs or
limitations of the DITA OT, IMHO).




Reply via email to