Dita for the web: Make Adaptive Content Simple for Writers and Developer


Published on

Lavacon 2013, Portland, Oregon

On the challenges of implementing structured, in-browser editing environements for creating adaptive content for the Web.

Exploiting Layout and Content
Don Day, Contelligence Group

Published in: Design, Technology
  • Be the first to comment

Dita for the web: Make Adaptive Content Simple for Writers and Developer

  1. 1. DITA for the Web: Make Adaptive Content Simple for Writers and Developers Exploiting Layout and Content Don Day, Contelligence Group
  2. 2. Why do I want to share this topic?   I enjoy improving how writers create and use content. I will be sharing my experience in approaching a recent and acute pain point for many: How to reliably create adaptive content for the Web.
  3. 3. Introductions
  4. 4. About Don Day Hobbies     Publishing Technologies Collecting and using old film  cameras Listening to assorted,  eclectic, independent music  artists Loving on my cats and  family, in that order Model rocketry   Created IBM's first SGML application for AIX online help Helped design IBMIDDoc DTD IBM's W3C Primary Rep to XSL and CSS Working Groups Led workgroup that designed the DITA framework, and initiated OASIS, DITA-OT activities Created IBM's DITA Wiki prototype Extending "DITA for the Web" to crossover use in Web publishing
  5. 5. Or as he sees himself... Footnote 1
  6. 6. What we'll cover:     Premise: Adaptive Content is not easy! Problem: Holes in the Web Architecture Options: Editor Wars Application: Patching the Hole
  7. 7. Premise
  8. 8. Goal: Adaptive Content...   Content that is structurally and semantically enriched;"intelligent content". Necessary for adaptive delivery: device traits, responsive reflow, content repurposing (imagine text-to-video), personalization. "Unstructured content is stupid and old-fashioned. It's costly, complex, and does not generate a competitive advantage." Ann Mulcahy, Former CEO of Xerox
  9. 9. Sliced and Diced...      Key driver: mobility of content (follow the device; follow the person) Key requirement: adaptable content (it needs handles) Key format: HTML5 (which is changing all the rules) Key need: consistent authoring (business rules, term usage, profiling values, etc.) Key gap: a standard Web authoring architecture to support those needs.
  10. 10. Defining the Problem
  11. 11. Is this what the change is about? Footnote 1
  12. 12. Or the issue more like this? Footnote 1
  13. 13. How HTML5 Changes the Game      All new applications for the Web will be done with HTML5 Enables interactivity and behaviors as only Flash could beforehand Unifies user experience across browsers, even challenging Web apps (just wait) Currently irrelevant: HTML and XHTML Currently marginalized: anything XML (goes for DocBook, DITA, even SPFE)
  14. 14. Survey of Options Levels of Markup Degree of Markup Example Knowledge Required of User Intrinsic "thingness" typed data Subject domain knowledge Necessary Descriptive Syntax <img src="url"...> Craft knowledge Necessary Presentational Structure HTML5 fig/img/figcaption Guidelines Necessary Representational XML semantic models Structurre Contextual Structure Assimilation into the collective Web page templates, XSL No subject domain knowledge; all page masters UA/UX/UI/You-name-it
  15. 15. Levels of Markup, Charted  3 is most craft-dependent for markup dependency, but also most tolerant for lack of craft knowledge.
  16. 16.   4 is most validation-dependent, but XML editors manage the craft knowledge; paradoxically easier in principle if you grok the object orientedness Fielded content in a database is an implicit root form of all of this, of course.
  17. 17. The DITA Option   DITA's best feature for the Web is its architecture Need structure for adaptive content? o Look to the experience and practice behind DITA! Dress form model "Power loader" model
  18. 18. Application
  19. 19. Categories of in-browser editors      Compose everything in a contentEditable div: WordPress Use a DB schema to define a form: flat and inflexible content models Use an XML schema to define a structured editor: narrative content with structure Use a document to define its own form Use XML-based templates to set up more dynamic forms
  20. 20. XML-based templates to set up more dynamic forms        Template is validated by a schema, so when it is read into the form generator, the resulting form represents the features in the template as allowed patterns. Repeated elements = "one or more" Single element = "one required" (or optional - which will it be? can we switch?) Sequence is implicit in a set of elements unless one repeats, which indicates mixable sequence. Inner content should align with contentEditable. [text] conventions can represent placeholders and contextual help Use XML comments to represent semantics in their parent elements? Not all tools can parse comments though.
  21. 21. Examples  Conventional fielded form
  22. 22. Examples  Semantic metadata augmenting Google Structured Data Markup Helper
  23. 23. Examples  Semantic structure insertion Controlling Presentation in Structured Content
  24. 24. Examples  Self-building form
  25. 25. Examples  Template-informed form
  26. 26. Browser Editor Primal Scream        Mike Davidson: The Sorry State of WYSIWYG Editors (April 27, 2009) Rachel Andrew: Your WYSIWYG Editor Sucks Karen McGrane: WYSIWTF Karen McGrane: Drupalcon Keynote Video, Slides and Talk Notes Rick Yagodich: What You See is WYSISMUC WYSIWTFFTWOMG! Deane Barker: Why WYSIWYG is Still a Problem
  27. 27. Quips  Abandon hope all ye who enter here. If you have already abandoned hope, please disregard this notice.
  28. 28. Questions ?
  29. 29. Contact Info      Don R. Day Co-Founder, ContelligenceGroup.com Co-Chair, OASIS DITA Technical Committee LinkedIn: donrday Twitter: @donrday About.me: donrday Skype: don.r.day "Where is the wisdom we have lost in knowledge? Where is the knowledge we have lost in information?" --T.S. Eliot