SlideShare a Scribd company logo
DITA Open Toolkit and FrameMaker
Using the DITA Open Toolkit to
publish your DITA content from
FrameMaker
Eliot Kimber
Contrext
Adobe DITA World 2016
About the Author
• Independent consultant focusing on DITA analysis,
design, and implementation
• Doing SGML and XML for cough 30 years cough
• Founding member of the DITA Technical Committee
• Founding member of the XML Working Group
• Co-editor of HyTime standard (ISO/IEC 10744)
• Primary developer and founder of the DITA for
Publishers project (dita4publishers.org)
• Author of DITA for Practitioners, Vol 1 (XML Press)
Adobe DITA World 20162
Agenda
• What is the DITA Open Toolkit?
• Why would you use it with FrameMaker?
• Setting up your system
• Generating output from FrameMaker using
the Open Toolkit
• Adding new Open Toolkit plugins
• Wrap up
Adobe DITA World 20163
WHAT IS THE DITA OPEN
TOOLKIT?
Adobe DITA World 20164
The DITA Open Toolkit Is…
• A general Java-based framework for processing
DITA content into a variety of formats:
– HTML, PDF, EPUB, online help, etc.
• An open-source project developed and
maintained by volunteers
• Widely integrated by DITA-aware tools
– Including by FrameMaker 15
• Widely used by the DITA community
– “Everyone uses the Open Toolkit”
Adobe DITA World 20165
The DITA Open Toolkit is NOT…
• Not a “reference implementation” of DITA
– It tries to reflect the standard as well as it can
– But it is not a formal reference implementation
• Not affiliated with OASIS Open or the DITA
Technical Committee
Adobe DITA World 20166
DITA OT Architecture
• Java, Ant, and XSLT-based framework
– Cross platform
– Relatively easy to extend or customize using XSLT
• Provides “transformation types” that produce different
types of output
• Extension is through plugins
– Extend or customize existing transformation types
– Add new transformation types
– Extend or customize preprocessing
• OT does DITA preprocessing “heavy lifting” for you
Adobe DITA World 20167
Transformation Types
• Built in as of OT 2.1:
– HTML, PDF, Eclipse help, Windows help, HTML help,
Java help, troff, Word RTF, DocBook
• Additional transformation types from other
sources:
– EPUB, full HTML5, InDesign: DITA for Publishers
– Quality Assurance report: DITA Community
– Web help: oXygenXML (Syncro Soft), Suite Solutions
• Anyone can add new transformation types
Adobe DITA World 20168
DITA OT Also Manages DTDs
• The Open Toolkit can also manage DITA DTDs
• Maintains a master entity resolution catalog
• Use plugins to add custom document type shells
and specializations
• Makes the DTDs available to any tool that uses
catalogs
• Simplifies DTD management
• Useful even if you never generate output with the
Open Toolkit
Adobe DITA World 20169
DITA OT Versions
• Version 1.8.5:
– Last of the 1.x versions
– Supports DITA 1.2
– Very stable, lots of plugins (e.g., DITA for Publishers)
– Not actively supported by OT team
• Version 2.x:
– Supports DITA 1.3
– Significant re-architecture from 1.x
– Easier to install and use than 1.x
Adobe DITA World 201610
WHY WOULD I USE THE OPEN
TOOLKIT WITH FRAMEMAKER?
Adobe DITA World 201611
Why Use the OT?
• Use the same processing as non-FrameMaker
authors
• Automate document processing outside of
FrameMaker
• Generate outputs not provided for by
FrameMaker
– E.g., quality assurance report, Eclipse help, etc.
• Manage your local document type shells and
specializations
Adobe DITA World 201612
SETTING UP YOUR SYSTEM
Adobe DITA World 201613
Step 1. Install Java
• DITA Open Toolkit requires Java
• Must install it if it’s not already installed
• Go to java.oracle.com and install latest Java
for Windows
– Java SE is fine.
– JDK is best but just JRE is OK too
• You may already have it installed
– Look in c:Program Filesjava
Adobe DITA World 201614
Step 2. Set JAVA_HOME
Environment Variable
• FrameMaker requires that JAVA_HOME be set
• Not set by Java installer
• Find where Java is installed:
– E.g., C:Program FilesJavajre1.8.0_111
• Get to Advanced Settings, e.g.:
– Right click on “This PC” -> Properties -> Advanced
System Settings -> Change settings -> Advanced ->
Environment Variables
– Create new system variable “JAVA_HOME” using the
Java installation directory as the value.
Adobe DITA World 201615
JAVA_HOME Environment Variable
Adobe DITA World 201616
Step 3. Restart FrameMaker
• You can verify that the variable is set using the
command line:
c:>echo %JAVA_HOME%
c:Program FilesJavajre1.8.0_101
• Should be ready to run the Open Toolkit
Adobe DITA World 201617
Step 4. Set FrameMaker DITA
Version to 1.2
• As of FM 13.0.5.547 the built-in Open Toolkit
does not include the DITA 1.3 DTDs
• Need to use DITA 1.2 files or add the 1.3 DTDs
to the built-in OT or use a different OT
installation
• To get started, easiest to set DITA version to
1.2
Adobe DITA World 201618
DITA Options Dialog
• DITA -> DITA Options…
Adobe DITA World 201619
Further Configuration
• Can add plugins to built-in Open Toolkit
• Can use a different Open Toolkit installation
• Will need read-write access to the
FrameMaker fminit/ditafm directory
Adobe DITA World 201620
GENERATING OUTPUT
Adobe DITA World 201621
Step 1. Open A DITA Map or Topic
• Most processing should be against DITA maps
• Can process individual topics but result may
not be good
Adobe DITA World 201622
Step 2. Open Generate DITA
Output Dialog
• DITA -> Generate DITA Output …
Adobe DITA World 201623
Step 3. Select An Output Type
• E.g., xhtml.
• Also, check “View log file”
Adobe DITA World 201624
Step 4. Click OK
• Will get new window until processing ends
and then will get the log.
• Processing may take some time depending on
size of document and speed of your PC
Adobe DITA World 201625
Step 5. Check The Output
• Output will be in directory
“build-{docfilename}/{transtype}”
under the directory containing the input file:
Adobe DITA World 201626
Generic HTML Result
Adobe DITA World 201627
About Generic HTML Output
• Generic styling is not very interesting
• Useful for testing and verifying your content
• XHTML transtype is base for many other
transforms:
– HTML-based help formats, HTML5, EPUB, Eclipse
InfoCenters, etc.
• Can provide your own CSS and JavaScript
• See DITA Open Toolkit site for an example of
modern-looking HTML produced from the Open
Toolkit
Adobe DITA World 201628
HTML Help Transform
• Generates files for use with the Windows Help
Workshop
Adobe DITA World 201629
Generic PDF
Adobe DITA World 201630
About Generic PDF Output
• Default styling is OK
• Uses open-source FOP XSL-FO engine out of
the box
• Can use commercial FO engines (Antenna
House Formatter or RenderX XEP)
• Most companies customize the PDF output to
reflect their styles and branding
Adobe DITA World 201631
ADDING NEW OPEN TOOLKIT
PLUGINS
Adobe DITA World 201632
Two Steps
1. Install new Open Toolkit plugins to the OT
you’re using with FrameMaker
2. Update the FrameMaker ditafm.ini file to
add the new transformation types
Adobe DITA World 201633
Step 0: Install A Local Open Toolkit
• You shouldn’t modify the OT that is built into
FrameMaker
• If you want to add plugins best to set up your
own Toolkit
• To install, simply download the version you
want and unzip it somewhere convenient, e.g.
c:dita-ot
• If you’ve already installed Java and set
JAVA_HOME then you’re all set
Adobe DITA World 201634
Using Different OT Versions
• As of November 2016 FrameMaker uses
version 2.1.0
• If you use a different version you’ll need to
modify the ditafm.ini file
– Set the ClassPath property to reflect the JAR files
used in OT version you’re installing
– Jars are in the OT lib/ directory
Adobe DITA World 201635
Step 1: Install New Plugins
(OT 2.1 and earlier)
• Get the plugin from wherever it is (e.g.,
github, another OT installation, etc.)
• Put the plugin’s directory under the OT’s
plugins/ directory
• Run the Ant command:
c:DITA-OT>ant –f integrator
Adobe DITA World 201636
Step 1: Install New Plugins
(OT 2.2 and later)
• Can install plugin Zip files directly
– From local file system
– From Web URLs (e.g., from GitHub)
• Run the bindita –install command with the
Zip path or URL:
c:DITA-OT>bindita –install
https://github.com/dita-community/org.dita-
community.qa/releases/download/version-
1.3/org.dita-community.qa-1.3.zip
Adobe DITA World 201637
Install New Plugins (2.2 and Later)
(cont)
• If you need to install multiple plugins at once…
• …unzip the plugins into the OT’s plugins/
directory
• Then run the dita –install command with no
parameters:
c:DITA-OT>bindita –install
• Same as running the integrator.xml Ant
script
Adobe DITA World 201638
Step 2: Update ditafm.ini
• Change the Count= property to reflect the new
transformation:
Count=4
• Add an entry for your new transformation type:
1=xhtml
2=htmlhelp
3=pdf2
4=qa
• No need to restart FrameMaker
Adobe DITA World 201639
Modified ditafm.ini File
…
DitaExtraParams=
Count=5
DitaDir=%FMHOME%fminitditafmDITA-OT
1=xhtml
2=htmlhelp
3=pdf2
4=qa
Adobe DITA World 201640
WRAP UP AND RESOURCES
Adobe DITA World 201641
Wrap Up
• DITA Open Toolkit is a general-purpose DITA
processing framework
• Often used for DITA publishing automation
• Can be easily used from FrameMaker
• Can use your own Open Toolkit if needed
Adobe DITA World 201642
Resources
• DITA Open Toolkit: http://dita-ot.org
• DITA Community: http://dita-community.org
• DITA For Publishers: http://dita4publishers.org
• DITA vs the DITA OT: They’re not the same thing
(Robert Anderson):
http://metadita.org/toolkit/ditaversusditaot.html
• What’s new in OT 2.0 (Robert Anderson):
http://www.slideshare.net/RobertAnderson151/ditaot-
2x-discover-whats-new-in-toolkit-two
Adobe DITA World 201643

