[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [dita] Policy Decision: Loose or Not
Hi, Dana, Eliot, and Michael:
I'm wondering if the discussion underscores the distinction between a vocabulary module and a document type shell.
The vocabulary module gives the normative definition of a content model including the base element at each context. For instance, the definition of <ph> in the topic vocabulary module allows <keyword> as part of a choice.
The document type shell gives the normative definition for each content model within that document type after domain substitions and restrictions have been applied to those contexts.
Less formally, the vocabulary module provides the ingredients. The document type shell assembles the ingredients as a meal.
For an example of domain substitions, the topic document type draws on the programming, software, and UI domains to add the following substitions in all <keyword> contexts: <option>, <parmname>, <apiname>, <cmdname>, <msgnum>, <varname>, and <wintitle>. So, the normative definition of the <ph> content model for the topic document type provided with the standard differs from the normative definition of the <ph> content model for the topic vocabulary module. The two aren't in conflict because of the nature of domain substitution groups. Other conformant document type shells are possible that use the topic vocabulary module but provide a different set of domain substitutions for the <keyword> element and thus change the definition of the <ph> content model.
For an example of restriction, the concept vocabulary module allows a nested <topic> in the last context within the content model for the <concept> element. The concept document type shell restricts that context to the <concept> specialization of <topic>. Other conformant document type shells are possible that allow the base <topic> element in that context or that restrict the same context to a choice of <concept> or <task> elements.
In DITA 1.0, a document type shell can only restrict <topic> contexts. There is a DITA 1.2 requirement to extend that restriction capability to any context (which would allow you, for instance, to restrict the <keyword> context within <ph> to <apiname> or <cmdname>).
Hoping that's useful,
Erik Hennum
ehennum@us.ibm.com
Michael Priestley <mpriestl@ca.ibm.com>
01/24/2007 12:24 PM |
|
"W. Eliot Kimber" <ekimber@innodata-isogen.com>
01/24/2007 03:04 PM |
|
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]