SlideShare a Scribd company logo
Eliot Kimber — Contrext, LLC, Wayne Brissette — Arm
2019-04-17
Definition of the
DITA Glossary
DITA North America 2019
… or “how to get some cool glossary
tools for free”
2 © 2019 Arm Limited
Overview
• Wait? Didn’t Eliot do this presentation last year?
• Yes. Erm, No. Erm, Kind of…
• And it’s why there’s another one this year.
• I was excited after Eliot’s talk and wanted to get a glossary working on some things I was working on.
• That was a failure.
– We didn’t have the backend working.
– The authoring experience was painful.
3 © 2019 Arm Limited
So what is a DITA glossary?
• Terms and their definitions
• For presentation to readers
• May include definitions of acronyms and abbreviations
• May include lexicographic details: part of speech, etc.
• Source for use-by-reference of <term> elements in content
4 © 2019 Arm Limited
So what isn’t a DITA glossary?
• Formal term list as used in terminology management tools like Congree or Acrolinx
• Terminology management is a separate concern from glossary authoring
5 © 2019 Arm Limited
What about <glossref>?
• <glossref> is a topicref type designed for referring to glossary topic
• While it seems exactly what you want to do.
• The DITA spec even says: “The <glossref> element is a convenience element in maps for creating a
reference to a glossary topic.”
– But just don’t do it.
• Sets @toc to “no”
• Sets @print to “no”
– And I loved Eliot’s answer to why last year: “Nobody knows why”.
• Requires @keys attribute.
5
6 © 2019 Arm Limited
Author experience
• Imagine somebody has already setup the 100-200 terms for you.
• Options are:
– Manually go into a topic and add them.
– Run a transform on them at build time that adds the requirements (I vote for this)
• Manual entry isn’t all bad, but it is time consuming.
• But it doesn’t have to be if you’re using oXygen.
7 © 2019 Arm Limited
Easier methods
• If you have a glossary and you have a standard method of naming your keys, what’s
easier than highlighting the word/phrase, and clicking a button or two?
• I’ve built a framework that allows you to add a button to the toolbar, highlight a word
and have the word selected be your key.
• Demo time!
• Best of all, it’s available for you to use freely.
8 © 2019 Arm Limited
Easier methods
• But what if I want to define my own key?
• I’ve built some custom oXygen code templates that allow you to do three different
things:
1. Mimic the button option and use the word as the key.
2. Enter your own key.
3. Enter an xref that can point to an online resource.
• Demo time!
• Best of all, it too is available for you to use freely.
9 © 2019 Arm Limited
Let’s build a glossary
• OK, now the painful part building a glossary.
• Well, it used to be painful.
• I’ve written a script that will take an excel spreadsheet with terms and definitions in it and create a
map with all the entries (along with keys) for you.
• Demo time!
• That’s great, but I still have to hand mark things.
• I’ve got you covered there too.
• I’ve written a script that will markup all your content from your Excel spreadsheets.
• And like everything else, we’re providing these to you so you can start working on your
own DITA glossaries.
Eliot Kimber
Dynamic Map Processing For Publication
11 © 2019 Arm Limited
Organizational Challenges With Glossaries
• Generate glossary from resource-only topicrefs
• Filter glossary entries to entries actually used in topics
• Group and sort glossary entries
• Link to master glossaries
12 © 2019 Arm Limited
Authoring Challenges
• Maintaining navigation structures for glossaries is tedious
• Managing shared sets of glossary definition key definitions is challenging
• Localized glossaries compound the challenges
13 © 2019 Arm Limited
Solution: Automation
• Given either or both of:
• Resource-only keydefs for glossary entries
• Authored navigation structure
• Produce published glossary that satisfies requirements:
• Grouped and sorted for glossary’s locale
• Reflects the entries desired (all or only those used from non-glossary topics)
• Replaces resource-only keys with normal-role keys
14 © 2019 Arm Limited
Demo: Glossary Preprocessing Plugin
• org.dita-community.glossary.preprocess
• Provides the following options:
• Filter glossary: Only include those glossary entries actually referenced from other topics
• Sort glossary: Group and sort the glossary entries
• Generate glossary: Generate grouped, sorted, and, optionally, filtered glossary based on resource-only
topicrefs to glossary entries.
• Requires org.dita-community.i18n plugin, org.dita-community.common.xslt
• Requires Open Toolkit 3.3+
• Demo time!
15 © 2019 Arm Limited
Master Glossaries as Separate Publications
• Requires cross-deliverable (cross-publication) links
• DITA 1.3 feature not yet implemented Open Toolkit
• Could be implemented as a special case for glossaries
• Looking for funding…
Thank You
Danke
Merci
谢谢
ありがとう
Gracias
Kiitos
감사합니다
धन्यवाद
‫ا‬ً‫شكر‬
‫תודה‬
© 2019 Arm Limited

