[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Stage 3 proposal: make @outputclass universal
Stage 3 proposal: Feature #17 make @outputclass universal
Make @outputclass a universal attribute on all elements defined as part of the DITA specification.
Champion
Robert D Anderson
Tracking information
Event | Date | Links |
Stage 1 proposal accepted | Jan 24 2017 | https://lists.oasis-open.org/archives/dita/201701/msg00097.html |
Stage 2 proposal submitted | June 12 2018 | |
Stage 2 proposal discussed | July 11 2018 | https://www.oasis-open.org/committees/download.php/61199/minutes20170711.txt |
Stage 2 proposal approved | July 18 2018 | https://www.oasis-open.org/committees/document.php?document_id=61257&wg_abbrev=dita |
Stage 3 proposal submitted to reviewers | February 28 2018 | Sent to Dawn Stevens, Scott Hudson |
Stage 3 proposal (this document) submitted | February 28 2018 | https://tools.oasis-open.org/version-control/browse/wsvn/dita/trunk/DITA-2.0/stage-3/Issue17-stage3-universalOutputclass.dita |
Apart from the <dita> container element, add @outputclass to every element in the specification that does not already allow that attribute.
Dependencies or interrelated proposals
Any proposal for a new element in DITA 2.0 needs to ensure that @outputclass is allowed.
The original LwDITA proposal anticipated that @outputclass would be available everywhere but had to be adjusted when that was determined to be incorrect. A new version of LwDITA may want to make use of this attribute on those elements if it has not already done so.
Modified Grammar files
The @outputclass attribute should be declared for any element that does not already have it, as follows:
<optional><attribute name="outputclass"></optional>
The most reliable way to do this is to add it to the universal attribute group – assuming the other groups are not modified, this will make:
<define name="univ-atts">
<ref name="id-atts"/>
<ref name="select-atts"/>
<ref name="localization-atts"/>
<optional>
<attribute name="outputclass">
</optional>
</define>
All modules that independently declare @outputclass will need to be updated, EXCEPT for those that also need to override univ-atts (for example, <topic> and its specializations must override univ-atts in order to make @id required). The attribute is currently declared in a large number of files, and can likely be removed with a good search/replace _expression_. The @outputclass attribute is currently declared in 46 independent RNG files from DITA 1.3, so this proposal effectively updates every module that declares elements to remove one or more instances of the line above. Those in the base package that will need updates include:
The same declaration will need to be removed from every element that currently uses it; as with RNG, this will effectively mean removing that same declaration from every module that declares elements.
Modified terminology
No new or updated terminology.
Modified specification documentation
Most structural or domain specialization modules that declare elements will need to be updated to remove declarations of @outputclass.
There is not currently a plan for an automated way to accomplish this for DTDs, due to the wide variety of coding practices for DTD modules. XSD and RNG could likely be automated with a search/replace algorithm that handles complex regular expressions, but this may result in removing the attribute from elements that do not use the universal attribute group.
Current suggestion for migration instructions is as follows (to be clarified with addition details based on our own experience updating the OASIS shells):
Regards, Robert D. Anderson | |
E-mail: robander@us.ibm.com Digital Services Group | |
11501 BURNET RD,, TX, 78758-3400, AUSTIN, USA | |
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]