140 likes | 315 Views
An introduction to DITA processing. Exploring aspects of the processing model. Title slide. Overview. Design points for the processing model Levels of DITA processing Special DITA considerations Application considerations Processing implementations
E N D
An introduction to DITA processing Exploring aspects of the processing model Title slide
Overview • Design points for the processing model • Levels of DITA processing • Special DITA considerations • Application considerations • Processing implementations Note: examples include output generated using “dita13” external toolkit.
Design points for the processing model • Separation of content from context, presentation, hence: • Multiple applications • Multiple outputs • Emphasis on typing and semantics • Role of specialization awareness in workflow components: • Editors • Processors
Levels of DITA processing– topics • Editor view • Literal, like the HTML model • Server-enhanced; client/server continuum • Dynamically modify the outbound XML for links,data; partial build, instilling relationships from the repository. • Built-out HTML/PDF • Full map-based instantiation of relationships
Levels of DITA processing – maps • Selection of topics from a content pool for a deliverable • Alternate maps for different delivery models (print vs user assistance) • Aggregation • Query- or filter-based views • Print-on-demand (user-selected) views • Navigator/topic sets • Navref • Instilling of relationships during static build versus dynamic transcoding
Special DITA considerations • Conref and xref resolution • Specialization awareness; defaults and overrides • Pushed navigation (related links from maps) • Metadata inheritance • Conditional processing (filtering/flagging) • Index and term processing • Localization – externalized strings • Generalization and respecializations • Normalization and denormalization • For DTD-free rendering (like the bookmap intermediate stage)
Application considerations • Preferred editor behaviors • Limitations of name-based style associations • CSS-like (source view, class-based selectors for style properties) • XSLT-based (result view, class-based transforms) • Content management • XML source management (no particular file bias) • Link management (aids to authors) • Non-text resources (access to graphics, multimedia, etc.) • Output behaviors • Push-based views (typical for content) vs Pull-based views (for example, sorting of related links based on attributes)
Processing implementations • DITA toolkit today • Envisioned: • Open Source based transforms • Commercial-off-the-shelf components • Editors, CMS • Transform suites • Final form tools (such as FO composers, help compilers) • Turnkey applications • Integrated tools • Supportive of particular tasks
DITA toolkit closeup • Goals: • Share the design for community feedback • Reference implementation • Enable a user community and shared contribution • Enable a drop-in implementation for vendors • Open Source intent (supported public implementation)
DITA Toolkit, continued • Features: • DTDs and Schemas • topic and core specializations: concept, task, reference • XSLT-based, specialization-aware transforms • Output transforms • Utility transforms • CSS stylesheets for presentation • Sample content (/doc and /samples directories) • Demo specializations • Ant build demos
DITA Toolkit, continued • Outputs: • HTML Web • HTML Help • JavaHelp • Eclipse Help • PDF • Other possibilities: • Help systems (for example, QT library help) • Word processing formats (round-trip vs single use considerations) • XHTML variants (for example, HTML-Mobile profile) • Other: troff, man, TeX, flat text, etc..
DITA Toolkit Demos • Review a fully processed /out directory • Live demo of eNote topic specialization: • Specialized output (override XSLT provides views and behaviors) • Default output (class-based support for archetype processors) • Live demo of map-driven “samples” tasks for web and PDF: • Sequential processing vs aggregation • XSL-FO rendering as an additional processor in the pipeline • Live demo of bookmap specialization: • Example of a specialized map • Enables more book-like processing on the aggregate • Candidate for TC consideration
Summary • The DITA toolkit is a reference implementation of many of the design behaviors for DITA processing: • Specialization awareness • Multiple map-based views • Multiple outputs • DTDs and Schemas with specialization design patterns • Next steps: • Work on the bookmap specialization • Identify any clarification needed for the model • Need agreement on standard organization for use by vendors • Movement toward Open Source maintenance
Further reading • DITA Toolkit, “DITA-ant.xml” and “DITA-tweaks.xml” • “V2-DITA Considerations for a DITA authoring/production system” • news://news.software.ibm.com:119/bp6r67$7v08$1@news.boulder.ibm.com • Discussion threads on processing pipeline models