More Related Content

Similar to Definition of the DITA Glossary: Or How to Get Some Cool Glossary Tools for Free

For the love of the content editors – jam's Drupal Camp session by Pamela Barone
For the love of the content editors – jam's Drupal Camp session by Pamela BaroneFor the love of the content editors – jam's Drupal Camp session by Pamela Barone
For the love of the content editors – jam's Drupal Camp session by Pamela Barone
Jeffrey McGuire
 
Can I Have a Word: Managing Shared Glossaries and References to Terms With DITA
Can I Have a Word: Managing Shared Glossaries and References to Terms With DITACan I Have a Word: Managing Shared Glossaries and References to Terms With DITA
Can I Have a Word: Managing Shared Glossaries and References to Terms With DITA
Contrext Solutions
 
Keith Schengili-Roberts - DITA Worst Practices
Keith Schengili-Roberts - DITA Worst PracticesKeith Schengili-Roberts - DITA Worst Practices
Keith Schengili-Roberts - DITA Worst Practices
Jack Molisani
 
NLP and Machine Learning for non-experts
NLP and Machine Learning for non-expertsNLP and Machine Learning for non-experts
NLP and Machine Learning for non-experts
Sanghamitra Deb
 
Optimizing DITA Content for Search Engine Optimization tekom tcworld 2016
Optimizing DITA Content for Search Engine Optimization tekom tcworld 2016Optimizing DITA Content for Search Engine Optimization tekom tcworld 2016
Optimizing DITA Content for Search Engine Optimization tekom tcworld 2016
IXIASOFT
 
How to Implement Domain Driven Design in Real Life SDLC
How to Implement Domain Driven Design  in Real Life SDLCHow to Implement Domain Driven Design  in Real Life SDLC
How to Implement Domain Driven Design in Real Life SDLC
Abdul Karim
 
DITA and SEO
DITA and SEODITA and SEO
DITA and SEO
IXIASOFT
 
LibGuides Presentation at iCON 2011
LibGuides Presentation at iCON 2011LibGuides Presentation at iCON 2011
LibGuides Presentation at iCON 2011Linscheid Library
 
Word2013lesson07s.pptx
Word2013lesson07s.pptxWord2013lesson07s.pptx
Word2013lesson07s.pptx
GustavoEcheverryFran
 
Is DITA Right for You? - STC Summit 2017
Is DITA Right for You? - STC Summit 2017Is DITA Right for You? - STC Summit 2017
Is DITA Right for You? - STC Summit 2017
IXIASOFT
 
Single-Sourcing with RoboHelp 9: Presentation by WritePoint
Single-Sourcing with RoboHelp 9: Presentation by WritePointSingle-Sourcing with RoboHelp 9: Presentation by WritePoint
Single-Sourcing with RoboHelp 9: Presentation by WritePoint
Paula Stern
 
Intro to the Office UI Fabric
Intro to the Office UI FabricIntro to the Office UI Fabric
Intro to the Office UI Fabric
Thomas Daly
 
D2L Webinar: Five More Quick Wins for Accessible Online Courses
D2L Webinar: Five More Quick Wins for Accessible Online CoursesD2L Webinar: Five More Quick Wins for Accessible Online Courses
D2L Webinar: Five More Quick Wins for Accessible Online Courses
D2L Barry
 
WordPress102 - WordCamp Milwaukee 2015
WordPress102 - WordCamp Milwaukee 2015WordPress102 - WordCamp Milwaukee 2015
WordPress102 - WordCamp Milwaukee 2015
Shanta Nathwani
 
