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

 


Help: OASIS Mailing Lists Help | MarkMail Help

dita message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Use case for key scopes within subjectScheme maps




OK, I just ran into a use case for using key scopes in a subjectScheme map to define controlled values. The DITA 1.3 spec subjectScheme map, to be precise.

I added a <subjectdef> for values used on @otherprops, and used a <enumerationdef>to control the permitted values for @otherprops.

oXygen immediately told me that NO values were permitted for @otherprops. After scratching my head -- Why did oXygen think that I had an <enumerationdef> element with an empty <attributedef>? -- I went looking for key duplication, and it turned out that I had a collision between two keys named "example", one for @outputclass and now another for @otherprops.

I could see that the following (slimmed down) map would be useful, if one used the attribute value of "example" for both @outputclass and @otherprops. (For the point of view of simplifying the authoring experience, I like to keep attribute values as simple and consistent as possible.)

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE subjectScheme PUBLIC "-//OASIS//DTD DITA Subject Scheme Map//EN" "subjectScheme.dtd">
<subjectScheme>

<subjectdef keys="outputclass-values">
        <subjectdef keys="cover"/>
        <subjectdef keys="example"/>
    </subjectdef>
   
    <subjectdef keys="otherprops-values" keyscope="otherprops">
        <subjectdef keys="example"/>
    </subjectdef>

 <enumerationdef>
        <attributedef name="outputclass"/>
        <subjectdef keyref="outputclass-values"/>
    </enumerationdef>
   
    <enumerationdef>
        <attributedef name="otherprops"/>
        <subjectdef keyref="otherprops.otherprops-values"/>
    </enumerationdef>

</subjectScheme>



--
Best,
Kris

Kristen James Eberlein
Chair, OASIS DITA Technical Committee
Principal consultant, Eberlein Consulting
www.eberleinconsulting.com
+1 919 682-2290; kriseberlein (skype)





[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]