60
DITA Quick Start Selvakumar T.S August 9, 2009 Cadence Confidential: Cadence Internal Use Only 1

DITA Quick Start

  • Upload
    selvats

  • View
    13.287

  • Download
    0

Embed Size (px)

DESCRIPTION

Gone through articles and presentations on the web and got a half-baked understanding of the Darwin Information Typing Architecture (DITA)? Refer to my DITA Quick Start presentation for the 2007 STC India Conference to learn to evaluate, plan and start implementing DITA. In this presentation, you will learn about the following: o Structured authoring and XML o Key DITA concepts: topics, maps, specialization o DITA architecture and content model o Authoring in topics o Organizing content using DITA maps o Creating relationship tables o Conditional text and reuse in DITA o Metadata support in DITA o DITA tools, standards and processes o Publishing with the DITA Open Toolkit

Citation preview

Page 1: DITA Quick Start

DITA Quick StartSelvakumar T.S

August 9, 2009 Cadence Confidential: Cadence Internal Use Only1

Page 2: DITA Quick Start

Agenda

• A quick look at XML• Understand DITA’s overall approach• Understand DITA’s core content structures and how you

can customize themU d t d th f i DITA• Understand the scope for reuse in DITA

• See DITA at work!!

August 9, 2009 Cadence Confidential: Cadence Internal Use Only2

Page 3: DITA Quick Start

A Quick Look at XML

August 9, 2009 Cadence Confidential: Cadence Internal Use Only3

Page 4: DITA Quick Start

The difference between HTML and XML• HTML defines how content is formatted in a web browser; XML defines

what the content is.

• HTML provides a set of predefined tags; XML provides a syntax that allows p p g ; p yusers to define their own tags.

XML is like a

HTML Example XML Example<ul>

<li>Joseph Clark</li> <family>

<father><name>Joseph Clark</name></father>

database!!

p<li>Mary Clark </li><li>Jennifer Clark</li> <li>Joseph Clark II</li>

<mother><name>Mary Clark</name></mother> <offspring>

<child><name>Jennifer Clark</name></child> Josep C a /<li>Taylor Clark</li>

</ul>

<child><name>Joseph Clark</name></child> <child><name>Taylor Clark</name></child>

</offspring> </family>

August 9, 2009 Cadence Confidential: Cadence Internal Use Only4

</family>

Page 5: DITA Quick Start

Extend tagging through elements and attributes to improve data accessibilityattributes to improve data accessibility• XML tagging can be extended as data access requirements change:

– For example, you can add a “surname” element to identify the last name for sorting purposes

• Attributes provide information about your data:– Adding an attribute called “gender” to the “child” element allows you to

distinguish boys from girlsdistinguish boys from girls– Examples of possible attribute applications for content:

• Product Name, Product Version, etc.

<?xml version=“1 0”?><?xml version= 1.0 ?><family>

<father><name>Joseph<surname>Clark</surname></name></father><mother><name>Mary <surname>Clark</surname</name></mother><offspring>

<child gender=“girl”><name>Jennifer<surname>Clark</surname></name></child> <child gender=“boy”><name.Joseph <surname>Clark</surname></name></child><child gender=“girl”><name>Taylor<surname>Clark</surname></name></child>

</offspring> </family>

August 9, 2009 Cadence Confidential: Cadence Internal Use Only5

</family>

Page 6: DITA Quick Start

Does extensibility lead to chaos?

• If XML allows custom elements and attributes, how do we ensure consistency of information and formatting across many authoring groups?groups?

• We define a Document Type Definition (DTD) that allows us to set rules:

Element definitions– Element definitions– Required or not?– Number of elements allowed and whether ordering rules apply

What the elements can contain– What the elements can contain• Other elements• Text• Attributes• Predefined attribute values

August 9, 2009 Cadence Confidential: Cadence Internal Use Only6

Page 7: DITA Quick Start

The benefits of XML

• XML is a text format that follows an open standard – Is not bound to proprietary authoring tools or formats

– Is platform-independent enabling easy information exchange– Is platform-independent, enabling easy information exchange

• Enables information reuse at the sub-document level– Hierarchical nesting of markup tags creates containers of content within

a documenta document