Keith Schengili-Roberts: Improve Your Chances for Documentation Success with ...
Keith Schengili-Roberts: Improve Your Chances for Documentation Success with ...Keith Schengili-Roberts: Improve Your Chances for Documentation Success with ...
Keith Schengili-Roberts: Improve Your Chances for Documentation Success with ...
Jack Molisani
 
Designing for efficiency.pdf
Designing for efficiency.pdfDesigning for efficiency.pdf
Designing for efficiency.pdf
Gabriela Véghová
 
IS100 Week 7
IS100 Week 7IS100 Week 7
IS100 Week 7
METU-Informatics
 
Writing for the web
Writing for the webWriting for the web
Writing for the web
Xavier Pradheep Singh
 
Interactive DSML Design
Interactive DSML DesignInteractive DSML Design
Interactive DSML Design
Andriy Levytskyy
 
Connecting Intelligent Content with Micropublishing and Beyond
Connecting Intelligent Content with Micropublishing and BeyondConnecting Intelligent Content with Micropublishing and Beyond
Connecting Intelligent Content with Micropublishing and Beyond
Don Day
 

Similar to Definition of the DITA Glossary: Or How to Get Some Cool Glossary Tools for Free (20)

For the love of the content editors – jam's Drupal Camp session by Pamela Barone
For the love of the content editors – jam's Drupal Camp session by Pamela BaroneFor the love of the content editors – jam's Drupal Camp session by Pamela Barone
For the love of the content editors – jam's Drupal Camp session by Pamela Barone
 
Can I Have a Word: Managing Shared Glossaries and References to Terms With DITA
Can I Have a Word: Managing Shared Glossaries and References to Terms With DITACan I Have a Word: Managing Shared Glossaries and References to Terms With DITA
Can I Have a Word: Managing Shared Glossaries and References to Terms With DITA
 
Keith Schengili-Roberts - DITA Worst Practices
Keith Schengili-Roberts - DITA Worst PracticesKeith Schengili-Roberts - DITA Worst Practices
Keith Schengili-Roberts - DITA Worst Practices
 
NLP and Machine Learning for non-experts
NLP and Machine Learning for non-expertsNLP and Machine Learning for non-experts
NLP and Machine Learning for non-experts
 
Optimizing DITA Content for Search Engine Optimization tekom tcworld 2016
Optimizing DITA Content for Search Engine Optimization tekom tcworld 2016Optimizing DITA Content for Search Engine Optimization tekom tcworld 2016
Optimizing DITA Content for Search Engine Optimization tekom tcworld 2016
 
How to Implement Domain Driven Design in Real Life SDLC
How to Implement Domain Driven Design  in Real Life SDLCHow to Implement Domain Driven Design  in Real Life SDLC
How to Implement Domain Driven Design in Real Life SDLC
 
DITA and SEO
DITA and SEODITA and SEO
DITA and SEO
 
LibGuides Presentation at iCON 2011
LibGuides Presentation at iCON 2011LibGuides Presentation at iCON 2011
LibGuides Presentation at iCON 2011
 
Word2013lesson07s.pptx
Word2013lesson07s.pptxWord2013lesson07s.pptx
Word2013lesson07s.pptx
 
Is DITA Right for You? - STC Summit 2017
Is DITA Right for You? - STC Summit 2017Is DITA Right for You? - STC Summit 2017
Is DITA Right for You? - STC Summit 2017
 
Single-Sourcing with RoboHelp 9: Presentation by WritePoint
Single-Sourcing with RoboHelp 9: Presentation by WritePointSingle-Sourcing with RoboHelp 9: Presentation by WritePoint
Single-Sourcing with RoboHelp 9: Presentation by WritePoint
 
Intro to the Office UI Fabric
Intro to the Office UI FabricIntro to the Office UI Fabric
Intro to the Office UI Fabric
 
D2L Webinar: Five More Quick Wins for Accessible Online Courses
D2L Webinar: Five More Quick Wins for Accessible Online CoursesD2L Webinar: Five More Quick Wins for Accessible Online Courses
D2L Webinar: Five More Quick Wins for Accessible Online Courses
 
WordPress102 - WordCamp Milwaukee 2015
WordPress102 - WordCamp Milwaukee 2015WordPress102 - WordCamp Milwaukee 2015
WordPress102 - WordCamp Milwaukee 2015
 