More Related Content

What's hot (20)

PDF
Building a Streaming Microservice Architecture: with Apache Spark Structured ...
Databricks
 
PDF
[OpenInfra Days Korea 2018] (Track 4) - Grafana를 이용한 OpenStack 클라우드 성능 모니터링
OpenStack Korea Community
 
PPTX
Stephan Ewen - Experiences running Flink at Very Large Scale
Ververica
 
PDF
Linux Kernel vs DPDK: HTTP Performance Showdown
ScyllaDB
 
PPTX
Toi uu hoa he thong 30 trieu nguoi dung
IT Expert Club
 
PDF
Giao thức bảo mật SSL
conglongit90
 
PDF
Đề thi 02
kikihoho
 
PDF
How Netflix Is Solving Authorization Across Their Cloud
Torin Sandall
 
PDF
Pentesting Rest API's by :- Gaurang Bhatnagar
OWASP Delhi
 
PDF
Alphorm.com Formation Veeam Backup & Replication 9.5
Alphorm
 
PDF
Ceph QoS: How to support QoS in distributed storage system - Taewoong Kim
Ceph Community
 
PDF
FiloDB: Reactive, Real-Time, In-Memory Time Series at Scale
Evan Chan
 
PPTX
Apache Kafka - Messaging System Overview
Dmitry Tolpeko
 
