Verifies that keys defined on topicrefs that also specify @keyscope are
in the specified scope and not the parent scope.
<topicref id="tr-scope-01"
keyscope="scope-01"
keys="topic-01"
href="topics/topic-01.dita"/>
<topicref id="tr-scope-02"
keyscope="scope-02"
keys="topic-01"
href="topics/topic-02.dita"
/><xref keyref="scope-01.topic-01"/>The topic topic-01.dita has the equivalent qualified key reference to topic-02.dita as used from topicref "tr-scope-02".
The xref to key "scope-01.topic-01" should be resolved to topic-01.dita as used by topicref "tr-scope-01".
A key scope includes the following components:
- The scope-defining element
- The elements that are contained by the scope-defining element, minus the elements that are contained by child key scopes
- The elements that are referenced by the scope-defining element or its descendants, minus the elements that are contained by child key scopes
(Italics added)
Tests run 30 March 2016 for oXygen 18, XMetal 11.
| Processor | Test Result | Notes |
|---|---|---|
| Open Toolkit 2.2.2, XHTML transform | Correct result | Incorrectly reports the key "topic-01" in scope "scope-02" as a duplicate. |
| Open Toolkit 2.2.2, PDF transform | Correct result | Incorrectly reports the key "topic-01" in scope "scope-02" as a duplicate. |
| oXygenXML 18 beta | Reports map as valid, resolves links correctly. When re-used topic is opened in the context of a specific scope the xref's resolved text and associated target reflects the current scope, even if topic was already open in the editor. | |
| oXygenXML 17.1 | Reports map as valid, resolves links correctly. | |
| XMetaL 11 | Correct result. Cross references are resolved to the correct scope-specific target. Scopes are correctly reflected in the key space manager. | Note that there is a known bug in the initial release of XMetal 11 that prevents xref text from being resolved in the editor. Cannot verify that xref text reflection is correct but assume it will be. |
| XMetaL 10 | Appears to resolve the key references in the editor but without regard to the scope context. In the re-used topic, it reflects the result of resolving the key reference in the scope of scope-01 | This seems to be a side effect of XMetaL using PIs to put the resolved link text in the XML source, rather than resolving the reference dynamically at presentation time. |