what “model” dita specializations can teach about information modelinc

Post on 22-Nov-2014

175 Views

Category:

Data & Analytics

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

The DITA Open Toolkit download site includes several demo specializations that few people discover and use. In this webinar, DITA maven, Don Day, will use these examples to highlight the role of information modelling that led to each specialization. Don will highlight the key points of how each specialization was created, or how semantics were introduced into the specialization, and a whole lot more.

TRANSCRIPT

© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

What "Model" DITA Specializations Can Teach Us About Information Modeling

Don Day | donrday@contelligencegroup.com | @donrday

© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

About Adobe

2

>74 Offices in 43 Countries

Corporate Headquarters inSan Jose, California

Founded in December 1982

$4.06 billion in revenue in FY2013

>10,000 employees

Adobe donates a minimum of 1%of net income to philanthropy

We simplify complicated, inefficient, and expensive workflows.We enable more engaging, compelling content.We drive greater return from digital media and marketing investments.

© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Your Webinar Host

Maxwell Hoffmann Adobe Global Product Evangelist,

Technical Publishing (Tech Comm Suite)

Former Product Manager and Sales Training Directorfor Frame Technology

15 years in translation industry, working on “whatever documents walked through the door”

Trained over 1,200 people in hands-on, scalable publishing solutions

Claims to have published or touched up over 1,000,000 pages!

… and somebody here tonight knows MORE than HE does

3

© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

About our Guest

Don Day 25 years involvement in IBM’s Information

Development tools and strategy

Inventor with patents related to content and UX

A contributor and founding Chair for the OASIS DITA XML markup standard

Consultant on strategy, technology, and best practices for optimizing the value and usefulness of unstructured data

Speaker and author on emerging publishing technologies

4

Information Modeling from the Demo DITA* Specializations Don Day,Contelligence Group LLC

* The Darwin Information Typing Architecture, an OASIS XML markup standard

Lead-up: High Octane Content• Adobe TechComm Central blog post:

http://blogs.adobe.com/techcomm/2014/06/high-octane-documents-june-12-dita-model-webinar.htmlImagine a Content Octane Rating that indicates whether content has the metadata and structural refinement necessary to keep the business engine running smoothly under load.• 85: Unleaded; Conventional text file• 87: Use of basic styling markers (HTML or Markdown)• 89: Use of semantic phrase markup (var, cite, kbd, code, etc.)• 90: Use of complex data models (e. g., structures for sections)• 91: Premium! Supports interaction with rules-driven processing

• What is the Content Octane Rating (COR) of your documents?

• Note also the formalized rating system, DITA Maturity Model

About This Presentation

There is value in having structured information. How to get started? We’ll cover:

1. High level goals of an Information Model2. Comparative overview of some sample designs

from the DITA community:• What were they thinking, good or bad?• How would I organize and structure my own content?

3. Summarize a design approach you can apply for your content

1. Goals of Information Models• “An Information Model is a set of principles that define how

you intend to structure the information you develop.”-- JoAnn Hackos, CIDM Newsletter, Feb. 2010

• It is a contract between the document and the outside world:• For querying into the document (not just full text search)• For processing the content in ways that support the business• For publishing the content as its readers need or prefer

A Model Is:A representation of the underlying Information Architecture. It helps:• Builders (authors, tool

vendors) to create conforming instances of the model

• Occupants (readers, publishing tools) to navigate and get best use of those facilities.

Photo credit: Cushing Memorial Library and Archives, Texas A&M /Foter / Creative Commons Attribution 2.0 Generic (CC BY 2.0)

An Information Model Promotes:

• Consistency of writing style• Readers can anticipate where they want to look• Separation of formatting concerns from the model itself

• Useful data types for processing:• Semantic intent for search relevance• Structure to indicate scope of relevant content

• Association of business rules to the content:• Management of translation process• Automation of workflow and QA controls• Automation of backup, version control• Ability to share interoperable content with business partners,

OEMs, and customers, as needed

Process enforcement

Traditional

Guides, templates, and manual verification

Automated

Information types, schemas and rules-driven processes

2. Comparative Review• Available Cases:• XML Applications and Initiatives (at last count, 594!)

• http://xml.coverpages.org/xmlApplications.html• DITA Open Toolkit plugins

• Various locations, but manageable number• We will go with DITA OT-compatible designs

• Methodology (CSI model):• The Lineup• Psychological Profile (What were they thinking?)• Motive (What were they trying to accomplish?)• Modus Operandi (How did they do it?)• Applicable Charges (What can we learn from mistakes and wins?)