PDF
[123doc.vn] xay dung he thong mang cho doanh nhiep nho
Nguyễn Quân
 
PPT
Bài giảng cơ sở dữ liệu
trieulongweb
 
PDF
Dongwon Kim – A Comparative Performance Evaluation of Flink
Flink Forward
 
PDF
Grokking Techtalk #46: Lessons from years hacking and defending Vietnamese banks
Grokking VN
 
PDF
JSON Web Tokens
Ivan Rosolen
 
PDF
Đề tài: Quản lý cửa hàng vật liệu xây dựng, HAY, 9đ
Dịch vụ viết bài trọn gói ZALO 0917193864
 
PPTX
Near real-time statistical modeling and anomaly detection using Flink!
Flink Forward
 
Building a Streaming Microservice Architecture: with Apache Spark Structured ...
Databricks
 
[OpenInfra Days Korea 2018] (Track 4) - Grafana를 이용한 OpenStack 클라우드 성능 모니터링
OpenStack Korea Community
 
Stephan Ewen - Experiences running Flink at Very Large Scale
Ververica
 
Linux Kernel vs DPDK: HTTP Performance Showdown
ScyllaDB
 
Toi uu hoa he thong 30 trieu nguoi dung
IT Expert Club
 
Giao thức bảo mật SSL
conglongit90
 
Đề thi 02
kikihoho
 
How Netflix Is Solving Authorization Across Their Cloud
Torin Sandall
 
Pentesting Rest API's by :- Gaurang Bhatnagar
OWASP Delhi
 
Alphorm.com Formation Veeam Backup & Replication 9.5
Alphorm
 
Ceph QoS: How to support QoS in distributed storage system - Taewoong Kim
Ceph Community
 
FiloDB: Reactive, Real-Time, In-Memory Time Series at Scale
Evan Chan
 
Apache Kafka - Messaging System Overview
Dmitry Tolpeko
 
[123doc.vn] xay dung he thong mang cho doanh nhiep nho
Nguyễn Quân
 
Bài giảng cơ sở dữ liệu
trieulongweb
 