– Referencing an element includes the information contained within that element, allowing reuse of information at multiple levels of granularity: an entire topic, a set of steps or individual step; a glossary entry (term + p , p p; g y y (definition)

• Separates content from formatting– Different groups/formats can point to the same piece of content without g

reformatting or retagging the information

– Enables dynamic transformation of dataIf XML can do all this, why do we need XML standards for technical documentation?

August 9, 2009 Cadence Confidential: Cadence Internal Use Only7

y

Page 8: DITA Quick Start

Need for XML standards for technical documentation

• Document-centric XML didn’t grow nearly as fast as data-centric XML. XML standards bodies focused more

d i d don data-centric standards.• Home-built DTDs a challenge

“Companies often spend tens if not hundreds of thousands of dollars developing p p p gcustom DTDs, yet they often turn out to be inflexible and costly to maintain” - JoAnn Hackos, Comtech Services

• Need for more collaborative authoring within and across organizations

August 9, 2009 Cadence Confidential: Cadence Internal Use Only8

Page 9: DITA Quick Start

XML standards for technical documentation

• Two “popular” open source standards– DocBook

DITA– DITA• Each standard takes fundamentally different approaches• DocBook

– Best suited for linear content: books and articles.– DTD covers all possible authoring requirements. – Does not support truly modular content.pp y– Incomplete reuse and cross-referencing mechanisms– Difficult to customize the DocBook DTD. Customization is

through hiding of elements that are not required.g g

Does DITA solve core documentation challenges?

August 9, 2009 Cadence Confidential: Cadence Internal Use Only9

Page 10: DITA Quick Start

What is DITA?

• DITA = Darwin Information Typing Architecture• Developed by IBM• Now an OASIS (Organization for the Advancement of

Structured Information Standards) standardCurrent version: 1 1– Current version: 1.1

“We propose the XML-based Darwin Information Typing Architecture (DITA) as an end-to-end architecture for creating and delivering modular technical information.”

— Michael Priestley, IBM

August 9, 2009 Cadence Confidential: Cadence Internal Use Only10

Page 11: DITA Quick Start

High-Level DITA Architecture

• DITA XML architecture is based on a Topic DTD and a Map DTD

• DITA information architecture is based on topics ─ units of information that serve as building blocks for all contentcontent

• DITA maps assemble topics for specific documentation deliverables

August 9, 2009 Cadence Confidential: Cadence Internal Use Only11

Page 12: DITA Quick Start

Core design principles of DITA

• Topic orientation– Discrete units of information covering a specific subject with a specific

intent• Topic granularity

– Topics combine with other topics into information sets • Consistencyy

– DITA DTDs guarantee that DITA information types follow identical information structures

• Separation of content (specific topics) from context (links to other topics files navigation)topics, files, navigation)– Not just separation of content from formatting!!

• InheritanceHas a top level “generic” information type from which other types inherit– Has a top-level generic information type from which other types inherit their structures

• Specialization– Ability to extend basic information types for special uses

August 9, 2009 Cadence Confidential: Cadence Internal Use Only12

y yp p

Page 13: DITA Quick Start

Topics in DITATopics in DITA

Topic: a unit of information that is meaningful when it stands alonestands alone.

August 9, 2009 Cadence Confidential: Cadence Internal Use Only13

Page 14: DITA Quick Start

About DITA topics

• A chunk of information specific to a single subject.• Short enough to be specific to a single subject or answer

a single question.• Long enough to make sense on its own and be authored

as a unitas a unit.• Each topic must follow the rules for a specific

information type.yp• DITA prescribes three information types:

– ConceptT k– Task

– Reference

• Topic files can have the .dita or .xml extension

August 9, 2009 Cadence Confidential: Cadence Internal Use Only14

p

Page 15: DITA Quick Start

Information types in DITADITA’s base

information type

Conceptual orConceptual or overview

information Reference information

Procedural, step-by-step

information

Can I have a topic that has a mix of information types?

August 9, 2009 Cadence Confidential: Cadence Internal Use Only15

Page 16: DITA Quick Start

Why only 3 information types?• Standards like Information Mapping have six information types:

– Procedure– Process– Structure– Concept– Principle– Fact

• IBM itself had 12 information types before DITA:C t l– Conceptual

– Error– General Reference– Glossary– Language Referenceg g– Mapping– Orientation– Sample– Task

Troubleshooting– Troubleshooting– UI Reference– Walkthrough/Tutorial