The Lineup:

DITA Open Toolkit Plugins• For this particular lineup (a spectrum of quality):• Music: https://github.com/dita-ot/ext-plugins/tree/master/music• MsgRef:

http://sourceforge.net/projects/dita-ot/files/Plug-in_message%20specialization/

• Faq: https://github.com/dita-ot/ext-plugins/tree/master/faq• eNote: https://github.com/dita-ot/ext-plugins/tree/master/enote

• Known plugin repositories (some duplicates):• https://github.com/dita-ot/ext-plugins (models, extensions)• https://github.com/robander/metadita (extension points)• http://sourceforge.net/projects/dita-ot/files/ (stable releases)• https://groups.yahoo.com/neo/groups/dita-users/files/Demos/

Music plugin

Characteristic Assessment

Line of business Personal demo by Robert Anderson, DITA OT lead

Apparent business driver Reduce Robert’s time spent in teaching plugin concepts; exemplar for plugin authors (DTDs and processing hooks); enable greater DITA-OT uptake

Design methodology Model a typical “collector’s database” (portfolio)

Use of typed data Sorting CDs/songs by categories and types; extends <simpletable> as a relational database.

Usability Obvious, meaningful element names

Utility For CD/song collections, mainly of personal interest; as a teaching tool, highly useful

Compelling virtues Well documented; complete application with multiple outputs and even some editor support

Odious flaws None

https://github.com/dita-ot/ext-plugins/tree/master/music

Music DTD fragment• <!-- LONG NAME: Music Collection -->• <!ELEMENT songCollection (%title;, (%titlealts;)?, (%shortdesc; | %abstract;)?, • (%prolog;)?, (%songBody;)?, (%related-links;)?, • (%song-info-types;)* ) >

• <!-- LONG NAME: Music Body -->• <!ELEMENT songBody ((%section; | %simpletable; | %songList;)* ) >

• <!-- LONG NAME: -->• <!ELEMENT songList ((%songRow;)+) >•

<!-- LONG NAME: -->• <!ELEMENT songRow ((%song;)?, (%album;)?, (%artist;)?,(%genre;)?,• (%rating;)?,(%count;)?,(%playdate;)?)>•

<!-- LONG NAME: -->• <!ELEMENT song (%ph.cnt;)* >•

<!-- LONG NAME: -->• <!ELEMENT album (%ph.cnt;)* >•

<!-- LONG NAME: -->• <!ELEMENT artist (%ph.cnt;)* >•

<!-- LONG NAME: -->• <!ELEMENT genre (%ph.cnt;)* >•

<!-- LONG NAME: -->• <!ELEMENT count (%ph.cnt;)* >• • <!-- LONG NAME: -->• <!ELEMENT playdate (%ph.cnt;)* >

Music Instance

Msgref plugin

Characteristic Assessment

Line of business Software company (but could be hardware codes)

Apparent business driver Single source for content that appears in both product interfaces and in documentation (to lower translation redundancy, for example)

Design methodology Represent the Java Resource Bundle structure

Use of typed data Deliberate, strongly fielded (see the msgID “title”)

Usability Abbreviated element names (probably necessary due to wordiness of the domain, but an NLS issue);Difficult to write without a fielded editing tool.

Utility Very good fit for the designed purpose (hands-off reuse of message strings)

Compelling virtues Natural use of a “message” infotype and fields

Odious flaws Development costs for authors and tools interfaces

http://sourceforge.net/projects/dita-ot/files/Plug-in_message%20specialization/

msgRef DTD fragment• <!-- ============ Element definitions ============ -->

<!ELEMENT msg ((%msgId;), (%titlealts;)?, (%msgText;), (%prolog;)?, (%msgBody;), (%related-links;)?, (%msg-info-types;)*)><!ATTLIST msg id ID #REQUIRED conref CDATA #IMPLIED %select-atts; %localization-atts; outputclass CDATA #IMPLIED %arch-atts; domains CDATA "&included-domains;"><!-- Specialize msgId from title, require three specialized phrases in the title --><!ELEMENT msgId (((%msgPrefix;)*, (%msgNumber;)+, (%msgSuffix;)*)) ><!ATTLIST msgId %id-atts; %localization-atts; outputclass CDATA #IMPLIED><!ELEMENT msgPrefix (%ph.cnt;)*><!ATTLIST msgPrefix keyref CDATA #IMPLIED %univ-atts; outputclass CDATA #IMPLIED><!ELEMENT msgNumber (%ph.cnt;)*><!ATTLIST msgNumber keyref CDATA #IMPLIED %univ-atts; outputclass CDATA #IMPLIED