Dongwon Kim – A Comparative Performance Evaluation of Flink
Flink Forward
 
Grokking Techtalk #46: Lessons from years hacking and defending Vietnamese banks
Grokking VN
 
JSON Web Tokens
Ivan Rosolen
 
Đề tài: Quản lý cửa hàng vật liệu xây dựng, HAY, 9đ
Dịch vụ viết bài trọn gói ZALO 0917193864
 
Near real-time statistical modeling and anomaly detection using Flink!
Flink Forward
 

Viewers also liked (7)

PPTX
FrameMaker and numbering
Publishing Smarter
 
PPTX
Adobe FrameMaker Workshop TC Camp 2015
Maxwell Hoffmann
 
PPTX
Launch Event FrameMaker 10 Overview
tmaldous
 
PDF
Introduction to markup language and oXygen XML editor
bleierr
 
PPTX
Adobe DITA World: Templates, DITA, and FrameMaker 2015
Publishing Smarter
 
PDF
Introduction to html 5
Nir Elbaz
 
PPTX
Introduction to structured authoring
Rob Hanna, ECMs
 
FrameMaker and numbering
Publishing Smarter
 
Adobe FrameMaker Workshop TC Camp 2015
Maxwell Hoffmann
 
Launch Event FrameMaker 10 Overview
tmaldous
 
Introduction to markup language and oXygen XML editor
bleierr
 
Adobe DITA World: Templates, DITA, and FrameMaker 2015
Publishing Smarter
 
Introduction to html 5
Nir Elbaz
 
Introduction to structured authoring
Rob Hanna, ECMs
 
Ad

Similar to FrameMaker and the DITA Open Toolkit (20)

PPTX
Suite Labs: Generating SuiteHelp Output
Suite Solutions
 
PPTX
DITA Quick Start Webinar Series: Getting Started with the DITA Open Toolkit
Suite Solutions
 
PPT
DITA on a Shoe String
Stan Doherty
 
PPTX
Dd13.2013.milano.open ntf
Ulrich Krause
 
PPTX
Aiming for automatic updates - Drupal Dev Days Lisbon 2018
hernanibf
 
PDF
The Latest and Greatest from OpenNTF and the IBM Social Business Toolkit, #dd13
Dominopoint - Italian Lotus User Group
 
PDF
LuisRodriguezLocalDevEnvironmentsDrupalOpenDays
Luis Rodríguez Castromil
 
PPTX
Composer JSON kills make files
ropsu
 
PDF
Effectively using Open Source with conda
Travis Oliphant
 
PPTX
Bitbucket git-bamboo-jira
lenamattt
 
PPT
XPages -Beyond the Basics
Ulrich Krause
 
PDF
DITA Interoperability
Kristen Eberlein
 
PDF
Help! I inherited a Drupal Site! - DrupalCamp Atlanta 2016
Paul McKibben
 
PDF
Docman - The swiss army knife for Drupal multisite docroot management and dep...
Aleksey Tkachenko
 
PDF
Expanding XPages with Bootstrap Plugins for Ultimate Usability
Teamstudio
 
PPTX
Que nos espera a los ALM Dudes para el 2013?
Bruno Capuano
 
PDF
RNUG - Dirty Secrets of the Notes Client
Christoph Adler
 
PDF
Plc2 2015 your own ide
Sigasi
 
PPTX
4D Pubs - Distributed Dynamic Document Dsplay
Chris Despopoulos
 
PPTX
Introduction to python history and platforms
Kirti Verma
 
Suite Labs: Generating SuiteHelp Output
Suite Solutions
 
DITA Quick Start Webinar Series: Getting Started with the DITA Open Toolkit
Suite Solutions
 
DITA on a Shoe String
Stan Doherty
 
Dd13.2013.milano.open ntf
Ulrich Krause
 
Aiming for automatic updates - Drupal Dev Days Lisbon 2018
hernanibf
 
The Latest and Greatest from OpenNTF and the IBM Social Business Toolkit, #dd13
Dominopoint - Italian Lotus User Group
 
LuisRodriguezLocalDevEnvironmentsDrupalOpenDays
Luis Rodríguez Castromil
 
Composer JSON kills make files
ropsu
 
Effectively using Open Source with conda
Travis Oliphant
 
Bitbucket git-bamboo-jira
lenamattt
 
XPages -Beyond the Basics
Ulrich Krause
 
DITA Interoperability
Kristen Eberlein
 
Help! I inherited a Drupal Site! - DrupalCamp Atlanta 2016
Paul McKibben
 
Docman - The swiss army knife for Drupal multisite docroot management and dep...
Aleksey Tkachenko
 
