blob: 499aa4086066729121a3dec1a25bb13337cdb181 [file] [log] [blame]
# =============================================================
# HEADER
# =============================================================
# MODULE: DITA Task
# VERSION: 1.1
# DATE: June 2006
#
# =============================================================
# =============================================================
# PUBLIC DOCUMENT TYPE DEFINITION
# TYPICAL INVOCATION
#
# Refer to this file by the following public identifier or an
# appropriate system identifier
# PUBLIC "-//OASIS//ELEMENTS DITA Task//EN"
# Delivered as file "task.mod"
# =============================================================
# SYSTEM: Darwin Information Typing Architecture (DITA)
#
# PURPOSE: Declaring the elements and specialization
# attributes for the DITA Tasks
#
# ORIGINAL CREATION DATE:
# March 2001
#
# (C) Copyright OASIS Open 2005, 2006.
# (C) Copyright IBM Corporation 2001, 2004.
# All Rights Reserved.
#
# UPDATES:
# 2005.11.15 RDA: Removed old declaration for
# taskClasses entity
# 2005.11.15 RDA: Corrected LONG NAME for chdeschd
# 2006.06.06 RDA: Changed model of choice to listitem.cnt
# for completeness
# 2006.06.07 RDA: Added <abstract> element
# 2006.06.07 RDA: Make universal attributes universal
# (DITA 1.1 proposal #12)
# =============================================================
# =============================================================
# ARCHITECTURE ENTITIES
# =============================================================
# default namespace prefix for DITAArchVersion attribute can be
# overridden through predefinition in the document type shell
# must be instanced on each topic type
# =============================================================
# SPECIALIZATION OF DECLARED ELEMENTS
# =============================================================
# =============================================================
# ELEMENT NAME ENTITIES
# =============================================================
namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0"
taskbody = taskbody.element
steps = steps.element
steps-unordered = steps-unordered.element
step = step.element
cmd = cmd.element
substeps = substeps.element
substep = substep.element
tutorialinfo = tutorialinfo.element
info = info.element
stepxmp = stepxmp.element
stepresult = stepresult.element
choices = choices.element
choice = choice.element
result = result.element
prereq = prereq.element
postreq = postreq.element
context = context.element
choicetable = choicetable.element
chhead = chhead.element
chrow = chrow.element
choptionhd = choptionhd.element
chdeschd = chdeschd.element
choption = choption.element
chdesc = chdesc.element
# =============================================================
# SHARED ATTRIBUTE LISTS
# =============================================================
# Provide an alternative set of univ-atts
# that allows importance to be redefined
# locally
univ-atts-no-importance-task =
id-atts,
filter-atts,
attribute rev { text }?,
attribute status { "new" | "changed" | "deleted" | "unchanged" }?,
localization-atts
task-info-types = info-types
# =============================================================
# DOMAINS ATTRIBUTE OVERRIDE
# =============================================================
# =============================================================
# ELEMENT DECLARATIONS
# =============================================================
# LONG NAME: Task
task.element =
element task {
task.attlist,
title,
titlealts?,
(shortdesc | abstract)?,
prolog?,
taskbody?,
related-links?,
task-info-types*
}
task.attlist &=
attribute id { xsd:ID },
attribute conref { text }?,
select-atts,
localization-atts,
arch-atts,
attribute outputclass { text }?,
[
a:defaultValue =
"(topic ui-d) (topic hi-d) (topic pr-d) (topic sw-d) (topic ut-d) (topic indexing-d)"
]
attribute domains { text }?
# LONG NAME: Task Body
taskbody.element =
element taskbody {
taskbody.attlist,
prereq?,
context?,
(steps | steps-unordered)?,
result?,
example?,
postreq?
}
taskbody.attlist &=
id-atts,
localization-atts,
attribute outputclass { text }?
# LONG NAME: Prerequisites
prereq.element = element prereq { prereq.attlist, section.notitle.cnt* }
prereq.attlist &=
univ-atts,
attribute outputclass { text }?
# LONG NAME: Context
context.element =
element context { context.attlist, section.notitle.cnt* }
context.attlist &=
univ-atts,
attribute outputclass { text }?
# LONG NAME: Steps
steps.element = element steps { steps.attlist, step+ }
steps.attlist &=
univ-atts,
attribute outputclass { text }?
# LONG NAME: Steps: Unordered
steps-unordered.element =
element steps-unordered { steps-unordered.attlist, step+ }
steps-unordered.attlist &=
univ-atts,
attribute outputclass { text }?
# LONG NAME: Step
step.element =
element step {
step.attlist,
cmd,
(info | substeps | tutorialinfo | stepxmp | choicetable | choices)*,
stepresult?
}
step.attlist &=
attribute importance { "optional" | "required" }?,
univ-atts-no-importance-task,
attribute outputclass { text }?
# ATTLIST step
# importance (optional | required) #IMPLIED
# LONG NAME: Command
cmd.element = element cmd { cmd.attlist, ph.cnt* }
cmd.attlist &=
attribute keyref { text }?,
univ-atts,
attribute outputclass { text }?
# LONG NAME: Information
info.element = element info { info.attlist, itemgroup.cnt* }
info.attlist &=
univ-atts,
attribute outputclass { text }?
# LONG NAME: Sub-steps
substeps.element = element substeps { substeps.attlist, substep+ }
substeps.attlist &=
univ-atts,
attribute outputclass { text }?
# LONG NAME: Sub-step
substep.element =
element substep {
substep.attlist, cmd, (info | tutorialinfo | stepxmp)*, stepresult?
}
substep.attlist &=
attribute importance { "optional" | "required" }?,
univ-atts-no-importance-task,
attribute outputclass { text }?
# ATTLIST substep
# importance
# (optional | required) #IMPLIED
# LONG NAME: Tutorial Information
tutorialinfo.element =
element tutorialinfo { tutorialinfo.attlist, itemgroup.cnt* }
tutorialinfo.attlist &=
univ-atts,
attribute outputclass { text }?
# LONG NAME: Step Example
stepxmp.element = element stepxmp { stepxmp.attlist, itemgroup.cnt* }
stepxmp.attlist &=
univ-atts,
attribute outputclass { text }?
# LONG NAME: Choices
choices.element = element choices { choices.attlist, choice+ }
choices.attlist &=
univ-atts,
attribute outputclass { text }?
# LONG NAME: Choice
choice.element = element choice { choice.attlist, listitem.cnt* }
choice.attlist &=
univ-atts,
attribute outputclass { text }?
# LONG NAME: Choice Table
choicetable.element =
element choicetable { choicetable.attlist, chhead?, chrow+ }
choicetable.attlist &=
attribute relcolwidth { text }?,
[ a:defaultValue = "1" ] attribute keycol { xsd:NMTOKEN }?,
attribute refcols { xsd:NMTOKENS }?,
attribute spectitle { text }?,
display-atts,
univ-atts,
attribute outputclass { text }?
# LONG NAME: Choice Head
chhead.element = element chhead { chhead.attlist, choptionhd, chdeschd }
chhead.attlist &=
univ-atts,
attribute outputclass { text }?
# LONG NAME: Choice Option Head
choptionhd.element =
element choptionhd { choptionhd.attlist, tblcell.cnt* }
choptionhd.attlist &=
attribute specentry { text }?,
univ-atts,
attribute outputclass { text }?
# LONG NAME: Choice Description Head
chdeschd.element = element chdeschd { chdeschd.attlist, tblcell.cnt* }
chdeschd.attlist &=
attribute specentry { text }?,
univ-atts,
attribute outputclass { text }?
# LONG NAME: Choice Row
chrow.element = element chrow { chrow.attlist, choption, chdesc }
chrow.attlist &=
univ-atts,
attribute outputclass { text }?
# LONG NAME: Choice Option
choption.element = element choption { choption.attlist, tblcell.cnt* }
choption.attlist &=
attribute specentry { text }?,
univ-atts,
attribute outputclass { text }?
# LONG NAME: Choice Description
chdesc.element = element chdesc { chdesc.attlist, tblcell.cnt* }
chdesc.attlist &=
attribute specentry { text }?,
univ-atts,
attribute outputclass { text }?
# LONG NAME: Step Result
stepresult.element =
element stepresult { stepresult.attlist, itemgroup.cnt* }
stepresult.attlist &=
univ-atts,
attribute outputclass { text }?
# LONG NAME: Result
result.element = element result { result.attlist, section.notitle.cnt* }
result.attlist &=
univ-atts,
attribute outputclass { text }?
# LONG NAME: Post Requirements
postreq.element =
element postreq { postreq.attlist, section.notitle.cnt* }
postreq.attlist &=
univ-atts,
attribute outputclass { text }?
# =============================================================
# SPECIALIZATION ATTRIBUTE DECLARATIONS
# =============================================================
task.attlist &=
global-atts,
[ a:defaultValue = "- topic/topic task/task " ]
attribute class { text }?
taskbody.attlist &=
global-atts,
[ a:defaultValue = "- topic/body task/taskbody " ]
attribute class { text }?
steps.attlist &=
global-atts,
[ a:defaultValue = "- topic/ol task/steps " ]
attribute class { text }?
steps-unordered.attlist &=
global-atts,
[ a:defaultValue = "- topic/ul task/steps-unordered " ]
attribute class { text }?
step.attlist &=
global-atts,
[ a:defaultValue = "- topic/li task/step " ] attribute class { text }?
cmd.attlist &=
global-atts,
[ a:defaultValue = "- topic/ph task/cmd " ] attribute class { text }?
substeps.attlist &=
global-atts,
[ a:defaultValue = "- topic/ol task/substeps " ]
attribute class { text }?
substep.attlist &=
global-atts,
[ a:defaultValue = "- topic/li task/substep " ]
attribute class { text }?
tutorialinfo.attlist &=
global-atts,
[ a:defaultValue = "- topic/itemgroup task/tutorialinfo " ]
attribute class { text }?
info.attlist &=
global-atts,
[ a:defaultValue = "- topic/itemgroup task/info " ]
attribute class { text }?
stepxmp.attlist &=
global-atts,
[ a:defaultValue = "- topic/itemgroup task/stepxmp " ]
attribute class { text }?
stepresult.attlist &=
global-atts,
[ a:defaultValue = "- topic/itemgroup task/stepresult " ]
attribute class { text }?
choices.attlist &=
global-atts,
[ a:defaultValue = "- topic/ul task/choices " ]
attribute class { text }?
choice.attlist &=
global-atts,
[ a:defaultValue = "- topic/li task/choice " ]
attribute class { text }?
result.attlist &=
global-atts,
[ a:defaultValue = "- topic/section task/result " ]
attribute class { text }?
prereq.attlist &=
global-atts,
[ a:defaultValue = "- topic/section task/prereq " ]
attribute class { text }?
postreq.attlist &=
global-atts,
[ a:defaultValue = "- topic/section task/postreq " ]
attribute class { text }?
context.attlist &=
global-atts,
[ a:defaultValue = "- topic/section task/context " ]
attribute class { text }?
choicetable.attlist &=
global-atts,
[ a:defaultValue = "- topic/simpletable task/choicetable " ]
attribute class { text }?
chhead.attlist &=
global-atts,
[ a:defaultValue = "- topic/sthead task/chhead " ]
attribute class { text }?
chrow.attlist &=
global-atts,
[ a:defaultValue = "- topic/strow task/chrow " ]
attribute class { text }?
choptionhd.attlist &=
global-atts,
[ a:defaultValue = "- topic/stentry task/choptionhd " ]
attribute class { text }?
chdeschd.attlist &=
global-atts,
[ a:defaultValue = "- topic/stentry task/chdeschd " ]
attribute class { text }?
choption.attlist &=
global-atts,
[ a:defaultValue = "- topic/stentry task/choption " ]
attribute class { text }?
chdesc.attlist &=
global-atts,
[ a:defaultValue = "- topic/stentry task/chdesc " ]
attribute class { text }?
# ================== End DITA Task ===========================