OASIS Darwin Information Typing Architecture (DITA) TC

 View Only

Cascading / inheritance of default values

  • 1.  Cascading / inheritance of default values

    Posted 09-09-2008 14:39
    A question came up when writing up the Controlled Values proposal, and Erik
    Hennum suggested I take it to the TC list. I realize it's too late for
    today's call, but hopefully this will get discussion started.
    
    The controlled values proposal allows you to select values that are valid
    in a given attribute - for example, you can provide an enumeration for the
    audience attribute. At the same time, you can specify a default value from
    the enumeration.
    
    This raises a question about cascading attributes. In a map, many
    attributes (like audience) cascade to nested topicrefs. If a default value
    for @audience is set in the DTD, this means it applies everywhere - parsers
    see it the same as a specified value, it is the clear default for every
    instance of the element. So, setting a value on the topicref will not
    override nested topicrefs, because they pick up the default.
    
    What happens if a default is specified through a controlled values file? In
    that case, there is a default, but it is a processor controlled default. It
    will not show up in a file unless / until a processor reads the file,
    determines the default, and then applies it.
    
    So - assume that I have a controlled values file which defines a default of
    audience="us" among the valid values (us | them | everybody). What audience
    applies to the following topics?
    
      
      
    
    Topic A will have audience="us", topic B has audience="them", what does
    topic C have?
    
    Thanks -
    
    Robert D Anderson
    IBM Authoring Tools Development
    Chief Architect, DITA Open Toolkit
    (507) 253-8787, T/L 553-8787 (Good Monday & Thursday)