Example: Correct the constraint for the machinery task

For DITA 1.3, the OASIS DITA TC failed to update the constraint for the machinery task. In this scenario, an information architect corrects that oversight; she makes the (new for DITA 1.3) <tasktroubleshooting> element available in the body of the machinery task.

Note: This example assumes that the information architect has already implemented her own document-type shell for the machinery task information type.
  1. She makes a copy of the machineryTaskbodyConstraint.mod file and renames it correctedMachineryTaskbodyConstraint.mod.
  2. She modifies the correctedMachineryTaskbodyConstraint.mod file to declare the entity for the <tasktroubleshooting> element and make it available at the correct place within the task body. (Her modifications are highlighted in bold below.)
    <!ENTITY taskbody-constraints
      "(topic task+taskreq-d machineryTaskbody-c)"
    >
    <!ENTITY % prelreqs                                        "prelreqs">
    <!ENTITY % context                                         "context">
    <!ENTITY % section                                         "section">
    <!ENTITY % steps                                           "steps">
    <!ENTITY % steps-unordered                                 "steps-unordered">
    <!ENTITY % steps-informal                                  "steps-informal">
    <!ENTITY % result                                          "result">
    <!ENTITY % tasktroubleshooting                             "tasktroubleshooting">
    <!ENTITY % example                                         "example">
    <!ENTITY % closereqs                                       "closereqs">
    
    
    <!ENTITY % taskbody.content
                  "((%prelreqs; |
                     %context; |
                     %section;)*,
                    (%steps; |
                     %steps-unordered; |
                     %steps-informal;)?,
                    (%result;)?,
                    (%tasktroubleshooting;)?,
                    (%example;)*,
                    (%closereqs;)?)"
  3. She updates her company-specific document-type shell to integrate the updated constraint.
  4. After updating the catalog.xml file to include the new constraints file, her work is done.