Keith Schengili-Roberts: Improve Your Chances for Documentation Success with ...
Keith Schengili-Roberts: Improve Your Chances for Documentation Success with ...Keith Schengili-Roberts: Improve Your Chances for Documentation Success with ...
Keith Schengili-Roberts: Improve Your Chances for Documentation Success with ...
 
Designing for efficiency.pdf
Designing for efficiency.pdfDesigning for efficiency.pdf
Designing for efficiency.pdf
 
IS100 Week 7
IS100 Week 7IS100 Week 7
IS100 Week 7
 
Writing for the web
Writing for the webWriting for the web
Writing for the web
 
Interactive DSML Design
Interactive DSML DesignInteractive DSML Design
Interactive DSML Design
 
Connecting Intelligent Content with Micropublishing and Beyond
Connecting Intelligent Content with Micropublishing and BeyondConnecting Intelligent Content with Micropublishing and Beyond
Connecting Intelligent Content with Micropublishing and Beyond
 

More from Contrext Solutions

Stupid DITA Tricks: After-The-Fact Specialization: Treating Aircraft Manuals ...
Stupid DITA Tricks:After-The-Fact Specialization: Treating Aircraft Manuals ...Stupid DITA Tricks:After-The-Fact Specialization: Treating Aircraft Manuals ...
Stupid DITA Tricks: After-The-Fact Specialization: Treating Aircraft Manuals ...
Contrext Solutions
 
Loose Leaf Publishing Using Antenna House Formatter and CSS for Pagination
Loose Leaf Publishing Using Antenna House Formatter and CSS for PaginationLoose Leaf Publishing Using Antenna House Formatter and CSS for Pagination
Loose Leaf Publishing Using Antenna House Formatter and CSS for Pagination
Contrext Solutions
 
Twisted XSL Tricks: Column Switching for FOP
Twisted XSL Tricks: Column Switching for FOPTwisted XSL Tricks: Column Switching for FOP
Twisted XSL Tricks: Column Switching for FOP
Contrext Solutions
 
Ki, Qi, Key: The Way of DITA Harmony With Keys and Key References
Ki, Qi, Key: The Way of DITA Harmony With Keys and Key ReferencesKi, Qi, Key: The Way of DITA Harmony With Keys and Key References
Ki, Qi, Key: The Way of DITA Harmony With Keys and Key References
Contrext Solutions
 
Content Management on Zero Budget: DITA for Small Teams
Content Management on Zero Budget: DITA for Small TeamsContent Management on Zero Budget: DITA for Small Teams
Content Management on Zero Budget: DITA for Small Teams
Contrext Solutions
 
Using CSS Paging to Render DITA Documents
Using CSS Paging to Render DITA DocumentsUsing CSS Paging to Render DITA Documents
Using CSS Paging to Render DITA Documents
Contrext Solutions
 
Locale-Aware Sorting and Text Handling in the Open Toolkit
Locale-Aware Sorting and Text Handling in the Open ToolkitLocale-Aware Sorting and Text Handling in the Open Toolkit
Locale-Aware Sorting and Text Handling in the Open Toolkit
Contrext Solutions
 
DITA for Small Teams Workshop (Tekom 2017)
DITA for Small Teams Workshop (Tekom 2017)DITA for Small Teams Workshop (Tekom 2017)
DITA for Small Teams Workshop (Tekom 2017)
Contrext Solutions
 
XSLT Magic Tricks with DITA and FrameMaker
XSLT Magic Tricks with DITA and FrameMakerXSLT Magic Tricks with DITA and FrameMaker
XSLT Magic Tricks with DITA and FrameMaker
Contrext Solutions
 
FrameMaker and the DITA Open Toolkit
FrameMaker and the DITA Open ToolkitFrameMaker and the DITA Open Toolkit
FrameMaker and the DITA Open Toolkit
Contrext Solutions
 
DITA Reuse Challenges and Response
DITA Reuse Challenges and ResponseDITA Reuse Challenges and Response
DITA Reuse Challenges and Response
Contrext Solutions
 
RELAX NG and DITA: An Almost Perfect Match
RELAX NG and DITA: An Almost Perfect MatchRELAX NG and DITA: An Almost Perfect Match
RELAX NG and DITA: An Almost Perfect Match
Contrext Solutions
 