Expanding XPages with Bootstrap Plugins for Ultimate Usability
Teamstudio
 
Que nos espera a los ALM Dudes para el 2013?
Bruno Capuano
 
RNUG - Dirty Secrets of the Notes Client
Christoph Adler
 
Plc2 2015 your own ide
Sigasi
 
4D Pubs - Distributed Dynamic Document Dsplay
Chris Despopoulos
 
Introduction to python history and platforms
Kirti Verma
 
Ad

More from Contrext Solutions (20)

PPTX
Stupid DITA Tricks: After-The-Fact Specialization: Treating Aircraft Manuals ...
Contrext Solutions
 
PPTX
Loose Leaf Publishing Using Antenna House Formatter and CSS for Pagination
Contrext Solutions
 
PPTX
Definition of the DITA Glossary: Or How to Get Some Cool Glossary Tools for Free
Contrext Solutions
 
PPTX
Twisted XSL Tricks: Column Switching for FOP
Contrext Solutions
 
PDF
Can I Have a Word: Managing Shared Glossaries and References to Terms With DITA
Contrext Solutions
 
PPTX
Ki, Qi, Key: The Way of DITA Harmony With Keys and Key References
Contrext Solutions
 
PPTX
Content Management on Zero Budget: DITA for Small Teams
Contrext Solutions
 
PPTX
Using CSS Paging to Render DITA Documents
Contrext Solutions
 
PPTX
Locale-Aware Sorting and Text Handling in the Open Toolkit
Contrext Solutions
 
PPTX
DITA for Small Teams Workshop (Tekom 2017)
Contrext Solutions
 
PPTX
Can I Have a Word: Managing Shared Glossaries and References to Terms With DITA
Contrext Solutions
 
PPTX
XSLT Magic Tricks with DITA and FrameMaker
Contrext Solutions
 
PPTX
DITA Reuse Challenges and Response
Contrext Solutions
 
PPTX
RELAX NG and DITA: An Almost Perfect Match
Contrext Solutions
 
PPTX
Managing Multiple Open Toolkit Configurations Using git Lightning Talk
Contrext Solutions
 
PPTX
DITA OT Day 2015 Lightning Talk On The DITA Community Project
Contrext Solutions
 
PPTX
Why Is DITA So Hard?
Contrext Solutions
 
PPTX
They Worked Before, What Happened? Understanding DITA Cross-Book Links
Contrext Solutions
 
PPTX
No Ki Magic: Managing Complex DITA Hyperdocuments
Contrext Solutions
 
PPTX
Poster: Cross-Document Linking in DITA
Contrext Solutions
 
Stupid DITA Tricks: After-The-Fact Specialization: Treating Aircraft Manuals ...
Contrext Solutions
 
Loose Leaf Publishing Using Antenna House Formatter and CSS for Pagination
Contrext Solutions
 
Definition of the DITA Glossary: Or How to Get Some Cool Glossary Tools for Free
Contrext Solutions
 
Twisted XSL Tricks: Column Switching for FOP
Contrext Solutions
 
Can I Have a Word: Managing Shared Glossaries and References to Terms With DITA
Contrext Solutions
 
Ki, Qi, Key: The Way of DITA Harmony With Keys and Key References
Contrext Solutions
 
Content Management on Zero Budget: DITA for Small Teams
Contrext Solutions
 
Using CSS Paging to Render DITA Documents
Contrext Solutions
 
Locale-Aware Sorting and Text Handling in the Open Toolkit
Contrext Solutions
 
DITA for Small Teams Workshop (Tekom 2017)
Contrext Solutions
 
Can I Have a Word: Managing Shared Glossaries and References to Terms With DITA
Contrext Solutions
 
XSLT Magic Tricks with DITA and FrameMaker
Contrext Solutions
 
DITA Reuse Challenges and Response
Contrext Solutions
 
RELAX NG and DITA: An Almost Perfect Match
Contrext Solutions
 
Managing Multiple Open Toolkit Configurations Using git Lightning Talk
Contrext Solutions
 
DITA OT Day 2015 Lightning Talk On The DITA Community Project
Contrext Solutions
 
Why Is DITA So Hard?
Contrext Solutions
 
They Worked Before, What Happened? Understanding DITA Cross-Book Links
Contrext Solutions
 
No Ki Magic: Managing Complex DITA Hyperdocuments
Contrext Solutions
 
Poster: Cross-Document Linking in DITA
Contrext Solutions
 

Recently uploaded (20)

PPTX
Empowering Asian Contributions: The Rise of Regional User Groups in Open Sour...
Shane Coughlan
 
PDF
ERP Consulting Services and Solutions by Contetra Pvt Ltd
jayjani123
 