Why only three information types in DITA?

August 9, 2009 Cadence Confidential: Cadence Internal Use Only16

Why only three information types in DITA?

Page 17: DITA Quick Start

Why only 3 information types in DITA?

• DITA considers that other information types are basically derivatives of the three core information types: Concept, T k d R fTask and Reference.

• If required, you can customize the core information types to derive other information types using DITAto derive other information types using DITA specialization.

• Bottomline: DITA does not claim to cover all requirements. It covers a base set or requirements and allow other requirements to be covered by extensions.

August 9, 2009 Cadence Confidential: Cadence Internal Use Only17

Page 18: DITA Quick Start

Concept topics

• Concept topics introduce the background or overview information for task or reference topics.

• Concept topics should not describe task or reference information.

• Concept topics have the restriction that following a• Concept topics have the restriction that following a section or example, only other sections or examples are permitted as content. This ensures that readers are not confused about the content between sections or examples.

• Chunking rule: In a concept topic explain only oneChunking rule: In a concept topic, explain only one concept.

August 9, 2009 Cadence Confidential: Cadence Internal Use Only18

Page 19: DITA Quick Start

Concept topic structure

<concept><title><titlealts>

<navtitle><searchtitle><shortdesc><prolog><conbody>

<section> | <example><section> | <example><related-links>

August 9, 2009 Cadence Confidential: Cadence Internal Use Only19

Page 20: DITA Quick Start

Concept topic example

August 9, 2009 Cadence Confidential: Cadence Internal Use Only20

Page 21: DITA Quick Start

Task topics

• Task topics describe the steps of a particular task, or provide an overview of a higher-level task.

• Task topics should not describe conceptual or reference information.

• Chunking rule: In a task topic describe how to do only• Chunking rule: In a task topic, describe how to do only one task.

August 9, 2009 Cadence Confidential: Cadence Internal Use Only21

Page 22: DITA Quick Start

Task topic structure

<task><title><titlealts><shortdesc><prolog>p g<taskbody>

<prereq><context><context><steps><result><example><example><postreq>

<related-links>

August 9, 2009 Cadence Confidential: Cadence Internal Use Only22

Page 23: DITA Quick Start

Task topic example

August 9, 2009 Cadence Confidential: Cadence Internal Use Only23

Page 24: DITA Quick Start

Reference topics

• Reference topics provide quick access to facts. They describe product features, commands, and so on.

• Information needed for deeper understanding of a reference topic or to perform related procedures should be provided in a concept or task topicbe provided in a concept or task topic.

• Reference topics should be designed for quick scanning of information using lists, tables, and such.

• Reference topics should not describe conceptual or task information.

• Chunking rule: In a reference topic explain only one• Chunking rule: In a reference topic, explain only one subject─for example, explain only one command.

August 9, 2009 Cadence Confidential: Cadence Internal Use Only24

Page 25: DITA Quick Start

Reference topic structure

<reference><title><titlealts><shortdesc><prolog>p g<refbody>

<example> | <section> | <refsyn> | <table> | <simpletable> | <properties>p p

<related-links>

August 9, 2009 Cadence Confidential: Cadence Internal Use Only25

Page 26: DITA Quick Start

Reference topic example

August 9, 2009 Cadence Confidential: Cadence Internal Use Only26

Page 27: DITA Quick Start

Why structure topics by information type?

• Benefits for Writers– Standard, consistent structures for authoring content– Writers can use topic types to more effectively outline information

dneeds– Helps to analyze information according to the purpose or function it

serves for the reader– Organizing common types of information with topics help writers spend

ti f d th i t tmore time focused on authoring content– Choice for selecting the best and most consistent way to present

information, based on information type– Identify missing information– Breaking down information into chunks helps in better planning and

work distribution among writers• Benefits for Users/Readers

– Standard content structure helps readers to quickly identify a topic’sStandard content structure helps readers to quickly identify a topic s purpose

– Readers learn and retain different types of information better when they are written in a consistent, predictable way

August 9, 2009 Cadence Confidential: Cadence Internal Use Only27

Page 28: DITA Quick Start

DITA Maps

DITA maps assemble topics into a coherent set for documentation deliverablesfor documentation deliverables.

August 9, 2009 Cadence Confidential: Cadence Internal Use Only28