Managing Multiple Open Toolkit Configurations Using git Lightning Talk
Managing Multiple Open Toolkit Configurations Using git Lightning TalkManaging Multiple Open Toolkit Configurations Using git Lightning Talk
Managing Multiple Open Toolkit Configurations Using git Lightning Talk
Contrext Solutions
 
DITA OT Day 2015 Lightning Talk On The DITA Community Project
DITA OT Day 2015 Lightning Talk On The DITA Community ProjectDITA OT Day 2015 Lightning Talk On The DITA Community Project
DITA OT Day 2015 Lightning Talk On The DITA Community Project
Contrext Solutions
 
Why Is DITA So Hard?
Why Is DITA So Hard?Why Is DITA So Hard?
Why Is DITA So Hard?
Contrext Solutions
 
They Worked Before, What Happened? Understanding DITA Cross-Book Links
They Worked Before, What Happened? Understanding DITA Cross-Book Links They Worked Before, What Happened? Understanding DITA Cross-Book Links
They Worked Before, What Happened? Understanding DITA Cross-Book Links
Contrext Solutions
 
No Ki Magic: Managing Complex DITA Hyperdocuments
No Ki Magic: Managing Complex DITA HyperdocumentsNo Ki Magic: Managing Complex DITA Hyperdocuments
No Ki Magic: Managing Complex DITA Hyperdocuments
Contrext Solutions
 
Poster: Cross-Document Linking in DITA
Poster: Cross-Document Linking in DITAPoster: Cross-Document Linking in DITA
Poster: Cross-Document Linking in DITA
Contrext Solutions
 
DITA for Small Teams
DITA for Small TeamsDITA for Small Teams
DITA for Small Teams
Contrext Solutions
 
Managing Deliverable-Specific Link Anchors: New Suggested Best Practice for Keys
Managing Deliverable-Specific Link Anchors: New Suggested Best Practice for KeysManaging Deliverable-Specific Link Anchors: New Suggested Best Practice for Keys
Managing Deliverable-Specific Link Anchors: New Suggested Best Practice for Keys
Contrext Solutions
 

More from Contrext Solutions (20)

Stupid DITA Tricks: After-The-Fact Specialization: Treating Aircraft Manuals ...
Stupid DITA Tricks:After-The-Fact Specialization: Treating Aircraft Manuals ...Stupid DITA Tricks:After-The-Fact Specialization: Treating Aircraft Manuals ...
Stupid DITA Tricks: After-The-Fact Specialization: Treating Aircraft Manuals ...
 
Loose Leaf Publishing Using Antenna House Formatter and CSS for Pagination
Loose Leaf Publishing Using Antenna House Formatter and CSS for PaginationLoose Leaf Publishing Using Antenna House Formatter and CSS for Pagination
Loose Leaf Publishing Using Antenna House Formatter and CSS for Pagination
 
Twisted XSL Tricks: Column Switching for FOP
Twisted XSL Tricks: Column Switching for FOPTwisted XSL Tricks: Column Switching for FOP
Twisted XSL Tricks: Column Switching for FOP
 
Ki, Qi, Key: The Way of DITA Harmony With Keys and Key References
Ki, Qi, Key: The Way of DITA Harmony With Keys and Key ReferencesKi, Qi, Key: The Way of DITA Harmony With Keys and Key References
Ki, Qi, Key: The Way of DITA Harmony With Keys and Key References
 
Content Management on Zero Budget: DITA for Small Teams
Content Management on Zero Budget: DITA for Small TeamsContent Management on Zero Budget: DITA for Small Teams
Content Management on Zero Budget: DITA for Small Teams
 
Using CSS Paging to Render DITA Documents
Using CSS Paging to Render DITA DocumentsUsing CSS Paging to Render DITA Documents
Using CSS Paging to Render DITA Documents
 
Locale-Aware Sorting and Text Handling in the Open Toolkit
Locale-Aware Sorting and Text Handling in the Open ToolkitLocale-Aware Sorting and Text Handling in the Open Toolkit
Locale-Aware Sorting and Text Handling in the Open Toolkit
 
