SlideShare a Scribd company logo
Are You Getting the Most Out
of DITA Content Reuse?
Keith Schengili-Roberts
IXIASOFT
2/8/2016 TC Dojo Open Session 1
Agenda
• Introduction
• Content Reuse in DITA: The Mechanics
– A look at the tools in DITA for creating reusable
content
• Content Reuse in DITA: How to Make it Work
– Making reusable content efficient and findable
• Q/A
2/8/2016 TC Dojo Master Session 2
Who’s This Guy?
Keith Schengili-Roberts, DITA Specialist
with IXIASOFT
What I do:
• DITA evangelist
• Liaison with OASIS; on DITA Adoption
and Technical Committees
• Industry researcher
• Also lecturer on Information
Architecture at the University of
Toronto
• Have 10+ Years of experience with
DITA XML
2/8/2016 TC Dojo Master Session 3
Am Also “DITAWriter”
• Industry blog started ~5
years ago
• Just over 185,000 hits
• Have regularly updated info
on DITA Conferences, DITA
Books, Companies Using
DITA, DITA CMSes, DITA
Editors, other DITA Tools,
and DITA Consulting Firms
• News and views on DITA use
• Also features interviews
with those making a
difference in the world of
DITA
DITA Reuse in DITA: The
Mechanics
A look at the tools in DITA for creating
reusable content
The Levels of DITA Reuse
• Structural (ditamap, map)
• Topic
• Conref (and Conkeyref, and Conref “push”)
• Conditional processing
• Keys
• Metadata to help find content to reuse (more
on this later)
2/8/2016 TC Dojo Master Session 6
Matryoshka (Russian Doll) Reuse
• With each of these
levels, it is possible to
add the next sub-level of
reuse
• So a reused map might
(for example) contain a
topic from another map,
which in turn uses a
conref, conditional
processing and keys
Structural Reuse
• Highest-most level of reuse, involving reuse of
entire ditamaps and maps
• ditamaps: goes hand-in-hand with either
conditional processing and/or keys
• maps: ditto above, but when used as
“chapters” can also be published as separate
documents
– IXIASOFT documents use both scenarios
2/8/2016 TC Dojo Master Session 8
Topic Reuse
• At its easiest, it is
simply taking a topic
and using it elsewhere
• Can be done at the
topicref level, or by
using a conref (+ key)
• May also involve use of
conditions and keys
used within the map
2/8/2016 TC Dojo Master Session 9
Conrefs
• Involves taking
paragraph(s), sentences
or phrases
– Handy when you just
want to reuse
something smaller
than a whole topic
• Requires addition of an
ID to the conref being
targeted
– This should be
coordinated with others
– Should use a standard
style/convention
Conref target elsewhere in the same file:
conref="#topicID"
Conref first topic in a different file:
conref="filename.xml"
Conref specific topic in a different file:
conref="filename.xml#topicID"
Local target:
conref="#topicID/elementID"
Conref to specific element reference in a
different file:
conref=
"filename.xml#topicID/elementID"
Conref to element in a different map:
conref=
"othermap.ditamap#elementID"
Avoid Spaghetti Conrefs!
• Avoid having nested
conrefs (i.e. conrefs that
contain conrefs), or
conrefs that could be
subject to change
• IXIASOFT DITA CMS
includes a specialization
designed specifically for
holding conref-able
content
– Can do the same thing by
simply agreeing to have
conref-able content on
designated topics
Conref-ing Down the Rabbit Hole
• There’s reuse, and then
there’s ridiculous levels of
reuse: you could for
example conref every
single letter in your topics
– There comes a point where
making the conref takes
more time than simply
writing “new” content
• In general, don’t conref
below the level of a
phrase
Conkeyrefs (Conref “Pull”)
• These are indirect content
references defined by
keys at the map level
• Good for pulling in short,
term values referenced
elsewhere
– It “pulls” in values
referenced elsewhere
• Pro: Change terms easily
by pointing to different
values in the referred
topic
• Con: referred topic needs
to be managed over time
• Might want to organize your
conkeyref targets in a table:
• Which can then be referenced
elsewhere:
Conref Push
• Designed to “push”
content at a marked place
• Pro: perfect for a “quick
fix” where you need to
insert something
• Con: arguably trickier/less
straightforward than keys;
without good
communication can lead
to unwanted surprises for
other writers
• Example from Kris Eberlein’s article on conref
push at: http://dita.xml.org/resource/dita-
12-feature-article-conref-push
Original topic with id added:
Conref “push” topic that points to id in original
topic, then specifies content to include:
Resulting output:
Conditional Processing (Profiling)
• Allows conditions to be
applied within topics so
that elements can be
included or excluded
during output processing:
DITAVAL is your friend!
• Pro: great for creating
content aimed at multiple
audiences
• Con: can become
unwieldy as more
conditions that are added
Sample DITAVAL file:
<val>
<prop action="exclude"/>
<prop action="include" att="audience"
val="everybody"/>
<prop action="include" att="audience"
val="novice"/>
<prop action="include" att="product"
val="productA"/>
<prop action="include" att="product"
val="productB"/>
</val>
This example excludes all
values not specified in the
DITAVAL, and includes
audience=everybody and
novice plus product=product
and productB
Recommended Best Practices for
Conditional Processing
• Write your conditions as you create you content
– And keep track of what you use!
– A good internal Style Guide will state commonly used
conditions and expected values
• Don’t go overboard: if things appear to be getting
too complex, they probably are. Consider writing
separate topics
• Test your output! There’s nothing worse than
revealing content not intended for a particular
audience / product
Keys
• An indirect
addressing
mechanism where
key names are
attached to
resources which are
then referenced
elsewhere
• Very flexible, highly
adaptable
file.dita:
<topic id="topicid">
<title>Example referenced
topic</title>
<body>
<section id="section-
01">Some content.</section>
</body>
</topic>
Key definition defined in the map:
<map>
<topicref keys="myexample"
href="file.dita"/>
</map>
Best Practice for Keys
• Eliot Kimber’s opinion: “use keys everywhere”
– I really think he’s on to something
• Basically there are two types of keys: resource
and navigation only
– Resource keys link to URLs, images, etc., contained
in “warehouse” topics
– Navigation keys (or “normal keys”), which are
named key for topic links
 Eliot also recommends using keys with conrefs