Page 29: DITA Quick Start

About DITA maps

• Ability to reuse and repurpose the same content for different deliverable types and for deliverables for diff di d ddifferent audiences and products.

• Maps can include DITA topic (.dita) files, XML (.xml), files HTML files PDFs and morefiles, HTML files, PDFs, and more.

• Same topic can be referred to more than once in a map or in different maps.

• Maps can be nested into other maps to build documentation deliverables.

• Maps can be combined together manually or using• Maps can be combined together manually or using scripts during the production process.

• DITA map files have the .ditamap extension.

August 9, 2009 Cadence Confidential: Cadence Internal Use Only29

p p

Page 30: DITA Quick Start

Different deliverables using DITA maps

Topic 1Quick Start Guide

Topic 2 UserGuide

Topic 3

Reference

Topic 4

August 9, 2009 Cadence Confidential: Cadence Internal Use Only30

Page 31: DITA Quick Start

Different formats using DITA maps

August 9, 2009 Cadence Confidential: Cadence Internal Use Only31

Page 32: DITA Quick Start

Map structure

<map><topichead><topicref><reltable><anchor><navref><topicgroup><topicmeta><topicmeta>

August 9, 2009 Cadence Confidential: Cadence Internal Use Only32

Page 33: DITA Quick Start

DITA Map example

• Example of DITA map in XMetaL

August 9, 2009 Cadence Confidential: Cadence Internal Use Only33

Page 34: DITA Quick Start

DITA maps do more!!

• Separate of content (specific topics) from context (links to other topics, files, navigation)– Links are specified in the DITA map and not in the topic file itself. Helps topics remain p p p p p

“stand alone”.– Links are automatically generated for the topics from the DITA maps. Helps automatically

update links if topic title or topic file location changes. • Build a relationship table to generate “related topics” links

– Goes beyond sequential orderingGoes beyond sequential ordering– Similar to creating cross references, but moves linking mechanism from content into the

map– Links are generated only in the output version of the topics– Increases reusability—no broken links when taking a piece of content out of context

Sets properties of the topic at a position within the hierarchy• Sets properties of the topic at a position within the hierarchy– Properties include the title and metadata– Can change the topic title relative to the parent topic– Metadata can identify a topic as advanced for one deliverable and basic for another

• Can provide multiple views on the same topics: by product, by task, by topic type,Can provide multiple views on the same topics: by product, by task, by topic type, audience and so on.

August 9, 2009 Cadence Confidential: Cadence Internal Use Only34

Page 35: DITA Quick Start

Metadata Support in DITA

August 9, 2009 Cadence Confidential: Cadence Internal Use Only35

Page 36: DITA Quick Start

Metadata support in DITA

• DITA supports a variety of standard and custom metadata:– Author information– Copyright information– Product information– Resource IDs for help systems– Document tracking information

Audience information– Audience information– Keywords– Custom metadata (otherprops)

• Metadata is supported using the <prolog> element in topics and <topicmeta> in maps.

• Metadata at every level !!

August 9, 2009 Cadence Confidential: Cadence Internal Use Only36

• Metadata at every level !!

Page 37: DITA Quick Start

Metadata elements within <prolog> element

<prolog><author> (name of topic’s author)<copyright><critdates> (document tracking information)<permissions><publisher><source><source><metadata>

<audience> (intended audience)type=“user | purchaser | administrator | … | other”othertype=othertype=job=“installing | customizing | administering | … | other”otherjob=experiencelevel=“novice | general | expert”

<category> (content category used for grouping topics)<category> (content category used for grouping topics)<keywords> (keywords for search engines)<prodinfo><othermeta>

August 9, 2009 Cadence Confidential: Cadence Internal Use Only37

Page 38: DITA Quick Start

Reuse in DITA

August 9, 2009 Cadence Confidential: Cadence Internal Use Only38

Page 39: DITA Quick Start

Reuse in DITA

• Reuse flows from the topic-based paradigm– Topics can be reused in different contexts– Topics from multiple components can be integrated as a solution

• Reuse methods– Element-level reuse with <conref>Element level reuse with <conref>– Topic-level reuse with <topicref>– Map-level reuse with <navref> and <anchorref>

C diti l– Conditional reuse

August 9, 2009 Cadence Confidential: Cadence Internal Use Only39

Page 40: DITA Quick Start

