← Prev in month ← Prev in thread

Key precedence, binding of controlled values, and subjectScheme

From
Kristen James Eberlein <>
Date
2013-03-07T19:34:30+00:00
ID
Thread
Key precedence, binding of controlled values, and subjectScheme
As I work through the subjectScheme topics, I've developed the
    following questions:

    

    1) In the following scenario, what happens to the subject
      definition with a duplicate key? Is it ignored and thus the
    subject definitions that it contains are also ignored?

    

    <subjectScheme>

          <subjectdef keys="os">

            <subjectdef keys="solaris"/>

            <subjectdef keys="hpunix"/>

          </subjectdef>

           . . .

          <subjectdef keys="os">

            <subjectdef keys="linux"/>

            <subjectdef keys="mswin"/>

            <subjectdef keys="zos"/>

          </subjectdef>

    

    We essentially have this code example in the spec. I would have
    assumed that the 2nd subject definition would need to reference the
    os subject by the @keyref attribute in order to merge additional
    subjects ...

    

    2) What about the following situation? Is the 2nd binding of the
      @platform attribute ignored, or does it override the binding in
      the base scheme?

    

    Here is the contents of baseScheme.ditamap, which defines the os
    subject and binds its values to the @platform attribute:

    

    <subjectScheme>

          <subjectdef keys="os" navtitle="Operating system">

            <subjectdef keys="linux" navtitle="Linux">

              <subjectdef keys="redhat" navtitle="RedHat Linux"/>

              <subjectdef keys="suse"   navtitle="SuSE Linux"/>

            </subjectdef>

            <subjectdef keys="mswin" navtitle="Windows"/>

            <subjectdef keys="zos"   navtitle="z/OS"/>

          </subjectdef>

          <enumerationdef>

            <attributedef name="platform"/>

            <subjectdef keyref="os"/>

          </enumerationdef>

        </subjectScheme>

     

    Another subjectScheme map contains the following content:

    

    <subjectScheme>

          <schemeref href=""/>

          . . .

         <subjectdef keys="app" navtitle="Applications">

              <subjectdef keys="apacheserv" navtitle="Apache Web
        Server"/>

              <subjectdef keys="mysql"      navtitle="MySQL
        Database"/>

         </subjectdef>

      . . .

     
        <enumerationdef>

            <attributedef name="platform"/>

            <subjectdef keyref="app"/>

          </enumerationdef>

    </subjectScheme>

    

    
Best,

      Kris

      

      Kristen James Eberlein

      Principal consultant, Eberlein Consulting

      Co-chair, OASIS DITA Technical Committee

      Charter member, OASIS DITA Adoption Committee

      www.eberleinconsulting.com

      +1 919 682-2290; kriseberlein (skype)
← Prev in month ← Prev in thread