(conkeyref)
2/8/2016 TC Dojo Master Session 18
DITA Reuse Metrics
• Arguably the most
influential article on this
topic is Bill Hackos’ “Reuse
of DITA Topics? What is the
Best Metric to Measure the
Success of Your Reuse of
DITA Topics?”
(http://ow.ly/X7mzM)
• Percent Repository Words
Reused in Context = (Words
in All Produced Content –
Words in the
Repository)/(Words in the
Repository)
Example Based on IXIASOFT DITA
Documents for 2015
Based on 2015 numbers:
• Total number of words in the repository: 268,663
• Words in All Produced Content: 623,078
• PRWRC = (623,078* – 268,663)/268,663
• PRWRC = 354,415 / 268,663 = 132%
• How is 100%+ reuse value possible?
– Easy: DITAVAL
– We have number of publications that are created based on a
series of DITAVAL value, as much as 21 per bookmap
Content Reuse in DITA:
How to Make it Work
Making reusable content efficient and
findable
The Human Angle
• So far we have only talked about the
mechanics, but it is people who have to make
this work (with or without benefit of a CCMS)
• Past the mechanics, effective reuse within a
documentation team comes down to:
– Writing content for reuse
– Finding content to reuse
– Communicating about reusable content
2/8/2016 TC Dojo Master Session 22
Moving from Legacy Content
• Few who move to
DITA have the luxury
of starting fresh;
legacy content needs
to be converted
• Do an audit of this
material, look for
what is common
• Port only the content
that will be used in
the future
Create a Reuse Strategy
Once the content audit is
done, think about:
• Naming conventions for
filenames, IDs, etc.
• Determine how granular
reuse will be: topic,
element or phrase
• What criteria to use when
content should be forked
Add this material to your
DITA Style Guide!
Communicate About Reusable
Content
• Create metadata to
describe your content to
make it findable
• Determine where and
what reusable content
will be stored
• Coordinate about how
and when content can be
reused within the team
Prevent this from happening!
Don’t Go Overboard
Evaluate reuse efforts
against the returns:
• It is just easier to simply
write “Click OK” rather
than conref-ing it
“Apples to apples, dogs to
ducks”
• When things are very
different, don’t try to
squeeze reuse out of
them
Knock Down Those Silos!
• Effective reuse means
that content can no
longer be siloed
• By necessity, content
“ownership” needs to be
shared and
communicated
– One person or group
should not “own” their
content, and change to
content that is already
shared needs to be
coordinated
Writing Content for Reuse
• Keep things concise:
content reuse and
minimalism go hand-in-
hand!
• Omit terms like “see the
following” or “the above
image…” etc.
• Think about reuse
possibilities as you write
– DITA content is inherently
modular, so drop any
pretense of narrative
Finding Content for Reuse
• Solution: devise effective metadata and tag your
topics accordingly!
• Use descriptive titles
• Use short descriptions!
Further Reading
• “DITA 1.2 feature article: conref push”, by Kris Eberlein
(dita.xml.org/resource/dita-12-feature-article-conref-push)
• “The Elusive Promise of Content Reuse” by Leigh White
(article: ow.ly/XS0qs, SlideShare: ow.ly/XS0vb)
• “Managing Deliverable-Specific Link Anchors: New
Suggested Best Practice for Keys (YouTube: ow.ly/XS0gz)
• “@conref @conkeyref @conrefpush: Reuse Strategies in
DITA When Migrating Legacy Content” by Adam Sanyo
ow.ly/XS0db
• “Reuse of DITA Topics? What is the Best Metric to Measure
the Success of Your Reuse of DITA Topics?” by Bill Hackos
ow.ly/X7mzM
2/8/2016 TC Dojo Master Session 30
Questions?
robertsk@ixiasoft.com
@KeithIXIASOFT

More Related Content

PPTX
DITA and Agile Are Made For Each Other
PPTX
Optimizing Content Reuse with DITA
PDF
The Evolution of DITAs
PPTX
How to Optimize Your Metadata and Taxonomy
PPTX
Optimizing DITA Content for Search Engine Optimization tekom tcworld 2016
PPTX
Optimizing Content Reuse with DITA - LavaCon Webinar with Keith Schengili-Rob...
PPTX
Agile Content Development and the IXIASOFT DITA CMS
PPTX
DITA and SEO
DITA and Agile Are Made For Each Other
Optimizing Content Reuse with DITA
The Evolution of DITAs
How to Optimize Your Metadata and Taxonomy
Optimizing DITA Content for Search Engine Optimization tekom tcworld 2016
Optimizing Content Reuse with DITA - LavaCon Webinar with Keith Schengili-Rob...
Agile Content Development and the IXIASOFT DITA CMS
DITA and SEO

What's hot (20)

PPTX
DITA Surprise, Unwrapping DITA Best Practices - tekom tcworld 2016
PPTX
Lean and Collaborative Content - Workshop
PPTX
Metrics for continual improvements - Nolwenn Kerzreho LavaconDublin2016
PDF
Reports and DITA Metrics IXIASOFT User Conference 2016
PPTX
Improve your Chances for Documentation Success with DITA and a CCMS LavaCon L...
PDF
Troubleshooting: The Two Laws - IXIASOFT User Conference 2016
PPTX
How and When to Switch to Structured Content - Workshop
PPTX
The DITA Iceberg, DITA Europe 2016
PDF
Short Descriptions Shouldn't Be a Tall Order: Writing Effective Short Descrip...
PDF
Dita Metrics in Production: How, When, Where, and Why (and How Much) Redux
PPT
DITA 1.3 Keyscopes
PDF
Overview of DITA 1.3
PPT
Collaborative authoring in DITA
PDF
(Almost) Four Years On: Metrics, ROI, and Other Stories from a Mature DITA CM...
PDF
Managing Localization from End-to-end - Going Global with DITA
PDF
DITA Interoperability
PPTX
"Conref, conkeyref, conrefpush" - reuse strategies in DITA when migrating leg...
PPTX
DITA Quick Start Webinar: Defining Your Style Sheet Requirements
PPTX
Introduction to Structured Authoring
PPTX
Managing Deliverable-Specific Link Anchors: New Suggested Best Practice for Keys
DITA Surprise, Unwrapping DITA Best Practices - tekom tcworld 2016
Lean and Collaborative Content - Workshop
Metrics for continual improvements - Nolwenn Kerzreho LavaconDublin2016
Reports and DITA Metrics IXIASOFT User Conference 2016
Improve your Chances for Documentation Success with DITA and a CCMS LavaCon L...
Troubleshooting: The Two Laws - IXIASOFT User Conference 2016
How and When to Switch to Structured Content - Workshop
The DITA Iceberg, DITA Europe 2016
Short Descriptions Shouldn't Be a Tall Order: Writing Effective Short Descrip...
Dita Metrics in Production: How, When, Where, and Why (and How Much) Redux
DITA 1.3 Keyscopes
Overview of DITA 1.3
Collaborative authoring in DITA
(Almost) Four Years On: Metrics, ROI, and Other Stories from a Mature DITA CM...
Managing Localization from End-to-end - Going Global with DITA
DITA Interoperability
"Conref, conkeyref, conrefpush" - reuse strategies in DITA when migrating leg...
DITA Quick Start Webinar: Defining Your Style Sheet Requirements
Introduction to Structured Authoring
Managing Deliverable-Specific Link Anchors: New Suggested Best Practice for Keys
Ad

Viewers also liked (7)

PDF
Dita 4 Dummies
PDF
Can Reuse Be Sexy?
PPTX
Poster: Cross-Document Linking in DITA
PPTX
Managing Deliverable-Specific Link Anchors: New Suggested Best Practice for Keys
PDF
Lightweight DITA: A pre/overview
PDF
The Trip to DITA
PDF
Using DITA without becoming a Geek
Dita 4 Dummies
Can Reuse Be Sexy?
Poster: Cross-Document Linking in DITA
Managing Deliverable-Specific Link Anchors: New Suggested Best Practice for Keys
Lightweight DITA: A pre/overview
The Trip to DITA
Using DITA without becoming a Geek
Ad

Similar to TC Dojo Open Session: Are You Getting the Most Out of DITA Content Reuse? (20)

PPTX
Adam Sanyo - Conref, conkeyref, conrefpush: Reuse strategies when working on ...
PPTX
Alan DITA best practices
PDF
LavaCon 2017 - Implementing a Customer-driven Transition to DITA Content: A S...
PDF
Sprinting to Success: Why Agile and DITA Work So Well Together
PDF
Topic-oriented writing at McAfee
PDF
Passport to DITA Implementation CIDM April 2017
PPT
Topic based and structured authoring - slides
PPT
Topic based and structured authoring - slides
KEY
Drupalcon cph
PPTX
Connecting Intelligent Content with Micropublishing and Beyond
PPT
The Elusive Promise of Reuse
PDF
Developing dita maps
PPT
Topic-based Authoring and Reuse
PPTX
The Road to DITA
PDF
Twig in the Wild
PDF
S doherty counting_dragons_dita-reuse
PPTX
IA& Taxonomy Planning for SharePoint Online & Office 365
PPT
The Elusive Promise of Reuse
PPT
Painless XML Authoring?: How DITA Simplifies XML
PDF
How to guarantee your change is integrated to Moodle core
Adam Sanyo - Conref, conkeyref, conrefpush: Reuse strategies when working on ...
Alan DITA best practices
LavaCon 2017 - Implementing a Customer-driven Transition to DITA Content: A S...
Sprinting to Success: Why Agile and DITA Work So Well Together
Topic-oriented writing at McAfee
Passport to DITA Implementation CIDM April 2017
Topic based and structured authoring - slides
Topic based and structured authoring - slides
Drupalcon cph
Connecting Intelligent Content with Micropublishing and Beyond
The Elusive Promise of Reuse
Developing dita maps
Topic-based Authoring and Reuse
The Road to DITA
Twig in the Wild
S doherty counting_dragons_dita-reuse
IA& Taxonomy Planning for SharePoint Online & Office 365
The Elusive Promise of Reuse
Painless XML Authoring?: How DITA Simplifies XML
How to guarantee your change is integrated to Moodle core

More from IXIASOFT (19)

PDF
Managing a Distributed Content Cycle
PDF
The Intricacies of DITA Content Localization
PPTX
A Brief Look at DITA in Current Technical Communication Practices_SIGDOC 2017
PDF
Produce Reliable Content with DITA CMS
PDF
Collaborating with SMEs - CIDM's Ride - June 2017
PPTX
IXIASOFT Japanese Subsidiary Announcement
PDF
Is DITA Right for You? - STC Summit 2017
PDF
Using Markdown and Lightweight DITA in a Collaborative Environment
PDF
Style Guides: Fashionable But Also Practical - TC Dojo, Single Sourcing
PDF
Industrie 4.0: une opportunité pour un contenu plus intelligent - Documation ...
PPTX
10 Million Dita Topics Can't Be Wrong
PPTX
Upgrading PDF Plugins to DITA_DITA-OT Day 2016
PPTX
Localization and DITA: What you Need to Know - LocWorld32
PPTX
Tackle your Documentation Challenges with the IXIASOFT DITA CMS
PDF
Fluid Topics IIXASOFT User Conference 2016 Presentation
PDF
Zoomin Presentation at IXIASOFT User Conference 2016
PDF
Move Our DITA Content to Another CCMS? Seriously? - IXIASOFT User Conference ...
PDF
Using DRM at Infor - IXIASOFT User Conference 2016
PDF
Maximize Your oXygen Usage - oXygen XML, Syncro Soft
Managing a Distributed Content Cycle
The Intricacies of DITA Content Localization
A Brief Look at DITA in Current Technical Communication Practices_SIGDOC 2017
Produce Reliable Content with DITA CMS
Collaborating with SMEs - CIDM's Ride - June 2017
IXIASOFT Japanese Subsidiary Announcement
Is DITA Right for You? - STC Summit 2017
Using Markdown and Lightweight DITA in a Collaborative Environment
Style Guides: Fashionable But Also Practical - TC Dojo, Single Sourcing
Industrie 4.0: une opportunité pour un contenu plus intelligent - Documation ...
10 Million Dita Topics Can't Be Wrong
Upgrading PDF Plugins to DITA_DITA-OT Day 2016
Localization and DITA: What you Need to Know - LocWorld32
Tackle your Documentation Challenges with the IXIASOFT DITA CMS
Fluid Topics IIXASOFT User Conference 2016 Presentation
Zoomin Presentation at IXIASOFT User Conference 2016
Move Our DITA Content to Another CCMS? Seriously? - IXIASOFT User Conference ...
Using DRM at Infor - IXIASOFT User Conference 2016
Maximize Your oXygen Usage - oXygen XML, Syncro Soft

Recently uploaded (20)

PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PPTX
CHAPTER 2 - PM Management and IT Context
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PDF
Softaken Excel to vCard Converter Software.pdf
PDF
How Creative Agencies Leverage Project Management Software.pdf
PDF
PTS Company Brochure 2025 (1).pdf.......
PPT
Introduction Database Management System for Course Database
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PDF
Design an Analysis of Algorithms I-SECS-1021-03
PDF
AI in Product Development-omnex systems
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PPTX
Odoo POS Development Services by CandidRoot Solutions
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PPTX
L1 - Introduction to python Backend.pptx
PPTX
Introduction to Artificial Intelligence
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PPTX
ManageIQ - Sprint 268 Review - Slide Deck
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
CHAPTER 2 - PM Management and IT Context
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
Softaken Excel to vCard Converter Software.pdf
How Creative Agencies Leverage Project Management Software.pdf
PTS Company Brochure 2025 (1).pdf.......
Introduction Database Management System for Course Database
Which alternative to Crystal Reports is best for small or large businesses.pdf
Design an Analysis of Algorithms I-SECS-1021-03
AI in Product Development-omnex systems
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
Odoo POS Development Services by CandidRoot Solutions
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
Navsoft: AI-Powered Business Solutions & Custom Software Development
L1 - Introduction to python Backend.pptx
Introduction to Artificial Intelligence
Operating system designcfffgfgggggggvggggggggg
Internet Downloader Manager (IDM) Crack 6.42 Build 41
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
ManageIQ - Sprint 268 Review - Slide Deck

TC Dojo Open Session: Are You Getting the Most Out of DITA Content Reuse?

  • 1. Are You Getting the Most Out of DITA Content Reuse? Keith Schengili-Roberts IXIASOFT 2/8/2016 TC Dojo Open Session 1
  • 2. Agenda • Introduction • Content Reuse in DITA: The Mechanics – A look at the tools in DITA for creating reusable content • Content Reuse in DITA: How to Make it Work – Making reusable content efficient and findable • Q/A 2/8/2016 TC Dojo Master Session 2
  • 3. Who’s This Guy? Keith Schengili-Roberts, DITA Specialist with IXIASOFT What I do: • DITA evangelist • Liaison with OASIS; on DITA Adoption and Technical Committees • Industry researcher • Also lecturer on Information Architecture at the University of Toronto • Have 10+ Years of experience with DITA XML 2/8/2016 TC Dojo Master Session 3
  • 4. Am Also “DITAWriter” • Industry blog started ~5 years ago • Just over 185,000 hits • Have regularly updated info on DITA Conferences, DITA Books, Companies Using DITA, DITA CMSes, DITA Editors, other DITA Tools, and DITA Consulting Firms • News and views on DITA use • Also features interviews with those making a difference in the world of DITA
  • 5. DITA Reuse in DITA: The Mechanics A look at the tools in DITA for creating reusable content
  • 6. The Levels of DITA Reuse • Structural (ditamap, map) • Topic • Conref (and Conkeyref, and Conref “push”) • Conditional processing • Keys • Metadata to help find content to reuse (more on this later) 2/8/2016 TC Dojo Master Session 6
  • 7. Matryoshka (Russian Doll) Reuse • With each of these levels, it is possible to add the next sub-level of reuse • So a reused map might (for example) contain a topic from another map, which in turn uses a conref, conditional processing and keys
  • 8. Structural Reuse • Highest-most level of reuse, involving reuse of entire ditamaps and maps • ditamaps: goes hand-in-hand with either conditional processing and/or keys • maps: ditto above, but when used as “chapters” can also be published as separate documents – IXIASOFT documents use both scenarios 2/8/2016 TC Dojo Master Session 8
  • 9. Topic Reuse • At its easiest, it is simply taking a topic and using it elsewhere • Can be done at the topicref level, or by using a conref (+ key) • May also involve use of conditions and keys used within the map 2/8/2016 TC Dojo Master Session 9
  • 10. Conrefs • Involves taking paragraph(s), sentences or phrases – Handy when you just want to reuse something smaller than a whole topic • Requires addition of an ID to the conref being targeted – This should be coordinated with others – Should use a standard style/convention Conref target elsewhere in the same file: conref="#topicID" Conref first topic in a different file: conref="filename.xml" Conref specific topic in a different file: conref="filename.xml#topicID" Local target: conref="#topicID/elementID" Conref to specific element reference in a different file: conref= "filename.xml#topicID/elementID" Conref to element in a different map: conref= "othermap.ditamap#elementID"
  • 11. Avoid Spaghetti Conrefs! • Avoid having nested conrefs (i.e. conrefs that contain conrefs), or conrefs that could be subject to change • IXIASOFT DITA CMS includes a specialization designed specifically for holding conref-able content – Can do the same thing by simply agreeing to have conref-able content on designated topics
  • 12. Conref-ing Down the Rabbit Hole • There’s reuse, and then there’s ridiculous levels of reuse: you could for example conref every single letter in your topics – There comes a point where making the conref takes more time than simply writing “new” content • In general, don’t conref below the level of a phrase
  • 13. Conkeyrefs (Conref “Pull”) • These are indirect content references defined by keys at the map level • Good for pulling in short, term values referenced elsewhere – It “pulls” in values referenced elsewhere • Pro: Change terms easily by pointing to different values in the referred topic • Con: referred topic needs to be managed over time • Might want to organize your conkeyref targets in a table: • Which can then be referenced elsewhere:
  • 14. Conref Push • Designed to “push” content at a marked place • Pro: perfect for a “quick fix” where you need to insert something • Con: arguably trickier/less straightforward than keys; without good communication can lead to unwanted surprises for other writers • Example from Kris Eberlein’s article on conref push at: http://dita.xml.org/resource/dita- 12-feature-article-conref-push Original topic with id added: Conref “push” topic that points to id in original topic, then specifies content to include: Resulting output:
  • 15. Conditional Processing (Profiling) • Allows conditions to be applied within topics so that elements can be included or excluded during output processing: DITAVAL is your friend! • Pro: great for creating content aimed at multiple audiences • Con: can become unwieldy as more conditions that are added Sample DITAVAL file: <val> <prop action="exclude"/> <prop action="include" att="audience" val="everybody"/> <prop action="include" att="audience" val="novice"/> <prop action="include" att="product" val="productA"/> <prop action="include" att="product" val="productB"/> </val> This example excludes all values not specified in the DITAVAL, and includes audience=everybody and novice plus product=product and productB
  • 16. Recommended Best Practices for Conditional Processing • Write your conditions as you create you content – And keep track of what you use! – A good internal Style Guide will state commonly used conditions and expected values • Don’t go overboard: if things appear to be getting too complex, they probably are. Consider writing separate topics • Test your output! There’s nothing worse than revealing content not intended for a particular audience / product
  • 17. Keys • An indirect addressing mechanism where key names are attached to resources which are then referenced elsewhere • Very flexible, highly adaptable file.dita: <topic id="topicid"> <title>Example referenced topic</title> <body> <section id="section- 01">Some content.</section> </body> </topic> Key definition defined in the map: <map> <topicref keys="myexample" href="file.dita"/> </map>
  • 18. Best Practice for Keys • Eliot Kimber’s opinion: “use keys everywhere” – I really think he’s on to something • Basically there are two types of keys: resource and navigation only – Resource keys link to URLs, images, etc., contained in “warehouse” topics – Navigation keys (or “normal keys”), which are named key for topic links  Eliot also recommends using keys with conrefs (conkeyref) 2/8/2016 TC Dojo Master Session 18
  • 19. DITA Reuse Metrics • Arguably the most influential article on this topic is Bill Hackos’ “Reuse of DITA Topics? What is the Best Metric to Measure the Success of Your Reuse of DITA Topics?” (http://ow.ly/X7mzM) • Percent Repository Words Reused in Context = (Words in All Produced Content – Words in the Repository)/(Words in the Repository)
  • 20. Example Based on IXIASOFT DITA Documents for 2015 Based on 2015 numbers: • Total number of words in the repository: 268,663 • Words in All Produced Content: 623,078 • PRWRC = (623,078* – 268,663)/268,663 • PRWRC = 354,415 / 268,663 = 132% • How is 100%+ reuse value possible? – Easy: DITAVAL – We have number of publications that are created based on a series of DITAVAL value, as much as 21 per bookmap
  • 21. Content Reuse in DITA: How to Make it Work Making reusable content efficient and findable
  • 22. The Human Angle • So far we have only talked about the mechanics, but it is people who have to make this work (with or without benefit of a CCMS) • Past the mechanics, effective reuse within a documentation team comes down to: – Writing content for reuse – Finding content to reuse – Communicating about reusable content 2/8/2016 TC Dojo Master Session 22
  • 23. Moving from Legacy Content • Few who move to DITA have the luxury of starting fresh; legacy content needs to be converted • Do an audit of this material, look for what is common • Port only the content that will be used in the future
  • 24. Create a Reuse Strategy Once the content audit is done, think about: • Naming conventions for filenames, IDs, etc. • Determine how granular reuse will be: topic, element or phrase • What criteria to use when content should be forked Add this material to your DITA Style Guide!
  • 25. Communicate About Reusable Content • Create metadata to describe your content to make it findable • Determine where and what reusable content will be stored • Coordinate about how and when content can be reused within the team Prevent this from happening!
  • 26. Don’t Go Overboard Evaluate reuse efforts against the returns: • It is just easier to simply write “Click OK” rather than conref-ing it “Apples to apples, dogs to ducks” • When things are very different, don’t try to squeeze reuse out of them
  • 27. Knock Down Those Silos! • Effective reuse means that content can no longer be siloed • By necessity, content “ownership” needs to be shared and communicated – One person or group should not “own” their content, and change to content that is already shared needs to be coordinated
  • 28. Writing Content for Reuse • Keep things concise: content reuse and minimalism go hand-in- hand! • Omit terms like “see the following” or “the above image…” etc. • Think about reuse possibilities as you write – DITA content is inherently modular, so drop any pretense of narrative
  • 29. Finding Content for Reuse • Solution: devise effective metadata and tag your topics accordingly! • Use descriptive titles • Use short descriptions!
  • 30. Further Reading • “DITA 1.2 feature article: conref push”, by Kris Eberlein (dita.xml.org/resource/dita-12-feature-article-conref-push) • “The Elusive Promise of Content Reuse” by Leigh White (article: ow.ly/XS0qs, SlideShare: ow.ly/XS0vb) • “Managing Deliverable-Specific Link Anchors: New Suggested Best Practice for Keys (YouTube: ow.ly/XS0gz) • “@conref @conkeyref @conrefpush: Reuse Strategies in DITA When Migrating Legacy Content” by Adam Sanyo ow.ly/XS0db • “Reuse of DITA Topics? What is the Best Metric to Measure the Success of Your Reuse of DITA Topics?” by Bill Hackos ow.ly/X7mzM 2/8/2016 TC Dojo Master Session 30

Editor's Notes

  • #8: This may make it seem like a great way to complicate things, but when managed effectively everything slots together nicely, like a set of Russian dolls ;)
  • #12: The other term I have heard used for this is “Library Topic”, specifically used for holding conref-able content and designed so as not to be printed as is along with other content at output
  • #14: Example is from the excellent “Thunderbird” mock User Guide examples from GitHub at: https://github.com/gnostyx/dita-demo-content-collection put together by Joe Golner and Eliot Kimber
  • #16: Example ditaval is from DITA 1.3 spec., which includes better sample code than previous DITA specifications
  • #21: PRWRC = Percent Repository Words Reused in Context
  • #23: These three points come from colleague Leigh White’s terrific piece on the subject: “The Elusive Promise of Reuse"
  • #24: Spreadsheet depicts part of a content audit done for a client that examined the similarities and differences for 5 examples from a single doc type
  • #27: Quotes are from Leigh White