DITA for Small Teams Workshop (Tekom 2017)
DITA for Small Teams Workshop (Tekom 2017)DITA for Small Teams Workshop (Tekom 2017)
DITA for Small Teams Workshop (Tekom 2017)
 
XSLT Magic Tricks with DITA and FrameMaker
XSLT Magic Tricks with DITA and FrameMakerXSLT Magic Tricks with DITA and FrameMaker
XSLT Magic Tricks with DITA and FrameMaker
 
FrameMaker and the DITA Open Toolkit
FrameMaker and the DITA Open ToolkitFrameMaker and the DITA Open Toolkit
FrameMaker and the DITA Open Toolkit
 
DITA Reuse Challenges and Response
DITA Reuse Challenges and ResponseDITA Reuse Challenges and Response
DITA Reuse Challenges and Response
 
RELAX NG and DITA: An Almost Perfect Match
RELAX NG and DITA: An Almost Perfect MatchRELAX NG and DITA: An Almost Perfect Match
RELAX NG and DITA: An Almost Perfect Match
 
Managing Multiple Open Toolkit Configurations Using git Lightning Talk
Managing Multiple Open Toolkit Configurations Using git Lightning TalkManaging Multiple Open Toolkit Configurations Using git Lightning Talk
Managing Multiple Open Toolkit Configurations Using git Lightning Talk
 
DITA OT Day 2015 Lightning Talk On The DITA Community Project
DITA OT Day 2015 Lightning Talk On The DITA Community ProjectDITA OT Day 2015 Lightning Talk On The DITA Community Project
DITA OT Day 2015 Lightning Talk On The DITA Community Project
 
Why Is DITA So Hard?
Why Is DITA So Hard?Why Is DITA So Hard?
Why Is DITA So Hard?
 
They Worked Before, What Happened? Understanding DITA Cross-Book Links
They Worked Before, What Happened? Understanding DITA Cross-Book Links They Worked Before, What Happened? Understanding DITA Cross-Book Links
They Worked Before, What Happened? Understanding DITA Cross-Book Links
 
No Ki Magic: Managing Complex DITA Hyperdocuments
No Ki Magic: Managing Complex DITA HyperdocumentsNo Ki Magic: Managing Complex DITA Hyperdocuments
No Ki Magic: Managing Complex DITA Hyperdocuments
 
Poster: Cross-Document Linking in DITA
Poster: Cross-Document Linking in DITAPoster: Cross-Document Linking in DITA
Poster: Cross-Document Linking in DITA
 
DITA for Small Teams
DITA for Small TeamsDITA for Small Teams
DITA for Small Teams
 
Managing Deliverable-Specific Link Anchors: New Suggested Best Practice for Keys
Managing Deliverable-Specific Link Anchors: New Suggested Best Practice for KeysManaging Deliverable-Specific Link Anchors: New Suggested Best Practice for Keys
Managing Deliverable-Specific Link Anchors: New Suggested Best Practice for Keys
 

Recently uploaded

Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
rickgrimesss22
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
Aftab Hussain
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
Google
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
Paco van Beckhoven
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
timtebeek1
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
Octavian Nadolu
 
E-commerce Application Development Company.pdf
E-commerce Application Development Company.pdfE-commerce Application Development Company.pdf
E-commerce Application Development Company.pdf
Hornet Dynamics
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
Boni García
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
Neo4j
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
Aftab Hussain
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
Launch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in MinutesLaunch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in Minutes
Roshan Dwivedi
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
Ayan Halder
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
Fermin Galan
 
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Crescat
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
Donna Lenk
 
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
Google
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Łukasz Chruściel
 

Recently uploaded (20)

Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
 
E-commerce Application Development Company.pdf
E-commerce Application Development Company.pdfE-commerce Application Development Company.pdf
E-commerce Application Development Company.pdf
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
Launch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in MinutesLaunch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in Minutes
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
 
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
 
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
 