Element level reuse with <conref>

• Conrefs are a way to reference content from the same or another DITA fileExample– Code in source file source.dita:

<step id="commonstep"><cmd>This step exists in a common file and is addedp p pwith a conref.</cmd></step>

– Code in target file B:<step conref=“source.dita#task/commonstep"><cmd></cmd></step>

Note that the <cmd> tags are included even through they will bereplaced by the conreffed information.

August 9, 2009 Cadence Confidential: Cadence Internal Use Only40

Page 41: DITA Quick Start

Conditional reuse

• DITA gives you four ways of tagging conditionally using AND/OR logic:

Audience– Audience– Platform– Product

Otherprops– OtherpropsExample:The king and queen of Olympus are <ph

di " k">Z </ h>< h di " ">J it </ h>audience="greek">Zeus</ph><ph audience="roman">Jupiter</ph> and <ph audience="greek">Hera</ph><ph audience="roman">Juno</ph>.

When audience=“greek” is set to include this reads– When audience= greek is set to include, this readsThe king and queen of Olympus are Zeus and Hera.

– When audience=“roman” is set to include, this readsThe king and queen of Olympus are Jupiter and Juno.

August 9, 2009 Cadence Confidential: Cadence Internal Use Only41

e g a d quee o O y pus a e Jup te a d Ju o

Page 42: DITA Quick Start

Specialization in DITA

August 9, 2009 Cadence Confidential: Cadence Internal Use Only42

Page 43: DITA Quick Start

Topics inherit from DITA’s base “Topic”…

…making it possible to extend through specialization.

August 9, 2009 Cadence Confidential: Cadence Internal Use Only43

Page 44: DITA Quick Start

Specialization

• Inheritance means that new document structures don’t breakInheritance means that new document structures don t break publishing toolchains

• Specialization can occur in topics, maps, or domains

August 9, 2009 Cadence Confidential: Cadence Internal Use Only44

Page 45: DITA Quick Start

Specialization: Specializing Topics

• Topic is the core.• Each specialization is a delta in design, and if it needs

special processing that's a delta too.

August 9, 2009 Cadence Confidential: Cadence Internal Use Only45

Page 46: DITA Quick Start

Specialization: Specializing Maps

• While DITA maps are flexible by default, you can use map specialization to define or enforce a particular type of sequenceof sequence.

August 9, 2009 Cadence Confidential: Cadence Internal Use Only46

Page 47: DITA Quick Start

Specialization: Specializing Domains• DITA domains extend DITA with a set of elements whose names

and content models are unique to an organization or field of knowledge. For example, you may have elements specific to d ti ftdocumenting software.

• Specialization lets domain-specific elements inherit from existing elements.

August 9, 2009 Cadence Confidential: Cadence Internal Use Only47

Page 48: DITA Quick Start

DITA Tools

August 9, 2009 Cadence Confidential: Cadence Internal Use Only48

Page 49: DITA Quick Start

DITA tools

• Modeling tools– IBM Task Modeler-for creating DITA maps

