Remove elements and attributes that have been
designated as deprecated, "reserved for future use," or defined
by mistake and retained only to maintain backwards compatibility
Modified grammar files
The following files must
be modified:
- DTDs
-
- commonElements.mod
- map.mod
- mapGroup.mod
- topic.mod
- RNG
-
- commonElementsMod.rng
- mapMod.rng
- mapGroupMod.rng
- topicMod.rng
In the content below, the
following conventions are used:
- Bold is used to indicate code to be added.
- Line-through is used to indicate code to be
removed.
- Ellipses indicate where code is snipped for
brevity.
Figure 1. Removing <boolean>
commonElements.mod
<!ENTITY % basic.ph
"%boolean; |
%cite; |
%keyword; |
%ph; |
%q; |
%term; |
%text; |
%tm; |
%xref; |
%state;"
>
...
<!ENTITY % basic.ph.noxref.nocite
"%boolean; |
%keyword; |
%ph; |
%q; |
%term; |
%text; |
%tm; |
%state;"
>
...
<!ENTITY % basic.ph.notm
"%boolean; |
%cite; |
%keyword; |
%ph; |
%q; |
%term; |
%text; |
%xref; |
%state;"
>
<!-- LONG NAME: Boolean (deprecated) -->
<!ENTITY % boolean.content
"EMPTY"
>
<!ENTITY % boolean.attributes
"state
(no |
yes |
-dita-use-conref-target)
#REQUIRED
%univ-atts;
outputclass
CDATA
#IMPLIED"
>
<!ELEMENT boolean %boolean.content;>
<!ATTLIST boolean %boolean.attributes;>
...
<!ATTLIST boolean %global-atts; class CDATA "- topic/boolean " >
Figure 2. Removing <boolean>
commonElementsMod.rng
<div>
<a:documentation>ELEMENT TYPE NAME PATTERNS</a:documentation>
...
<define name="boolean">
<ref name="boolean.element"/>
</define>
...
<define name="basic.ph">
<choice>
<ref name="boolean"/>
<ref name="cite"/>
<ref name="keyword"/>
<ref name="ph"/>
<ref name="q"/>
<ref name="term"/>
<ref name="text" dita:since="1.3"/>
<ref name="tm"/>
<ref name="xref"/>
<ref name="state"/>
</choice>
</define>
...
<define name="basic.ph.noxref.nocite" dita:since="1.3">
<choice>
<ref name="boolean"/>
<ref name="keyword"/>
<ref name="ph"/>
<ref name="q"/>
<ref name="term"/>
<ref name="text" dita:since="1.3"/>
<ref name="tm"/>
<ref name="state"/>
</choice>
</define>
...
<define name="basic.ph.notm">
<choice>
<ref name="boolean"/>
<ref name="cite"/>
<ref name="keyword"/>
<ref name="ph"/>
<ref name="q"/>
<ref name="term"/>
<ref name="text" dita:since="1.3"/>
<ref name="xref"/>
<ref name="state"/>
</choice>
</define>
...
<div>
<a:documentation>LONG NAME: Boolean (deprecated)</a:documentation>
<define name="boolean.content">
<empty/>
</define>
<define name="boolean.attributes">
<attribute name="state">
<choice>
<value>no</value>
<value>yes</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
<ref name="univ-atts"/>
<optional>
<attribute name="outputclass"/>
</optional>
</define>
<define name="boolean.element">
<element name="boolean" dita:longName="Boolean (deprecated)">
<a:documentation>The <boolean> element is used to express one of two opposite values, such as yes or no, on or off, true or false, high or low, and so forth. The element itself is
empty; the value of the element is stored in its state attribute, and the semantic associated with the value is typically in a specialized name derived from this element. Category:
Specialization elements</a:documentation>
<ref name="boolean.attlist"/>
<ref name="boolean.content"/>
</element>
</define>
<define name="boolean.attlist" combine="interleave">
<ref name="boolean.attributes"/>
</define>
</div>
...
<define name="boolean.attlist" combine="interleave">
<ref name="global-atts"/>
<optional>
<attribute name="class" a:defaultValue="- topic/boolean "/>
</optional>
</define>
Figure 3. Removing <indextermref>
commonElements.mod
<!ENTITY % txt.incl
"%draft-comment; |
%fn; |
%indextermref; |
%indexterm; |
%required-cleanup;"
>
...
<!-- LONG NAME: Index term reference -->
<!ENTITY % indextermref.content
"EMPTY"
>
<!ENTITY % indextermref.attributes
"keyref
CDATA
#REQUIRED
%univ-atts;"
>
<!ELEMENT indextermref %indextermref.content;>
<!ATTLIST indextermref %indextermref.attributes;>
...
<!ATTLIST indextermref %global-atts; class CDATA "- topic/indextermref ">
Figure 4. Removing <indextermref>
commonElementsMod.rng
<div>
<a:documentation>ELEMENT TYPE NAME PATTERNS</a:documentation>
...
<define name="indextermref">
<ref name="indextermref.element"/>
</define>
...
<define name="txt.incl">
<a:documentation>Inclusions: defined sets that can be added into appropriate models</a:documentation>
<choice>
<ref name="draft-comment"/>
<ref name="fn"/>
<ref name="indextermref"/>
<ref name="indexterm"/>
<ref name="required-cleanup"/>
</choice>
</define>
...
<div>
<a:documentation>LONG NAME: Index term reference</a:documentation>
<define name="indextermref.content">
<empty/>
</define>
<define name="indextermref.attributes">
<attribute name="keyref"/>
<ref name="univ-atts"/>
</define>
<define name="indextermref.element">
<element name="indextermref" dita:longName="Index term reference">
<a:documentation>This element is not completely defined, and is reserved for future use. Category: Miscellaneous elements</a:documentation>
<ref name="indextermref.attlist"/>
<ref name="indextermref.content"/>
</element>
</define>
<define name="indextermref.attlist" combine="interleave">
<ref name="indextermref.attributes"/>
</define>
</div>
...
<define name="indextermref.attlist" combine="interleave">
<ref name="global-atts"/>
<optional>
<attribute name="class" a:defaultValue="- topic/indextermref "/>
</optional>
</define>
Figure 5. Removing @alt
and @longdescref
on <image>
commonElements.mod
<!ENTITY % image.attributes
"href
CDATA
#IMPLIED
scope
(external |
local |
peer |
-dita-use-conref-target)
#IMPLIED
keyref
CDATA
#IMPLIED
alt
CDATA
#IMPLIED
longdescref
CDATA
#IMPLIED
height
NMTOKEN
#IMPLIED
width
NMTOKEN
#IMPLIED
align
CDATA
#IMPLIED
scale
NMTOKEN
#IMPLIED
scalefit
(yes |
no |
-dita-use-conref-target)
#IMPLIED
placement
(break |
inline |
-dita-use-conref-target)
'inline'
%univ-atts;
outputclass
CDATA
#IMPLIED"
>
Figure 6. Removing @alt
and @longdescref
on <image>
commonElementsMod.rng
<define name="image.attributes">
<optional>
<attribute name="href"/>
</optional>
<optional>
<attribute name="scope">
<choice>
<value>external</value>
<value>local</value>
<value>peer</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="keyref"/>
</optional>
<optional>
<attribute name="alt"/>
</optional>
<optional>
<attribute name="longdescref"/>
</optional>
<optional>
<attribute name="height">
<data type="NMTOKEN"/>
</attribute>
</optional>
<optional>
<attribute name="width">
<data type="NMTOKEN"/>
</attribute>
</optional>
<optional>
<attribute name="align"/>
</optional>
<optional>
<attribute name="scale">
<data type="NMTOKEN"/>
</attribute>
</optional>
<optional>
<attribute name="scalefit">
<choice>
<value>yes</value>
<value>no</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="placement" a:defaultValue="inline">
<choice>
<value>break</value>
<value>inline</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="format" dita:since="1.3 errata 02"/>
</optional>
<ref name="univ-atts"/>
<optional>
<attribute name="outputclass"/>
</optional>
</define>
Figure 7. Removing @chunk
="to-navigation"
No changes are needed to
the grammar files.
Figure 8. Removing @collection-type
="tree"
on <linkpool>
and <linklist>
The only changes
required are to the DTDs.
topic.mod
<!ENTITY % linklist.attributes
"collection-type
(choice |
family |
sequence |
unordered |
-dita-use-conref-target |
tree)
#IMPLIED
duplicates
(no |
yes |
-dita-use-conref-target)
#IMPLIED
mapkeyref
CDATA
#IMPLIED
%relational-atts;
%univ-atts;
spectitle
CDATA
#IMPLIED
outputclass
CDATA
#IMPLIED"
>
<!ENTITY % linkpool.attributes
"collection-type
(choice |
family |
sequence |
unordered |
-dita-use-conref-target |
tree)
#IMPLIED
duplicates
(no |
yes |
-dita-use-conref-target)
#IMPLIED
mapkeyref
CDATA
#IMPLIED
%relational-atts;
%univ-atts;
outputclass
CDATA
#IMPLIED"
>
Figure 9. Removing @collection-type
on <reltable>
and <relcolspec>
map.mod
Adding a new attribute
group:
<!ENTITY % topicref-atts-for-reltable
"type
CDATA
#IMPLIED
cascade
CDATA
#IMPLIED
processing-role
(normal |
resource-only |
-dita-use-conref-target)
#IMPLIED
scope
(external |
local |
peer |
-dita-use-conref-target)
#IMPLIED
locktitle
(no |
yes |
-dita-use-conref-target)
#IMPLIED
format
CDATA
#IMPLIED
linking
(none |
normal |
sourceonly |
targetonly |
-dita-use-conref-target)
#IMPLIED
toc
(no |
yes |
-dita-use-conref-target)
'no'
print
(no |
printonly |
yes |
-dita-use-conref-target)
#IMPLIED
search
(no |
yes |
-dita-use-conref-target)
#IMPLIED
chunk
CDATA
#IMPLIED"
>
Modifying declarations
for <reltable>
and <relcolspec>
:
<!ENTITY % reltable.attributes
"title
CDATA
#IMPLIED
outputclass
CDATA
#IMPLIED
%topicref-atts-no-toc-no-keyscope;
%topicref-atts-for-reltable;
%univ-atts;"
>
...
<!ENTITY % relcolspec.attributes
"outputclass
CDATA
#IMPLIED
%topicref-atts-no-toc-no-keyscope;
%topicref-atts-for-reltable;
%univ-atts;"
>
Figure 10. Removing @collection-type
on <reltable>
and <relcolspec>
mapMod.rng
Adding a new attribute
group for use on <reltable>
and <relcolspec>
:
<define name="topicref-atts-for-reltable" dita:since="2.0">
<optional>
<attribute name="type"/>
</optional>
<optional>
<attribute name="cascade" dita:since="1.3"/>
</optional>
<optional>
<attribute name="processing-role">
<choice>
<value>normal</value>
<value>resource-only</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="scope">
<choice>
<value>external</value>
<value>local</value>
<value>peer</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="locktitle">
<choice>
<value>no</value>
<value>yes</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="format"/>
</optional>
<optional>
<attribute name="linking">
<choice>
<value>none</value>
<value>normal</value>
<value>sourceonly</value>
<value>targetonly</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="toc" a:defaultValue="no">
<choice>
<value>no</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="print">
<choice>
<value>no</value>
<value>printonly</value>
<value>yes</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="search">
<choice>
<value>no</value>
<value>yes</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="chunk"/>
</optional>
</define>
mapMod.rng
Modifying declarations
for <reltable>
and <relcolspec>
;
changes indicated in bold.
<define name="reltable.attributes">
<optional>
<attribute name="title"/>
</optional>
<optional>
<attribute name="outputclass"/>
</optional>
<ref name="topicref-atts-no-toc-no-keyscope"/>
<ref name="topicref-atts-for-reltable"/>
<ref name="univ-atts"/>
</define>
...
<define name="relcolspec.attributes">
<optional>
<attribute name="outputclass"/>
</optional>
<ref name="topicref-atts-no-toc-no-keyscope"/>
<ref name="topicref-atts-for-reltable"/>
<ref name="univ-atts"/>
</define>
Figure 11. Removing @keyref
on <navref>
map.mod
<!ENTITY % navref.attributes
"%univ-atts;
keyref
CDATA
#IMPLIED
mapref
CDATA
#IMPLIED
outputclass
CDATA
#IMPLIED"
>
Figure 12. Removing @keyref
on <navref>
mapMod.rng
<define name="navref.attributes">
<ref name="univ-atts"/>
<optional>
<attribute name="keyref"/>
</optional>
<optional>
<attribute name="mapref"/>
</optional>
<optional>
<attribute name="outputclass"/>
</optional>
</define>
Figure 13. Removing @locktitle
on <topichead>
and <topicgroup>
map.mod
Add a new attribute
entity
<!ENTITY % topicref-atts-no-locktitle
"collection-type
(choice |
family |
sequence |
unordered |
-dita-use-conref-target)
#IMPLIED
type
CDATA
#IMPLIED
cascade
CDATA
#IMPLIED
processing-role
(normal |
resource-only |
-dita-use-conref-target)
#IMPLIED
scope
(external |
local |
peer |
-dita-use-conref-target)
#IMPLIED
format
CDATA
#IMPLIED
linking
(none |
normal |
sourceonly |
targetonly |
-dita-use-conref-target)
#IMPLIED
toc
(no |
yes |
-dita-use-conref-target)
#IMPLIED
print
(no |
printonly |
yes |
-dita-use-conref-target)
#IMPLIED
search
(no |
yes |
-dita-use-conref-target)
#IMPLIED
chunk
CDATA
#IMPLIED
keyscope
CDATA
#IMPLIED"
>
mapGroup.mod
<!ENTITY % topichead.attributes
"navtitle
CDATA
#IMPLIED
outputclass
CDATA
#IMPLIED
keys
CDATA
#IMPLIED
copy-to
CDATA
#IMPLIED
%topicref-atts;
%topicref-atts-no-locktitle;
%univ-atts;"
>
...
<!ENTITY % topicgroup.attributes
"outputclass
CDATA
#IMPLIED
%topicref-atts;
%topicref-atts-no-locktitle;
%univ-atts;"
>
Figure 14. Removing @locktitle
on <topichead>
and <topicgroup>
mapMod.rng
Add a new attribute
entity
<define name="topicref-atts-no-locktitle">
<optional>
<attribute name="collection-type">
<choice>
<value>choice</value>
<value>family</value>
<value>sequence</value>
<value>unordered</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="type"/>
</optional>
<optional>
<attribute name="cascade" dita:since="1.3"/>
</optional>
<optional>
<attribute name="processing-role">
<choice>
<value>normal</value>
<value>resource-only</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="scope">
<choice>
<value>external</value>
<value>local</value>
<value>peer</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="format"/>
</optional>
<optional>
<attribute name="linking">
<choice>
<value>none</value>
<value>normal</value>
<value>sourceonly</value>
<value>targetonly</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="toc">
<choice>
<value>no</value>
<value>yes</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="print">
<choice>
<value>no</value>
<value>printonly</value>
<value>yes</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="search">
<choice>
<value>no</value>
<value>yes</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="chunk"/>
</optional>
<optional>
<attribute name="keyscope" dita:since="1.3"/>
</optional>
</define>
mapGroupDomain.rng
<define name="topichead.attributes">
<optional>
<attribute name="navtitle"/>
</optional>
<optional>
<attribute name="outputclass"/>
</optional>
<optional>
<attribute name="keys"/>
</optional>
<optional>
<attribute name="copy-to"/>
</optional>
<ref name="topicref-atts"/>
<ref name=""topicref-atts-no-locktitle">
<ref name="univ-atts"/>
</define>
...
<define name="topicgroup.attributes">
<optional>
<attribute name="outputclass"/>
</optional>
<ref name="topicref-atts"/>
<ref name=""topicref-atts-no-locktitle">
<ref name="univ-atts"/>
</define>
Figure 15. Removing @navtitle
map.mod
<!ENTITY % topicref.attributes
"navtitle
CDATA
#IMPLIED
href
CDATA
#IMPLIED
keyref
CDATA
#IMPLIED
keys
CDATA
#IMPLIED
query
CDATA
#IMPLIED
copy-to
CDATA
#IMPLIED
outputclass
CDATA
#IMPLIED
%topicref-atts;
%univ-atts;"
>
Figure 16. Removing @navtitle
mapMod.rng
<define name="topicref.attributes">
<optional>
<attribute name="navtitle"/>
</optional>
<optional>
<attribute name="href"/>
</optional>
<optional>
<attribute name="keyref"/>
</optional>
<optional>
<attribute name="keys"/>
</optional>
<optional>
<attribute name="query"/>
</optional>
<optional>
<attribute name="copy-to"/>
</optional>
<optional>
<attribute name="outputclass"/>
</optional>
<ref name="topicref-atts"/>
<ref name="univ-atts"/>
</define>
Figure 17. Removing @print
map.mod
Remove the following
code:
print
(no |
printonly |
yes |
-dita-use-conref-target)
#IMPLIED
From the following
entities:
%topicref-atts;
%topicref-atts-no-toc;
%topicref-atts-no-toc-no-keyscope;
%topicref-atts-without-format;
Figure 18. Removing @print
mapMod.rng
Remove the following
code:
optional>
<attribute name="print">
<choice>
<value>no</value>
<value>printonly</value>
<value>yes</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
From the following
entities:
%topicref-atts;
%topicref-atts-no-toc;
%topicref-atts-no-toc-no-keyscope;
%topicref-atts-without-format;
Figure 19. Removing @query
map.mod
<!ENTITY % topicref.attributes
"navtitle
CDATA
#IMPLIED
href
CDATA
#IMPLIED
keyref
CDATA
#IMPLIED
keys
CDATA
#IMPLIED
query
CDATA
#IMPLIED
copy-to
CDATA
#IMPLIED
outputclass
CDATA
#IMPLIED
%topicref-atts;
%univ-atts;"
>
mapGroup.mod
Remove the following
code:
query
CDATA
#IMPLIED
From the following
entities:
%anchorref.attributes;
%mapref.attributes;
%topicset.attributes;
%topicsetref.attributes;
%keydef.attributes;
topic.mod
<!ENTITY % link.attributes
"href
CDATA
#IMPLIED
keyref
CDATA
#IMPLIED
query
CDATA
#IMPLIED
%relational-atts;
%univ-atts;
outputclass
CDATA
#IMPLIED"
>
Figure 20. Removing @query
mapMod.rng
Remove the following
code:
<optional>
<attribute name="query"/>
</optional>
From the following
entities:
%anchorref.attributes;
%mapref.attributes;
%topicset.attributes;
%topicsetref.attributes;
%keydef.attributes;
<define name="topicref.attributes">
<optional>
<attribute name="navtitle"/>
</optional>
<optional>
<attribute name="href"/>
</optional>
<optional>
<attribute name="keyref"/>
</optional>
<optional>
<attribute name="keys"/>
</optional>
<optional>
<attribute name="query"/>
</optional>
<optional>
<attribute name="copy-to"/>
</optional>
<optional>
<attribute name="outputclass"/>
</optional>
<ref name="topicref-atts"/>
<ref name="univ-atts"/>
</define>
mapGroupDomain.rng
<define name="anchorref.attributes">
<optional>
<attribute name="navtitle"/>
</optional>
<optional>
<attribute name="href"/>
</optional>
<optional>
<attribute name="keyref"/>
</optional>
<optional>
<attribute name="keys"/>
</optional>
<optional>
<attribute name="keyscope" dita:since="1.3"/>
</optional>
<optional>
<attribute name="query"/>
</optional>
<optional>
<attribute name="copy-to"/>
</optional>
<optional>
<attribute name="outputclass"/>
</optional>
<optional>
<attribute name="collection-type">
<choice>
<value>choice</value>
<value>family</value>
<value>sequence</value>
<value>unordered</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="processing-role">
<choice>
<value>normal</value>
<value>resource-only</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="type" a:defaultValue="anchor"/>
</optional>
<optional>
<attribute name="cascade" dita:since="1.3"/>
</optional>
<optional>
<attribute name="scope">
<choice>
<value>external</value>
<value>local</value>
<value>peer</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="locktitle">
<choice>
<value>no</value>
<value>yes</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="format" a:defaultValue="ditamap"/>
</optional>
<optional>
<attribute name="linking">
<choice>
<value>none</value>
<value>normal</value>
<value>sourceonly</value>
<value>targetonly</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="toc">
<choice>
<value>no</value>
<value>yes</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="print">
<choice>
<value>no</value>
<value>printonly</value>
<value>yes</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="search">
<choice>
<value>no</value>
<value>yes</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="chunk"/>
</optional>
<ref name="univ-atts"/>
</define>
...
<define name="mapref.attributes">
<optional>
<attribute name="navtitle"/>
</optional>
<optional>
<attribute name="href"/>
</optional>
<optional>
<attribute name="keyref"/>
</optional>
<optional>
<attribute name="keys"/>
</optional>
<optional>
<attribute name="query"/>
</optional>
<optional>
<attribute name="copy-to"/>
</optional>
<optional>
<attribute name="outputclass"/>
</optional>
<optional>
<attribute name="format" a:defaultValue="ditamap"/>
</optional>
<ref name="topicref-atts-without-format"/>
<ref name="univ-atts"/>
</define>
...
<define name="topicset.attributes">
<optional>
<attribute name="navtitle"/>
</optional>
<optional>
<attribute name="href"/>
</optional>
<optional>
<attribute name="keyref"/>
</optional>
<optional>
<attribute name="keys"/>
</optional>
<optional>
<attribute name="keyscope" dita:since="1.3"/>
</optional>
<optional>
<attribute name="query"/>
</optional>
<optional>
<attribute name="copy-to"/>
</optional>
<optional>
<attribute name="outputclass"/>
</optional>
<optional>
<attribute name="collection-type">
<choice>
<value>choice</value>
<value>family</value>
<value>sequence</value>
<value>unordered</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="processing-role">
<choice>
<value>normal</value>
<value>resource-only</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="type"/>
</optional>
<optional>
<attribute name="cascade" dita:since="1.3"/>
</optional>
<optional>
<attribute name="scope">
<choice>
<value>external</value>
<value>local</value>
<value>peer</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="locktitle">
<choice>
<value>no</value>
<value>yes</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="format"/>
</optional>
<optional>
<attribute name="linking">
<choice>
<value>none</value>
<value>normal</value>
<value>sourceonly</value>
<value>targetonly</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="toc">
<choice>
<value>no</value>
<value>yes</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="print">
<choice>
<value>no</value>
<value>printonly</value>
<value>yes</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="search">
<choice>
<value>no</value>
<value>yes</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="chunk"/>
</optional>
<attribute name="id">
<data type="NMTOKEN"/>
</attribute>
<ref name="conref-atts"/>
<ref name="select-atts"/>
<ref name="localization-atts"/>
</define>
...
<define name="topicsetref.attributes">
<optional>
<attribute name="navtitle"/>
</optional>
<optional>
<attribute name="href"/>
</optional>
<optional>
<attribute name="keyref"/>
</optional>
<optional>
<attribute name="keys"/>
</optional>
<optional>
<attribute name="keyscope" dita:since="1.3"/>
</optional>
<optional>
<attribute name="query"/>
</optional>
<optional>
<attribute name="copy-to"/>
</optional>
<optional>
<attribute name="outputclass"/>
</optional>
<optional>
<attribute name="collection-type">
<choice>
<value>choice</value>
<value>family</value>
<value>sequence</value>
<value>unordered</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="processing-role">
<choice>
<value>normal</value>
<value>resource-only</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="type" a:defaultValue="topicset"/>
</optional>
<optional>
<attribute name="cascade" dita:since="1.3"/>
</optional>
<optional>
<attribute name="scope">
<choice>
<value>external</value>
<value>local</value>
<value>peer</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="locktitle">
<choice>
<value>no</value>
<value>yes</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="format" a:defaultValue="ditamap"/>
</optional>
<optional>
<attribute name="linking">
<choice>
<value>none</value>
<value>normal</value>
<value>sourceonly</value>
<value>targetonly</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="toc">
<choice>
<value>no</value>
<value>yes</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="print">
<choice>
<value>no</value>
<value>printonly</value>
<value>yes</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="search">
<choice>
<value>no</value>
<value>yes</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="chunk"/>
</optional>
<ref name="univ-atts"/>
</define>
...
<define name="keydef.attributes">
<optional>
<attribute name="navtitle"/>
</optional>
<optional>
<attribute name="href"/>
</optional>
<optional>
<attribute name="keyref"/>
</optional>
<attribute name="keys"/>
<optional>
<attribute name="keyscope" dita:since="1.3"/>
</optional>
<optional>
<attribute name="query"/>
</optional>
<optional>
<attribute name="copy-to"/>
</optional>
<optional>
<attribute name="outputclass"/>
</optional>
<optional>
<attribute name="collection-type">
<choice>
<value>choice</value>
<value>family</value>
<value>sequence</value>
<value>unordered</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="processing-role" a:defaultValue="resource-only">
<choice>
<value>normal</value>
<value>resource-only</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="type"/>
</optional>
<optional>
<attribute name="cascade" dita:since="1.3"/>
</optional>
<optional>
<attribute name="scope">
<choice>
<value>external</value>
<value>local</value>
<value>peer</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="locktitle">
<choice>
<value>no</value>
<value>yes</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="format"/>
</optional>
<optional>
<attribute name="linking">
<choice>
<value>none</value>
<value>normal</value>
<value>sourceonly</value>
<value>targetonly</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="toc">
<choice>
<value>no</value>
<value>yes</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="print">
<choice>
<value>no</value>
<value>printonly</value>
<value>yes</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="search">
<choice>
<value>no</value>
<value>yes</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="chunk"/>
</optional>
<ref name="univ-atts"/>
</define>
topicMod.rng
<define name="link.attributes">
<optional>
<attribute name="href"/>
</optional>
<optional>
<attribute name="keyref"/>
</optional>
<optional>
<attribute name="query"/>
</optional>
<ref name="relational-atts"/>
<ref name="univ-atts"/>
<optional>
<attribute name="outputclass"/>
</optional>
</define>
Figure 21. Removing @refcols
commonElements.mod
<!ENTITY % simpletable.attributes
"relcolwidth
CDATA
#IMPLIED
keycol
NMTOKEN
#IMPLIED
refcols
NMTOKENS
#IMPLIED
%display-atts;
spectitle
CDATA
#IMPLIED
%univ-atts;
outputclass
CDATA
#IMPLIED"
>
Figure 22. Removing @refcols
commonElementsMod.rng
<define name="simpletable.attributes">
<optional>
<attribute name="relcolwidth"/>
</optional>
<optional>
<attribute name="keycol">
<data type="NMTOKEN"/>
</attribute>
</optional>
<optional>
<attribute name="refcols">
<data type="NMTOKENS"/>
</attribute>
</optional>
<ref name="display-atts"/>
<optional>
<attribute name="spectitle"/>
</optional>
<ref name="univ-atts"/>
<optional>
<attribute name="outputclass"/>
</optional>
</define>
Figure 23. Removing @role
="sample"
and @role
="external"
topic.mod
<!ENTITY % relational-atts
"type
CDATA
#IMPLIED
cascade
CDATA
#IMPLIED
format
CDATA
#IMPLIED
scope
(external |
local |
peer |
-dita-use-conref-target)
#IMPLIED
role
(ancestor |
child |
cousin |
descendant |
external |
friend |
next |
other |
parent |
previous |
sample |
sibling |
-dita-use-conref-target)
#IMPLIED
otherrole
CDATA
#IMPLIED"
>
<!ENTITY % rel-atts
"type
CDATA
#IMPLIED
role
(ancestor |
child |
cousin |
descendant |
external |
friend |
next |
other |
parent |
previous |
sample |
sibling |
-dita-use-conref-target)
#IMPLIED
otherrole
CDATA
#IMPLIED"
>
Figure 24. Removing @role
="sample"
and @role
="external"
topicMod.rng
<define name="relational-atts">
<optional>
<attribute name="type"/>
</optional>
<optional>
<attribute name="cascade" dita:since="1.3"/>
</optional>
<optional>
<attribute name="format"/>
</optional>
<optional>
<attribute name="scope">
<choice>
<value>external</value>
<value>local</value>
<value>peer</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="role">
<choice>
<value>ancestor</value>
<value>child</value>
<value>cousin</value>
<value>descendant</value>
<value>external</value>
<value>friend</value>
<value>next</value>
<value>other</value>
<value>parent</value>
<value>previous</value>
<value>sample</value>
<value>sibling</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="otherrole"/>
</optional>
</define>
<define name="rel-atts">
<a:documentation>rel-atts is deprecated as of DITA 1.2, retained for backward compatibility.</a:documentation>
<optional>
<attribute name="type"/>
</optional>
<optional>
<attribute name="role">
<choice>
<value>ancestor</value>
<value>child</value>
<value>cousin</value>
<value>descendant</value>
<value>external</value>
<value>friend</value>
<value>next</value>
<value>other</value>
<value>parent</value>
<value>previous</value>
<value>sample</value>
<value>sibling</value>
<value>-dita-use-conref-target</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="otherrole"/>
</optional>
</define>
Figure 25. Removing @title
on <map>
map.mod
<!ENTITY % map.attributes
"title
CDATA
#IMPLIED
id
ID
#IMPLIED
%conref-atts;
anchorref
CDATA
#IMPLIED
outputclass
CDATA
#IMPLIED
%localization-atts;
%topicref-atts;
%select-atts;"
>
Figure 26. Removing @title
on <map>
mapMod.rng
<define name="map.attributes">
<optional>
<attribute name="title"/>
</optional>
<optional>
<attribute name="id">
<data type="ID"/>
</attribute>
</optional>
<ref name="conref-atts"/>
<optional>
<attribute name="anchorref"/>
</optional>
<optional>
<attribute name="outputclass"/>
</optional>
<ref name="localization-atts"/>
<ref name="topicref-atts"/>
<ref name="select-atts"/>
</define>
Figure 27. Removing @type
="internal"
and @type
="external"
on <lq>
No changes are required
to commonElements.mod.
Figure 28. Removing @type
="internal"
and @type
="external"
on <lq>
No changes are required
to commonElementsMod.rng.
Migration plans for backwards
incompatibilities
Information architects
and content strategists will need to search their content for
elements, attributes, and attribute values that were removed
from DITA 2.0:
<boolean>
<indextermref>
@alt
@chunk="to-navigation
@collection-type
="tree"
on <linkpool>
and <linklist>
@collection-type
on <reltable>
and <relcolspec>
@keyref
on <navref>
@locktitle
on <topichead>
and <topicgroup>
<image>
@longdescref
@navtitle
@print
@query
@refcols
@role
="sample"
and @role
="external"
@title
<map>
@type
="internal"
and @type
="external"
on <lq>
The deprecated elements,
attributes, and attribute values will need to be removed.
The DITA TC should offer
migration advice only for deprecated elements and attributes
(highlighted in the list above); we cannot guess at how users
have used attribute and attribute values that were never
formally defined. In addition, we cannot provide migration
advice to vendors who have directly modified the
OASIS-provided grammar files.
The following table
outlines the basic information for migrating existing content.
Deprecated item |
Strategy |
DITA 1.3 markup |
DITA 2.0 markup |
@alt |
- Remove the
@alt attribute.
- Create a
<title> element
as child of map.
- Insert the value of the
@alt into
the <title> element.
|
<image href="" alt="Two-wheeled bicycle"/>
|
<image href=""
<alt>Two-wheeled bicycle</alt>
</image>
|
<boolean> |
Replace the <boolean> with
a <state> or <data> element. |
She said "<boolean state="yes"/>" when I asked her to marry me!
Note: This
is the example from the specification. It is very
stupid and embarrassing. The element only had value as
a specialization base.
|
"She said <state name="answer" value="yes"/> when I asked her to marry me!"
Note: Again,
this is also a very stupid example.
|
@print |
- Identify maps that use the
@print attribute.
- Develop a subjectScheme map with
appropriate values for the
@deliveryTarget attribute.
- Replace the
@print attribute
with a@deliveryTarget attribute
and a appropriate value.
|
<topicref href="" print="no">
|
<topicref href="" deliveryTarget="Web-only">
|
@navtitle |
- Identify maps that use the
@navtitle attribute.
- Remove the
@navtitle attribute
and replace it with an XML comment or a @navtitle element,
whichever is appropriate
Note: The
DITA TC suggests simply removing the @navtitle if
the@locktitle attribute
is not set. If the@locktitle attribute is set to
"yes," add a@navtitle element.
|
<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="windows" navtitle="Windows"/>
<subjectdef keys="zos" navtitle="z/OS"/>
</subjectdef>
<enumerationdef>
<attributedef name="platform"/>
<subjectdef keyref="os"/>
</enumerationdef>
</subjectScheme>
|
<subjectScheme>
<subjectdef keys="os">
<topicmeta>
<navtitle>Operating systems</navtitle>
</topicmeta>
<subjectdef keys="linux">
<topicmeta>
<navtitle>Linux</navtitle>
</topicmeta>
<subjectdef keys="redhat">
<topicmeta>
<navtitle>RedHat Linux</navtitle>
</topicmeta>
</subjectdef>
<subjectdef keys="suse">
<topicmeta>
<navtitle>SUSE Linux</navtitle>
</topicmeta>
</subjectdef>
</subjectdef>
<subjectdef keys="windows">
<topicmeta>
<navtitle>Windows</navtitle>
</topicmeta>
</subjectdef>
<subjectdef keys="zos">
<topicmeta>
<navtitle>z/OS</navtitle>
</topicmeta>
</subjectdef>
</subjectdef>
<enumerationdef>
<attributedef name="platform"/>
<subjectdef keyref="os"/>
</enumerationdef>
</subjectScheme>
|
@longdescref on < image> |
- Remove the
@longdescref attribute.
- Insert a
<longdescref> element.
|
<image href="" longdescref="http://www.example.org/birds/puffin.html">
<alt>Puffin picture</alt>
</image>
|
<image href="">
<alt>Puffin pigure</alt>
<longdescref href="" class="moz-txt-link-rfc2396E" href="http://www.example.org/birds/puffin.html">"http://www.example.org/birds/puffin.html"
scope="external"
format="html"/>
</image>
|
@title on <map> |
- Remove the
@title attribute.
- Insert a
<title> element.
|
<map id="mybats" title="Bats>
<topicref href="" type="topic">
<topicref href="" type="task"/>
<topicref href="" type="task"/>
<topicref href="" type="concept"/>
<topicref href="" type="reference"/>
<topicref href="" type="reference"/>
</topicref>
</map>
|
<map id="mybats">
<title>Bats</title>
<topicref href="" type="topic">
<topicref href="" type="task"/>
<topicref href="" type="task"/>
<topicref href="" type="concept"/>
<topicref href="" type="reference"/>
<topicref href="" type="reference"/>
</topicref>
</map>
|
DITA practitioners who
have developed specialization and constraint modules that
enumerate any of the deprecated elements and attributes will
need to remove them from the modules.