PDF
[Solution] Why Choose the VeryPDF DRM Protector Custom-Built Solution for You...
Lingwen1998
 
PPTX
Build a Custom Agent for Agentic Testing.pptx
klpathrudu
 
PDF
AI + DevOps = Smart Automation with devseccops.ai.pdf
Devseccops.ai
 
PDF
Digger Solo: Semantic search and maps for your local files
seanpedersen96
 
PPTX
Change Common Properties in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
PPTX
Comprehensive Risk Assessment Module for Smarter Risk Management
EHA Soft Solutions
 
PDF
IDM Crack with Internet Download Manager 6.42 Build 43 with Patch Latest 2025
bashirkhan333g
 
PPTX
Agentic Automation Journey Session 1/5: Context Grounding and Autopilot for E...
klpathrudu
 
PPTX
Help for Correlations in IBM SPSS Statistics.pptx
Version 1 Analytics
 
PDF
SciPy 2025 - Packaging a Scientific Python Project
Henry Schreiner
 
PDF
AOMEI Partition Assistant Crack 10.8.2 + WinPE Free Downlaod New Version 2025
bashirkhan333g
 
PDF
Open Chain Q2 Steering Committee Meeting - 2025-06-25
Shane Coughlan
 
PDF
MiniTool Power Data Recovery 8.8 With Crack New Latest 2025
bashirkhan333g
 
PDF
Download Canva Pro 2025 PC Crack Full Latest Version
bashirkhan333g
 
PDF
Technical-Careers-Roadmap-in-Software-Market.pdf
Hussein Ali
 
PDF
NEW-Viral>Wondershare Filmora 14.5.18.12900 Crack Free
sherryg1122g
 
PDF
Wondershare PDFelement Pro Crack for MacOS New Version Latest 2025
bashirkhan333g
 
PPTX
Agentic Automation Journey Series Day 2 – Prompt Engineering for UiPath Agents
klpathrudu
 
Empowering Asian Contributions: The Rise of Regional User Groups in Open Sour...
Shane Coughlan
 
ERP Consulting Services and Solutions by Contetra Pvt Ltd
jayjani123
 
[Solution] Why Choose the VeryPDF DRM Protector Custom-Built Solution for You...
Lingwen1998
 
Build a Custom Agent for Agentic Testing.pptx
klpathrudu
 
AI + DevOps = Smart Automation with devseccops.ai.pdf
Devseccops.ai
 
Digger Solo: Semantic search and maps for your local files
seanpedersen96
 
Change Common Properties in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
Comprehensive Risk Assessment Module for Smarter Risk Management
EHA Soft Solutions
 
IDM Crack with Internet Download Manager 6.42 Build 43 with Patch Latest 2025
bashirkhan333g
 
Agentic Automation Journey Session 1/5: Context Grounding and Autopilot for E...
klpathrudu
 
Help for Correlations in IBM SPSS Statistics.pptx
Version 1 Analytics
 
SciPy 2025 - Packaging a Scientific Python Project
Henry Schreiner
 
AOMEI Partition Assistant Crack 10.8.2 + WinPE Free Downlaod New Version 2025
bashirkhan333g
 
Open Chain Q2 Steering Committee Meeting - 2025-06-25
Shane Coughlan
 
MiniTool Power Data Recovery 8.8 With Crack New Latest 2025
bashirkhan333g
 
Download Canva Pro 2025 PC Crack Full Latest Version
bashirkhan333g
 
Technical-Careers-Roadmap-in-Software-Market.pdf
Hussein Ali
 
NEW-Viral>Wondershare Filmora 14.5.18.12900 Crack Free
sherryg1122g
 
Wondershare PDFelement Pro Crack for MacOS New Version Latest 2025
bashirkhan333g
 
Agentic Automation Journey Series Day 2 – Prompt Engineering for UiPath Agents
klpathrudu
 