msgRef instance

FAQ plugin

Characteristic Assessment

Line of business Support organizations; call centers

Apparent business driver Capture resolved issues as new best practice responses for subsequent problem calls

Design methodology Assess the structure of conventional FAQs on the Web, model the design as a DITA specialization

Use of typed data Rich information type (top-down) and categories; some internal semantic terms as well

Usability Is functional, obvious; could be extended as needed

Utility The authoring problem it addresses is already solved by knowledge base applications; better suited as a “delivery aggregator”

Compelling virtues Simple, clear information model

Odious flaws None; could actually be used for “DITA on the Web”

https://github.com/dita-ot/ext-plugins/tree/master/faq

FAQ DTD fragment• <!-- ============ Element definitions ============ -->• <!ELEMENT faq ((%title;), (%titlealts;)?, (%shortdesc;)?, (%prolog;)?, (%faqbody;), (%related-links;)?, (%faq-info-types;)* )>• <!ATTLIST faq id ID #REQUIRED• conref CDATA #IMPLIED• outputclass CDATA #IMPLIED• xml:lang NMTOKEN #IMPLIED• %arch-atts;• domains CDATA "&included-domains;"• >

• <!ELEMENT faqbody ((%faqgroup;)+ | (%faqlist;))>• <!ATTLIST faqbody %univ-atts;• outputclass CDATA #IMPLIED• >

• <!ELEMENT faqgroup ((%title;), (%faqlist;))>• <!ATTLIST faqgroup spectitle CDATA #IMPLIED• %univ-atts;• outputclass CDATA #IMPLIED• >

• <!ELEMENT faqlist (%faqitem;)+>• <!ATTLIST faqlist relcolwidth CDATA #IMPLIED• keycol NMTOKEN #IMPLIED• refcols NMTOKENS #IMPLIED• %display-atts;• %univ-atts;• spectitle CDATA #IMPLIED• outputclass CDATA #IMPLIED• >

• <!ELEMENT faqitem ((%faqquest;), (%faqans;), (%faqprop;)?)>• <!ATTLIST faqitem %univ-atts;• outputclass CDATA #IMPLIED• >

FAQ instance

Enote plugin

Characteristic Assessment

Line of business Mimics existing email tools; demonstrates using content structures for header metadata

Apparent business driver Demo only; not in response to a business need

Design methodology Demonstrate “XML data islands” within standard note structures.

Use of typed data Yes, for the header data islands

Usability Good to see how content can be used for data; to some extent, this need is handled by DITA 1.2 +

Utility Not a real application

Compelling virtues Good teaching tool (like a car engine cut in half)

Odious flaws No longer a best practice for embedded data; use the new <data> element

https://github.com/dita-ot/ext-plugins/tree/master/enote

Enote DTD fragment• <!-- ============ Element definitions ============ -->• <!ELEMENT enote ((%subject;), (%prolog;)?, (%notedetail;), (%enote-info-types;)* )>• <!ATTLIST enote id ID #REQUIRED• conref CDATA #IMPLIED• outputclass CDATA #IMPLIED• xml:lang NMTOKEN #IMPLIED• %arch-atts;• domains CDATA "&included-domains;"• >

