View
628
Download
0
Embed Size (px)
DESCRIPTION
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
Citation preview
DITA for the Web: Make Adaptive Content Simple for Writers and Developers
Exploiting Layout and Content
Don Day, Contelligence Group
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.
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
Or as he sees himself...
Footnote 1
What we'll cover: Premise: Adaptive Content is not easy!
Problem: Holes in the Web Architecture
Options: Editor Wars
Application: Patching the Hole
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
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.
Is this what the change is about?
Footnote 1
Or the issue more like this?
Footnote 1
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)
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
Structurre
XML semantic models Assimilation into the collective
Contextual Structure Web page templates, XSL
page masters
No subject domain knowledge; all
UA/UX/UI/You-name-it
Levels of Markup, Charted
3 is most craft-dependent for markup dependency, but
also most tolerant for lack of craft knowledge.
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.
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
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
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.
Examples
Conventional fielded form
Examples Semantic metadata augmenting Google Structured Data Markup Helper
Examples Semantic structure insertion Controlling Presentation in Structured
Content
Examples Self-building form
Examples Template-informed form
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
Quips Abandon hope all ye who enter here.
If you have already abandoned hope, please disregard
this notice.
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