(http://www.alphaworks.ibm.com/tech/taskmodeler)( p p )• Authoring tools

– Arbortext Epic Editor (http://www.ptc.com/)– XMetal (http://www.justsystems.com/)– Syntext Serna (http://www.syntext.com)– FrameMaker 8 with Adobe FrameMaker 8 Plug-in for DITA Open

Toolkit (http://www adobe com/devnet/framemaker/fm8 opentoolkit html)(http://www.adobe.com/devnet/framemaker/fm8_opentoolkit.html)

– DITA Storm (browser-based DITA editor) (http://www.ditastorm.com/onlineDitaEditor.html)

• Production tools– DITA Open Toolkit (http://dita-ot.sourceforge.net/)

• Content management systems– Astoria CMS, EMC Documentum, PTC Windchill, SiberLogic Sibersafe,

V t CMS

August 9, 2009 Cadence Confidential: Cadence Internal Use Only49

Vasont CMS ….

Page 50: DITA Quick Start

IBM Task Modeler for DITA maps

• IBM was using Rational Rose XDE Developer for content modeling

• Need for a customized modeling tool resulted in the IBM Task Modeler: http://www alphaworks ibm com/tech/taskmodelerhttp://www.alphaworks.ibm.com/tech/taskmodeler

• Eclipse-based plugin for modeling tasks and designing DITA maps

August 9, 2009 Cadence Confidential: Cadence Internal Use Only50

Page 51: DITA Quick Start

DITA Open Toolkit: the DITA production pipelineP id th th i d d ti i f t t f DITA• Provides the authoring and production infrastructure for DITA.

• Open source: http://dita-ot.sourceforge.net/• Supported outputs:

HTML– HTML– XHTML– Eclipse help– HTML Helpp– Java Help– PDF using XSL-FO

August 9, 2009 Cadence Confidential: Cadence Internal Use Only51

Page 52: DITA Quick Start

DITA Open Toolkit

• Consists of DTD, XML schema, stylesheets, samples, and documentation for DITA.

• Open source infrastructure • Ant for builds• FOP for XSL-FO to PDF• Xalan or Saxon for XSL-T processing to HTML/xHTML output• Java

August 9, 2009 Cadence Confidential: Cadence Internal Use Only52

Page 53: DITA Quick Start

DITA Resources

August 9, 2009 Cadence Confidential: Cadence Internal Use Only53

Page 54: DITA Quick Start

DITA Resources

• DITA Standard OASIS DITA Technical Committee http://www.oasis-

/ i /diopen.org/committees/dita• DITA Articles

– XML Cover Pages: http://xml coverpages org/dita htmlXML Cover Pages: http://xml.coverpages.org/dita.html– DITA Users: http://www.ditausers.org/– http://dita.xml.org

htt // 128 ib /d l k / l/lib / dit 1/– http://www-128.ibm.com/developerworks/xml/library/x-dita1/– http://www.slideshare.net/search/slideshow?q=DITA

• Books on DITA– Introduction to DITA: A User Guide to the Darwin Information

Typing Architecture by Jen Linton and Kylene Bruski, Comtech Services ( http://www.comtech-serv.com/dita.shtml )

August 9, 2009 Cadence Confidential: Cadence Internal Use Only54

( p )

Page 55: DITA Quick Start

DITA Resources

• DITA Demos / Webinars– FrameMaker 8 Deep Dive: DITA Topic-based authoring

htt // d i d b b t / 227210/ 76122134/https://admin.adobe.acrobat.com/_a227210/p76122134/– <several>

• DITA User Groupsp– http://groups.yahoo.com/group/dita-users/– http://groups.yahoo.com/group/framemaker-dita/

http://dita xml org/user groups– http://dita.xml.org/user-groups

August 9, 2009 Cadence Confidential: Cadence Internal Use Only55

Page 56: DITA Quick Start

Real life DITA examples

• WebSphere Application Server Documentation http://www-306 ibm com/software/webservers/appserv/was/library/306.ibm.com/software/webservers/appserv/was/library/

• Adobe Creative Suite documentation• Adobe Acrobat documentation• Apache Derby documentation• Eclipse documentation

August 9, 2009 Cadence Confidential: Cadence Internal Use Only56

Page 57: DITA Quick Start

DITA Demo

August 9, 2009 Cadence Confidential: Cadence Internal Use Only57

Page 58: DITA Quick Start

Typical DITA workflowUse DITA maps

for content modeling !!

1. Identify the task topics.2. Identify the concept and reference topics needed to

support the task topics.3. Create the topics.4 U DITA t bl t i f h4. Use DITA maps to assemble topics for each

documentation deliverable.5. Publish and deliver the content.5. Publish and deliver the content.

Eclipse helpJavaHelpHTMLHelp

Write BuildArchitectEclipse helpJavaHelpHTMLHelp

Write BuildArchitect Write BuildArchitect

HTMLHelpWeb pagesBooks & PDFsLearning

Information BuildTopics Outputs

HTMLHelpWeb pagesBooks & PDFsLearning

Information BuildTopics OutputsInformation BuildTopics Outputs

August 9, 2009 Cadence Confidential: Cadence Internal Use Only58

Information Architecture

Map

BuildMaps

Topics OutputsInformation Architecture

Map

BuildMaps

Topics OutputsInformation Architecture

Map

BuildMaps

Topics Outputs

Page 59: DITA Quick Start

August 9, 2009 Cadence Confidential: Cadence Internal Use Only59

Page 60: DITA Quick Start

Thanks for your participation!!Thanks for your participation!!y p py p p