• <!ELEMENT subject (#PCDATA)*>• <!ATTLIST subject %id-atts;• outputclass CDATA #IMPLIED• >

• <!ELEMENT notedetail ((%noteheader;), (%notebody;)?)>• <!ATTLIST notedetail %univ-atts;• outputclass CDATA #IMPLIED• >

• <!ELEMENT noteheader ((%From;), (%To;)?, (%Cc;)?, (%Bcc;)?, (%Date;)?, (%delivery;)?, (%references;)?, (%attachments;)?)>• <!ATTLIST noteheader %univ-atts;• outputclass CDATA #IMPLIED• >

• <!ELEMENT From (#PCDATA | %recipient;)*>• <!ATTLIST From %univ-atts;• outputclass CDATA #IMPLIED• >

Enote instance

3. A Design Approach for DITA

1. Determine the business imperative2. Identify stakeholders3. Get sponsorship and team4. Analysis & design: • Top-down: Identify information types and content structures• Bottom-up: Identify keywords and data types• Find a good-enough depth of concerns (Best is enemy of good)• Test usability of names (elements, attributes, value keywords)• Test usability of design in an actual XML editor• Test publishing/processing/search effectiveness• Document early; capture lessons often

5. Report up6. “Make it so, Number One!”

On your own:Smaller project ideas• Recipes• Meeting minutes• Database for collections (action figures, cameras, stamps, etc.)• APIs• Unix-style “man pages”• Trading cards, baseball or Pokémon style• Neighborhood newsletter/web site

• “Kleine Kinder, kleine Sorgen, große Kinder, große Sorgen.“

On your own:New or reused?• Port an existing design to your framework (for example, apply

this design to a DITA framework: http://www.happy-monkey.net/recipes/)

• Represent an existing process in the model (basically what the enote demo did)

• Port existing to your framework, then augment with your process requirements

On your own:Considerations• Ease of authoring• Clear distinction of “things” vs “properties”• Naming: clarity vs verbosity• Balance between precision and usability:• Avoid needing to parse key data in your processor

e. g. <date>June 12 2014</date> for Europeans

• On the other hand, avoid too much detail: <sentence>

<word>This</word> <word>is</word> <word>just</word> <word>wrong!</word>

</sentence>

Here be Dragons!• How will your chunks be used? Each new process represents a

new “application context” for the collection.• What business rules need to be supported by the process? Are

they part of the application-level information model?• Roll your own or involve a consultant?• What are the costs of support and maintenance?• What are the costs of training and getting up to speed?

Wrapping up• Skills you may want to learn:• UML or “Data Modeling 101”• XML schema design• Editor configuration (EDDs for FrameMaker)• Web forms for simple fielded interfaces

• Where to find outside help• https://groups.yahoo.com/neo/groups/dita-users/info• LinkedIn XML- and DITA-related groups• Support lists for the authoring and CMS tools you have

Questions!

© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Upcoming webinars Spring/Summer 2014

June 12: What ‘Model’ DITA Specializations Can Teach Us About Information Modeling = http://adobe.ly/1rppQtY

June 20: Recording webcam video for tech comm = http://adobe.ly/1pr6WFJ

July 10, Sept 24, Oct 31 & Dec 4: 4x Series: Tech Challenges: Surfing and Diving Deep = http://adobe.ly/1rpq7Nq

2x series: Strategies for Success with RoboHelp 11 ProjectsTanner Services Corp: July 24, Aug 21 = http://adobe.ly/1ptKcVn

If you’re viewing THIS recording after dates listed, go to: http://adobe.ly/Pbdp0J

34

© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Useful Links Regarding FrameMaker 12

Recorded FM Launch webinar with timeline: http://adobe.ly/1gvr4lU

FrameMaker 12 Reviewer’s Guide = http://adobe.ly/1i8kS0h

FM 12 Version Comparison Chart = http://adobe.ly/1crT6X8

FrameMaker XML Author 12 Home = http://adobe.ly/1i8lvXG

FrameMaker XML Author 12 FAQ = http://adobe.ly/1i8lVxj

FrameMaker 12 AdobeTV show = http://adobe.ly/1i8FTbe

FrameMaker XML Author 12 AdobeTV show = http://adobe.ly/1gnRUMB

35

© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Relevant Recorded Webinars

FrameMaker 12 Feature Focus 2): 12 New Templates with Hidden Power!Guest Bernard Aschwanden of Publishing Smarterhttp://adobe.ly/1nBSDwU

Wow! FrameMaker 12 in just 45 minutesMaxwell Hoffmannhttp://adobe.ly/1sTr55A

FrameMaker 12 Feature Focus 5): Customizing Published Output to On-Line FormatsMaxwell Hoffmannhttp://adobe.ly/1qGLVqZ

36

© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Microsite: www.authorxml.com

37

© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 38

Q&A

© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Contact Information

39

InformationDon Day@donrday

Email donrday@contelligencegroup.comWWW: http://contelligencegroup.comSample: http://expedita.info/LinkedIn: http://www.linkedin.com/in/donrday

Maxwell HoffmannAdobe Systems, Inc.Product Evangelist

Blog blogs.adobe.com/techcomm

Twitter @maxwellhoffmann & @AdobeTCS

Email mhoffman@adobe.com Web www.adobe.comLinkedIn www.linkedin.com/in/maxwellhoffmannFacebook Adobe Technical Communication Professionals

Previously recorded eSeminars: http://adobe.ly/qo3pzc

Calendar of upcoming eSeminars: http://adobe.ly/xdzOYa

top related