OASIS Darwin Information Typing Architecture (DITA) TC

  • 1.  Policy Decision: Loose or Not

    Posted 01-23-2007 18:42
    Per the discussion between Michael P. and myself with regard to the 
    differences between the topic nesting constraints defined by the 
    ditabase declaration set and the type-specific declaration sets, I think 
    there is a policy decision that the TC needs to make and then reflect 
    consistently in the spec and declarations.
    
    If I understand Michael's justification for having two different sets of 
    rules for how topics can nest, it is that there is a pragmatic need to 
    allow unconstrained nesting but a desire to show that one can specialize 
    the declarations to disallow it and thus the declarations as provided 
    have two different sets of rules. He also asserts that most authors want 
    the more constrained set of rules.
    
    My position is that the declarations as defined in the standard should 
    be both consistent and relaxed, such that the standard does not *impose* 
    any constraints that are not necessary to impose. In this case it is 
    clear that, for example, restricting reference to only containing 
    reference is not necessary *because ditabase doesn't do it*.
    
    That is, as a matter of *standards policy*, the standard should only 
    define as normative only those constraints that are appropriate, leaving 
    all other constraints to specializers.
    
    At the same time, I recognize that Michael is probably correct that most 
    DITA users would want the more constrained version of the content models.
    
    One solution would be to say that the declarations as configured by the 
    ditabase declaration set are the *normative* declarations and the 
    topic-type-specific declarations (concept.dtd, task.dtd, reference.dtd, 
    glossary.dtd) are non-normative examples of how to configure the 
    declarations to tighten the looseness of the normative configuration.
    
    That would remove the need to refer to the type-specific configurations 
    at all in the DITA reference, since only the ditabase configuration 
    would be normative.
    
    Note that this would not change in any way the status or nature of the 
    type-specfic declaration modules (the group and module declarations).
    
    But I think that it's very important that in terms of the normative 
    dictates of the standard, that we be both consistent and loose.
    
    Unless there is serious opposition to this idea, I will plan to make a 
    motion to this effect at our next meeting.
    
    Cheers,
    
    Eliot
    
    -- 
    W. Eliot Kimber
    Professional Services
    Innodata Isogen
    8500 N. Mopac, Suite 402
    Austin, TX 78759
    (214) 954-5198
    
    ekimber@innodata-isogen.com
    www.innodata-isogen.com
    
    


  • 2.  Re: [dita] Policy Decision: Loose or Not

    Posted 01-23-2007 19:28
    
    
      
      
    
    
    This would be a rather extreme change of policy,
    wouldn't it?

    As I understand it, ditabase is expliticly *non*-normative, and as the spec currently says any nesting or other arrangement of topics in it "has no particular output implications; it simply allows you to create multiple topics of different types at the same level in a single document."

    It's just a crazy quilt for the convenience of authors in a hurry, for topics that need to be split up and organized via a map later.

    It would be odd to suddenly prefer its content model as the normative standard.

    W. Eliot Kimber wrote:
    Per the discussion between Michael P. and myself with regard to the differences between the topic nesting constraints defined by the ditabase declaration set and the type-specific declaration sets, I think there is a policy decision that the TC needs to make and then reflect consistently in the spec and declarations.

    If I understand Michael's justification for having two different sets of rules for how topics can nest, it is that there is a pragmatic need to allow unconstrained nesting but a desire to show that one can specialize the declarations to disallow it and thus the declarations as provided have two different sets of rules. He also asserts that most authors want the more constrained set of rules.

    My position is that the declarations as defined in the standard should be both consistent and relaxed, such that the standard does not *impose* any constraints that are not necessary to impose. In this case it is clear that, for example, restricting reference to only containing reference is not necessary *because ditabase doesn't do it*.

    That is, as a matter of *standards policy*, the standard should only define as normative only those constraints that are appropriate, leaving all other constraints to specializers.

    At the same time, I recognize that Michael is probably correct that most DITA users would want the more constrained version of the content models.

    One solution would be to say that the declarations as configured by the ditabase declaration set are the *normative* declarations and the topic-type-specific declarations (concept.dtd, task.dtd, reference.dtd, glossary.dtd) are non-normative examples of how to configure the declarations to tighten the looseness of the normative configuration.

    That would remove the need to refer to the type-specific configurations at all in the DITA reference, since only the ditabase configuration would be normative.

    Note that this would not change in any way the status or nature of the type-specfic declaration modules (the group and module declarations).

    But I think that it's very important that in terms of the normative dictates of the standard, that we be both consistent and loose.

    Unless there is serious opposition to this idea, I will plan to make a motion to this effect at our next meeting.

    Cheers,

    Eliot



  • 3.  Re: [dita] Policy Decision: Loose or Not

    Posted 01-23-2007 19:38
    Dana Spradley wrote:
    > This would be a rather extreme change of policy, wouldn't it?
    > 
    > As I understand it, ditabase is expliticly *non*-normative, and as the 
    > spec currently says any nesting or other arrangement of topics in it 
    > "has no particular output implications; it simply allows you to create 
    > multiple topics of different types at the same level in a single document."
    
    Unless I've completely misunderstood the implications of how things are 
    delivered, all the declarations are normative. That is, the DITA 
    standard consists of the architecture specification, the language 
    reference, and the accompanying DTD and XSD declarations, all of which 
    are normative.
    
    That is, the very fact that we need to have language in the language 
    reference about when different containment rules apply indicates that we 
    have two different but normative rules.
    
    If it wasn't normative then we wouldn't have the language in the spec.
    
    Cheers,
    
    E.
    -- 
    W. Eliot Kimber
    Professional Services
    Innodata Isogen
    8500 N. Mopac, Suite 402
    Austin, TX 78759
    (214) 954-5198
    
    ekimber@innodata-isogen.com
    www.innodata-isogen.com
    
    


  • 4.  Re: [dita] Policy Decision: Loose or Not

    Posted 01-24-2007 00:04
    
    
      
      
    
    
    Then the most logical choice would be to eliminate
    ditabase from the standard - and let implementors do their own
    ditabases as a practical measure, if they want to give authors a way of
    writing non-conformant topic collections prior to splitting them up
    into conformant topics.

    --Dana

    W. Eliot Kimber wrote:
    Dana Spradley wrote:
    This would be a rather extreme change of policy, wouldn't it?

    As I understand it, ditabase is expliticly *non*-normative, and as the spec currently says any nesting or other arrangement of topics in it "has no particular output implications; it simply allows you to create multiple topics of different types at the same level in a single document."

    Unless I've completely misunderstood the implications of how things are delivered, all the declarations are normative. That is, the DITA standard consists of the architecture specification, the language reference, and the accompanying DTD and XSD declarations, all of which are normative.

    That is, the very fact that we need to have language in the language reference about when different containment rules apply indicates that we have two different but normative rules.

    If it wasn't normative then we wouldn't have the language in the spec.

    Cheers,

    E.


  • 5.  Re: [dita] Policy Decision: Loose or Not

    Posted 01-24-2007 07:02
    Dana Spradley wrote:
    > Then the most logical choice would be to eliminate ditabase from the 
    > standard - and let implementors do their own ditabases as a practical 
    > measure, if they want to give authors a way of writing non-conformant 
    > topic collections prior to splitting them up into conformant topics.
    
    I can't agree--doing so would make invalid specializations and
    customizations that are today valid but that are not completely
    unconstrained. In a general standard like DITA it is simply wrong to
    impose arbitrary constraints that are not universally accepted. We've
    already established that there are times when it is reasonable to allow
    different topic types to nest in a controlled way, so we cannot argue
    that only allowing like topic types to nest is universally accepted.
    Therefore it would be wrong to make the most restrictive rules normative.
    
    Cheers,
    
    Eliot
    
    -- 
    W. Eliot Kimber
    Professional Services
    Innodata Isogen
    8500 N. Mopac, Suite 402
    Austin, TX 78759
    (214) 954-5198
    
    ekimber@innodata-isogen.com
    www.innodata-isogen.com