Definition of the DITA Glossary: Or How to Get Some Cool Glossary Tools for Free

  • 1. Eliot Kimber — Contrext, LLC, Wayne Brissette — Arm 2019-04-17 Definition of the DITA Glossary DITA North America 2019 … or “how to get some cool glossary tools for free”
  • 2. 2 © 2019 Arm Limited Overview • Wait? Didn’t Eliot do this presentation last year? • Yes. Erm, No. Erm, Kind of… • And it’s why there’s another one this year. • I was excited after Eliot’s talk and wanted to get a glossary working on some things I was working on. • That was a failure. – We didn’t have the backend working. – The authoring experience was painful.
  • 3. 3 © 2019 Arm Limited So what is a DITA glossary? • Terms and their definitions • For presentation to readers • May include definitions of acronyms and abbreviations • May include lexicographic details: part of speech, etc. • Source for use-by-reference of <term> elements in content
  • 4. 4 © 2019 Arm Limited So what isn’t a DITA glossary? • Formal term list as used in terminology management tools like Congree or Acrolinx • Terminology management is a separate concern from glossary authoring
  • 5. 5 © 2019 Arm Limited What about <glossref>? • <glossref> is a topicref type designed for referring to glossary topic • While it seems exactly what you want to do. • The DITA spec even says: “The <glossref> element is a convenience element in maps for creating a reference to a glossary topic.” – But just don’t do it. • Sets @toc to “no” • Sets @print to “no” – And I loved Eliot’s answer to why last year: “Nobody knows why”. • Requires @keys attribute. 5
  • 6. 6 © 2019 Arm Limited Author experience • Imagine somebody has already setup the 100-200 terms for you. • Options are: – Manually go into a topic and add them. – Run a transform on them at build time that adds the requirements (I vote for this) • Manual entry isn’t all bad, but it is time consuming. • But it doesn’t have to be if you’re using oXygen.
  • 7. 7 © 2019 Arm Limited Easier methods • If you have a glossary and you have a standard method of naming your keys, what’s easier than highlighting the word/phrase, and clicking a button or two? • I’ve built a framework that allows you to add a button to the toolbar, highlight a word and have the word selected be your key. • Demo time! • Best of all, it’s available for you to use freely.
  • 8. 8 © 2019 Arm Limited Easier methods • But what if I want to define my own key? • I’ve built some custom oXygen code templates that allow you to do three different things: 1. Mimic the button option and use the word as the key. 2. Enter your own key. 3. Enter an xref that can point to an online resource. • Demo time! • Best of all, it too is available for you to use freely.
  • 9. 9 © 2019 Arm Limited Let’s build a glossary • OK, now the painful part building a glossary. • Well, it used to be painful. • I’ve written a script that will take an excel spreadsheet with terms and definitions in it and create a map with all the entries (along with keys) for you. • Demo time! • That’s great, but I still have to hand mark things. • I’ve got you covered there too. • I’ve written a script that will markup all your content from your Excel spreadsheets. • And like everything else, we’re providing these to you so you can start working on your own DITA glossaries.
  • 10. Eliot Kimber Dynamic Map Processing For Publication
  • 11. 11 © 2019 Arm Limited Organizational Challenges With Glossaries • Generate glossary from resource-only topicrefs • Filter glossary entries to entries actually used in topics • Group and sort glossary entries • Link to master glossaries
  • 12. 12 © 2019 Arm Limited Authoring Challenges • Maintaining navigation structures for glossaries is tedious • Managing shared sets of glossary definition key definitions is challenging • Localized glossaries compound the challenges
  • 13. 13 © 2019 Arm Limited Solution: Automation • Given either or both of: • Resource-only keydefs for glossary entries • Authored navigation structure • Produce published glossary that satisfies requirements: • Grouped and sorted for glossary’s locale • Reflects the entries desired (all or only those used from non-glossary topics) • Replaces resource-only keys with normal-role keys
  • 14. 14 © 2019 Arm Limited Demo: Glossary Preprocessing Plugin • org.dita-community.glossary.preprocess • Provides the following options: • Filter glossary: Only include those glossary entries actually referenced from other topics • Sort glossary: Group and sort the glossary entries • Generate glossary: Generate grouped, sorted, and, optionally, filtered glossary based on resource-only topicrefs to glossary entries. • Requires org.dita-community.i18n plugin, org.dita-community.common.xslt • Requires Open Toolkit 3.3+ • Demo time!
  • 15. 15 © 2019 Arm Limited Master Glossaries as Separate Publications • Requires cross-deliverable (cross-publication) links • DITA 1.3 feature not yet implemented Open Toolkit • Could be implemented as a special case for glossaries • Looking for funding…