Specialization in processing
Specialized processing is not necessary for every specialized element,
only for those elements which do not have appropriate default behavior based
on their ancestors.
Whether creating a new transform or extending an existing one, there are
several rules that should be followed to ensure the effectiveness of the transform
for other specialized types, and also the maintainability and extensibility
of the transform to accommodate new requirements.
- Using the class attribute
Applying an XSLT template based on class attribute values allows a transform to be applied to whole branches of element types, instead of just a single element type.
- Processing specialized attributes
There are two kinds of specialized attributes: those specialized from props for conditional processing, and those specialized from base for other purposes.
- Processing foreign content
The default behavior for <foreign> is to try to display the content. If the processor cannot render the content, it may emit a warning. The default processing behavior for <unknown> is to suppress.
- Modularization and integration of processing
Processing should be divided into modules based on the structural types or domains they support, and can be integrated together into transforms or stylesheets in the same way that structural type and domain modules can be integrated into document types.
When you just need a difference in output, you can use DITA customization to override the default output without affecting portability or interchange, and without involving specialization.
- Modularization in CSS
Stylesheet support in CSS for DITA specializations can be applied using the same principles as for the DTDs or Schemas, resulting in stylesheets that are easy to maintain and that will support any subsequent specialization with a minimum of effort.
- Modularization in XSLT
Stylesheet support in XSLT for DITA specializations can be applied using the same principles as for the DTDs or Schemas, resulting in stylesheets that are easy to maintain and that will support any subsequent specialization with a minimum of effort.
Return to main page.
OASIS DITA Version 1.1 Architectural Specification -- Committee Specification, 31 May 2007
Copyright © OASIS Open 2005, 2007. All Rights Reserved.