FrameMaker and the DITA Open Toolkit

  • 1. DITA Open Toolkit and FrameMaker Using the DITA Open Toolkit to publish your DITA content from FrameMaker Eliot Kimber Contrext Adobe DITA World 2016
  • 2. About the Author • Independent consultant focusing on DITA analysis, design, and implementation • Doing SGML and XML for cough 30 years cough • Founding member of the DITA Technical Committee • Founding member of the XML Working Group • Co-editor of HyTime standard (ISO/IEC 10744) • Primary developer and founder of the DITA for Publishers project (dita4publishers.org) • Author of DITA for Practitioners, Vol 1 (XML Press) Adobe DITA World 20162
  • 3. Agenda • What is the DITA Open Toolkit? • Why would you use it with FrameMaker? • Setting up your system • Generating output from FrameMaker using the Open Toolkit • Adding new Open Toolkit plugins • Wrap up Adobe DITA World 20163
  • 4. WHAT IS THE DITA OPEN TOOLKIT? Adobe DITA World 20164
  • 5. The DITA Open Toolkit Is… • A general Java-based framework for processing DITA content into a variety of formats: – HTML, PDF, EPUB, online help, etc. • An open-source project developed and maintained by volunteers • Widely integrated by DITA-aware tools – Including by FrameMaker 15 • Widely used by the DITA community – “Everyone uses the Open Toolkit” Adobe DITA World 20165
  • 6. The DITA Open Toolkit is NOT… • Not a “reference implementation” of DITA – It tries to reflect the standard as well as it can – But it is not a formal reference implementation • Not affiliated with OASIS Open or the DITA Technical Committee Adobe DITA World 20166
  • 7. DITA OT Architecture • Java, Ant, and XSLT-based framework – Cross platform – Relatively easy to extend or customize using XSLT • Provides “transformation types” that produce different types of output • Extension is through plugins – Extend or customize existing transformation types – Add new transformation types – Extend or customize preprocessing • OT does DITA preprocessing “heavy lifting” for you Adobe DITA World 20167
  • 8. Transformation Types • Built in as of OT 2.1: – HTML, PDF, Eclipse help, Windows help, HTML help, Java help, troff, Word RTF, DocBook • Additional transformation types from other sources: – EPUB, full HTML5, InDesign: DITA for Publishers – Quality Assurance report: DITA Community – Web help: oXygenXML (Syncro Soft), Suite Solutions • Anyone can add new transformation types Adobe DITA World 20168
  • 9. DITA OT Also Manages DTDs • The Open Toolkit can also manage DITA DTDs • Maintains a master entity resolution catalog • Use plugins to add custom document type shells and specializations • Makes the DTDs available to any tool that uses catalogs • Simplifies DTD management • Useful even if you never generate output with the Open Toolkit Adobe DITA World 20169
  • 10. DITA OT Versions • Version 1.8.5: – Last of the 1.x versions – Supports DITA 1.2 – Very stable, lots of plugins (e.g., DITA for Publishers) – Not actively supported by OT team • Version 2.x: – Supports DITA 1.3 – Significant re-architecture from 1.x – Easier to install and use than 1.x Adobe DITA World 201610
  • 11. WHY WOULD I USE THE OPEN TOOLKIT WITH FRAMEMAKER? Adobe DITA World 201611
  • 12. Why Use the OT? • Use the same processing as non-FrameMaker authors • Automate document processing outside of FrameMaker • Generate outputs not provided for by FrameMaker – E.g., quality assurance report, Eclipse help, etc. • Manage your local document type shells and specializations Adobe DITA World 201612
  • 13. SETTING UP YOUR SYSTEM Adobe DITA World 201613
  • 14. Step 1. Install Java • DITA Open Toolkit requires Java • Must install it if it’s not already installed • Go to java.oracle.com and install latest Java for Windows – Java SE is fine. – JDK is best but just JRE is OK too • You may already have it installed – Look in c:Program Filesjava Adobe DITA World 201614
  • 15. Step 2. Set JAVA_HOME Environment Variable • FrameMaker requires that JAVA_HOME be set • Not set by Java installer • Find where Java is installed: – E.g., C:Program FilesJavajre1.8.0_111 • Get to Advanced Settings, e.g.: – Right click on “This PC” -> Properties -> Advanced System Settings -> Change settings -> Advanced -> Environment Variables – Create new system variable “JAVA_HOME” using the Java installation directory as the value. Adobe DITA World 201615
  • 17. Step 3. Restart FrameMaker • You can verify that the variable is set using the command line: c:>echo %JAVA_HOME% c:Program FilesJavajre1.8.0_101 • Should be ready to run the Open Toolkit Adobe DITA World 201617
  • 18. Step 4. Set FrameMaker DITA Version to 1.2 • As of FM 13.0.5.547 the built-in Open Toolkit does not include the DITA 1.3 DTDs • Need to use DITA 1.2 files or add the 1.3 DTDs to the built-in OT or use a different OT installation • To get started, easiest to set DITA version to 1.2 Adobe DITA World 201618
  • 19. DITA Options Dialog • DITA -> DITA Options… Adobe DITA World 201619
  • 20. Further Configuration • Can add plugins to built-in Open Toolkit • Can use a different Open Toolkit installation • Will need read-write access to the FrameMaker fminit/ditafm directory Adobe DITA World 201620
  • 22. Step 1. Open A DITA Map or Topic • Most processing should be against DITA maps • Can process individual topics but result may not be good Adobe DITA World 201622
  • 23. Step 2. Open Generate DITA Output Dialog • DITA -> Generate DITA Output … Adobe DITA World 201623
  • 24. Step 3. Select An Output Type • E.g., xhtml. • Also, check “View log file” Adobe DITA World 201624
  • 25. Step 4. Click OK • Will get new window until processing ends and then will get the log. • Processing may take some time depending on size of document and speed of your PC Adobe DITA World 201625
  • 26. Step 5. Check The Output • Output will be in directory “build-{docfilename}/{transtype}” under the directory containing the input file: Adobe DITA World 201626
  • 27. Generic HTML Result Adobe DITA World 201627
  • 28. About Generic HTML Output • Generic styling is not very interesting • Useful for testing and verifying your content • XHTML transtype is base for many other transforms: – HTML-based help formats, HTML5, EPUB, Eclipse InfoCenters, etc. • Can provide your own CSS and JavaScript • See DITA Open Toolkit site for an example of modern-looking HTML produced from the Open Toolkit Adobe DITA World 201628
  • 29. HTML Help Transform • Generates files for use with the Windows Help Workshop Adobe DITA World 201629
  • 30. Generic PDF Adobe DITA World 201630
  • 31. About Generic PDF Output • Default styling is OK • Uses open-source FOP XSL-FO engine out of the box • Can use commercial FO engines (Antenna House Formatter or RenderX XEP) • Most companies customize the PDF output to reflect their styles and branding Adobe DITA World 201631
  • 32. ADDING NEW OPEN TOOLKIT PLUGINS Adobe DITA World 201632
  • 33. Two Steps 1. Install new Open Toolkit plugins to the OT you’re using with FrameMaker 2. Update the FrameMaker ditafm.ini file to add the new transformation types Adobe DITA World 201633
  • 34. Step 0: Install A Local Open Toolkit • You shouldn’t modify the OT that is built into FrameMaker • If you want to add plugins best to set up your own Toolkit • To install, simply download the version you want and unzip it somewhere convenient, e.g. c:dita-ot • If you’ve already installed Java and set JAVA_HOME then you’re all set Adobe DITA World 201634
  • 35. Using Different OT Versions • As of November 2016 FrameMaker uses version 2.1.0 • If you use a different version you’ll need to modify the ditafm.ini file – Set the ClassPath property to reflect the JAR files used in OT version you’re installing – Jars are in the OT lib/ directory Adobe DITA World 201635
  • 36. Step 1: Install New Plugins (OT 2.1 and earlier) • Get the plugin from wherever it is (e.g., github, another OT installation, etc.) • Put the plugin’s directory under the OT’s plugins/ directory • Run the Ant command: c:DITA-OT>ant –f integrator Adobe DITA World 201636
  • 37. Step 1: Install New Plugins (OT 2.2 and later) • Can install plugin Zip files directly – From local file system – From Web URLs (e.g., from GitHub) • Run the bindita –install command with the Zip path or URL: c:DITA-OT>bindita –install https://github.com/dita-community/org.dita- community.qa/releases/download/version- 1.3/org.dita-community.qa-1.3.zip Adobe DITA World 201637
  • 38. Install New Plugins (2.2 and Later) (cont) • If you need to install multiple plugins at once… • …unzip the plugins into the OT’s plugins/ directory • Then run the dita –install command with no parameters: c:DITA-OT>bindita –install • Same as running the integrator.xml Ant script Adobe DITA World 201638
  • 39. Step 2: Update ditafm.ini • Change the Count= property to reflect the new transformation: Count=4 • Add an entry for your new transformation type: 1=xhtml 2=htmlhelp 3=pdf2 4=qa • No need to restart FrameMaker Adobe DITA World 201639
  • 41. WRAP UP AND RESOURCES Adobe DITA World 201641
  • 42. Wrap Up • DITA Open Toolkit is a general-purpose DITA processing framework • Often used for DITA publishing automation • Can be easily used from FrameMaker • Can use your own Open Toolkit if needed Adobe DITA World 201642
  • 43. Resources • DITA Open Toolkit: http://dita-ot.org • DITA Community: http://dita-community.org • DITA For Publishers: http://dita4publishers.org • DITA vs the DITA OT: They’re not the same thing (Robert Anderson): http://metadita.org/toolkit/ditaversusditaot.html • What’s new in OT 2.0 (Robert Anderson): http://www.slideshare.net/RobertAnderson151/ditaot- 2x-discover-whats-new-in-toolkit-two Adobe DITA World 201643