Download - Les concepts fondamentaux de DITA
Les concepts fondamentaux de DITA(Darwin Information Typing Architecture)
4 juin 2009
© 2009 – Patrick Peccatte
Workshop CampusXMLle forum francophone de l'IFRA dédié à l'évolution des systèmes
d'informations dans le monde de la presse
blog : http://blog.tuquoque.com/mail : peccatte [at] softexperience.com
Plan
Introduction - les différentes "cultures du document"
La documentation technique - DocBook, DITA
Les concepts fondamentaux de DITA
Introduction
DITA (Darwin Information Typing Architecture)
Technologie XML destinée à la rédaction, à la production et à la livraison de documents techniques sous diverses formes
Mais nous sommes dans la presse !Pourquoi s'intéresser à DITA ?
Introduction – un "retour en arrière"
« Il pourrait être intéressant d’adapter les concepts à l’œuvre dans DITA au domaine de la presse quand la catégorisation par sujets est forte et la structuration éditoriale ou narrative n’est pas prédominante »
XML et les formats de traitement de texte et de mise en pagePatrick Peccatte - Étude pour l'IFRA, juillet 2006
L'actuelle présentation explique ce point de vue en :- montrant que la presse doit rester attentive auxtechnologies déployées dans tous les secteursoù l'on partage des contenus- décrivant les concepts fondamentaux développéssous la forme de DITA dans l'un de ces secteurs
Introduction
Un constat banal : les contenus partagés sont présents ailleurs que dans la presse
Élargir le champ d'interrogationAcquérir différentes "cultures du document" ;
examiner diverses conceptions de la notion de contenu partagé, dans d'autres domaines, selon d'autres modes de rédaction, de diffusion
Analyser les schémas XML développés dans ces différentes "cultures du document"
Introduction
Traitement de texte et mise en page
Presse
Web 1.0
Agences de presse
Édition
Édition technique
Documentation
Bibliothèques
Archives
Web 2.0, Web social (blogs, Flickr, Facebook, etc.)
Web sémantique, Web des données
etc.
livre, livre électronique
notice, catalogue
document
page HTML
dépêche
conversation
données liées
article, page
manuel, CDROM
Acquérir différentes "cultures du document"... Oui, mais où ?... partout où il existe des contenus partagés
Introduction
Acquérir d'autres "cultures du document"
Deux paradigmes documentaires
Document narratif : contenu linéaire, flux structuréarticle, page, livre, dépêche, conversation, notice
Assemblage de contenus structurés :dépêche, conversation, notice, agrégats de sujets
entre deux paradigmes
IntroductionAnalyser les schémas XML développés dans ces autres
"cultures du document"
IPTC G2 architecture commune à plusieurs domaines applicatifsdestinés aux médias
TEI (Text Encoding Initiative) permet d'échanger des données textuelles, notamment pour les sciences humaines, les études sur les textes littéraires, la linguistique
FRBR (Functional Requirements for Bibliographic Records)modélisation conceptuelle des informations contenues dans les notices bibliographiques des bibliothèques
EAD (Encoded Archival Description) utilisé par les services d’archives, bibliothèques et musées pour décrire des fonds d'archives, des collections de manuscrits et des collections hiérarchisées de documents ou d’objets
DocBook et DITA pour la documentation technique
Introduction
IPTC G2 Architecture
À l'origine : la dépêche d'actualité, structure narrative simple
IPTC G2 : architecture commune à plusieurs domaines applicatifs les news (NewsML G2), la gestion des événements (EventsML G2), le sport (SportsML G2)
Architecture modulaire et multimédia
Introduit une profusion de métadonnées de diverses natures, des types de propriétés, des possibilités de vocabulaires contrôlés, une extensibilité, etc.
La structuration des métadonnées et les vocabulaires contrôlés associés (NewsCodes) deviennent aussi importants que la partie narrative du document (article)
IntroductionTEI (Text Encoding Initiative)
À l'origine : corpus littéraires
TEI : contient plus de 500 composants et concepts concernant le domaine du texte
La TEI est modulaireCe n'est pas un schéma unique mais plutôt un ensemble de Guidelines permettant de définir son propre schéma personnalisé
Il existe des générateurs de schémas TEI personnalisés (Roma)
IPTC G2, TEI, etc.les schémas (ou DTD) ne sont plus conçus comme monolithiquesce sont de véritables boîtes à outils
La documentation technique
Conception et rédaction de la documentation techniqueDeux approches où l'on retrouve nos deux "paradigmes" :
Contenu narratif, linéaire ; flux structuré : DocBook
Assemblage de contenus structurés : DITA
DocBook
DocBook est un langage de balisage destiné à la description des articles et des livres techniquesConçu à l'origine en SGML, c'est maintenant un langage XMLÀ l'origine créé par l'éditeur O'Reilly en 1991DocBook est maintenu actuellement par un comité du consortium OASIS (Organization for the Advancement of Structured Information Standards)
DocBook
DocBook est une DTD très riche et complexe à maîtriserExiste sous la forme de XML schéma et de schéma Relax NG depuis la version 5.0Cette recommandation est issue d'utilisateurs des industries de l'informatique et de l'électronique.Il existe donc beaucoup de structures permettant de coder des informations liées à ces domaines.Cependant, DocBook peut être utilisé dans bien d'autres domaines techniques
DocBook
DocBook contient toute l'information nécessaire à une documentation technique : informations d'identification formelle (métadonnées), tous les composants d'index permettant la navigation, une préface, des chapitres, des annexes, des glossaires, une bibliographie, etc.Une version simplifiée de DocBook est disponiblewww.oasis-open.org/committees/docbook/xml/simple/1.0CR2/index.shtml
Il existe des convertisseurs depuis DocBook vers différents formats tels que:RTF, PDF, Microsoft HTMLHelp, pages MAN Unix,OOo Writer, Tex, LaTex, etc.
DocBookOutils/Produits
Arbortext (racheté par PTC) Epicwww.arbortext.com/html/epic_editor_overview.htmlAdobe FrameMakerwww.adobe.com/products/framemaker/main.htmlSyntext Sernawww.syntext.com/products/serna/Altova XML Spywww.xmlspy.comSoftQuad XMetalwww.xmetal.com
DITADarwin Information Typing Architecture
DITA est un langage XML initialement proposé par IBM en 2001"Donné" par IBM au consortium OASIS (Organization for the Advancement of Structured Information Standards) en 2004
DITADarwin Information Typing Architecture
Darwin : il se base sur les principes de spécialisation et d'héritageInformation Typing : basé sur la sémantique et les types des sujets traités (concepts, tâches, références) et de leur contenuArchitecture : DITA est suffisamment flexible et évolutif pour développer différents types de contenus documentaires (architecture modulaire)
DITADarwin Information Typing Architecture
DITA comprendune spécification architecturaleune spécification de langageun ensemble de DTD(et un ensemble équivalent de schémas)
DITADarwin Information Typing Architecture
Dans les approches courantes, les DTD sont statiques. En conséquence :
les créateurs de DTD essayent de couvrir tous les événementsles utilisateurs doivent forcer leurs informations à coïncider avec des types existants
DITA renverse cette situation en donnant aux architectes et développeurs le pouvoir d'étendre une DTD de base afin de couvrir leurs domaines
Adapté de IBM Introduction to the Darwin Information Typing Architecturehttp://www.ibm.com/developerworks/xml/library/x-dita1/
DITADarwin Information Typing Architecture
Source : http://www.ditausers.org/tutorials/basics/Priestley_Intro/
Un slogan DITA :write once, translate once, use many times
DITADarwin Information Typing Architecture
Qui utilise DITA ?AdobeSociétés spécialisées dans l'électronique, les téléphones mobiles, les PDAs, etc.Un case study : CaridianBCT (matériel médical)production de documentations en 9 langueshttp://www.dclab.com/dita_global_local.asp
The Joseph Smith Papers Project[une utilisation combinée de TEI et DITA]http://www.flatironssolutions.com/CustomContentRetrieve.aspx?ID=973614
DITADarwin Information Typing Architecture
DITA est basé sur des topics[trad. sujets ou thèmes].Un sujet est un lot d'informations organisées autour d'un seul thème.Un sujet est structuré en un titre, suivi de texte et d'images (organisés éventuellement en sections)Un sujet possède un typeTypes standards fournis par DITA :topic (générique), concept, task, reference
DITADarwin Information Typing Architecture
Source : http://www.ditausers.org/tutorials/basics/Priestley_Intro/
DITADarwin Information Typing Architecture
Un topic (sujet générique) possède seulement trois informations obligatoires
id (attribut de topic)titlebody
Source : http://www.ditausers.org/training/DITATopics/
Un topic peut posséder d'autres éléments optionnels
DITADarwin Information Typing Architecture
Sujet de type conceptRépond aux questions
« Qu'est-ce que c'est ? »« Pourquoi est-ce important ? »« Comment est-ce lié aux autres concepts et tâches ? »« Quand dois-je l'utiliser ? »
Un concept apporte une connaissance que le lecteur doit avoir pour réaliser une tâche mais ne donne pas le moyen de réaliser la tâche
DITADarwin Information Typing Architecture
Source : http://www.ditausers.org/training/DITATopics/
Un concept est un topic spécialiséla racine est renommée conceptbody est renommé conbody
DITADarwin Information Typing Architecture
Sujet de type tâche (task)Répond à la question
« Comment je fais pour... »Liste une série d'étapes que l'utilisateur doit suivre
pour parvenir au résultat attenduLa description d'une tâche distingue :
le contexte de la tâcheles pré-requisles étapes permettant de réaliser la tâchele résultat obtenu
DITADarwin Information Typing Architecture
Source : http://www.ditausers.org/training/DITATopics/
Une task est un topic spécialiséla racine est renommée taskbody est renommé taskbody
DITADarwin Information Typing Architecture
Sujet de type référence (reference)Donne des informations qui permettent de compléter
la connaissance(en liaison avec un sujet de type concept) ...
... ou aide à effectuer une tâche(en liaison avec un sujet de type tâche)
DITADarwin Information Typing Architecture
Source : http://www.ditausers.org/training/DITATopics/
Une reference est un topic spécialisé
la racine est renommée referencebody est renommé refbody
DITADarwin Information Typing Architecture
Carte (DITA map) [1/2]Créer du contenu avec DITA :écrire des sujets et des cartes (topics et maps)Une carte est un document XMLUne carte permet de définir comment assembler un ensemble de sujets
DITADarwin Information Typing Architecture
Carte (DITA map) [2/2]Une carte contient des liens vers des sujets, organisés sous forme de séquences qui apparaîtront sur les documents finauxUne carte DITA définit la table des matières des distributions (PDF, HTML, Java Help, etc.) et peut spécifier quels sujets sont liés entre eux
DITADarwin Information Typing Architecture
Domaine (Domain)Un domaine définit un ensemble d'éléments relatifs à un certain thème ou à une problématique d'auteur, indépendamment du type du sujet (topic)Les éléments d'un domaine sont définis dans un module de domaine qui peut être intégré à un type de sujet ; ils deviennent alors disponibles pour tout sujet de ce typeExemples de domaines standards livrés avec DITA : typographie, programmation, interface utilisateur, etc.
DITADarwin Information Typing Architecture
Outils/Produits - DémonstrationArbortext (racheté par PTC)http://www.arbortext.com/products/dita.htm
Adobe FrameMakerwww.adobe.com/products/framemaker/main.html
Altova XML Spywww.xmlspy.com
SoftQuad Xmetalwww.xmetal.com
Oxygen XML Editorwww.oxygenxml.com
Quark XML Author for Microsoft Word (anciennement In.Vision)http://dynamicpublishing.quark.com/fr/xml_author/
Inmedius DitaStormwww.inmediusdita.com
Dita Userswww.ditausers.org
Syntext Serna (démonstration)www.syntext.com/products/serna/
DITADarwin Information Typing Architecture
DITA vs DocBook [1/2]Standardisés tous deux par OASISDocBook a été conçu pour la production de contenus rédigés sous forme narrative, "en continu".DocBook veut être exhaustif, les extensions ne sont pas recommandées.DITA a été conçu pour les sujets isolés (topics), regroupés sous la forme d'ensemble de sujets. Les extensions sont encouragées.
DITADarwin Information Typing Architecture
DITA vs DocBook [2/2]Deux articles intéressants :Choosing an XML Schema: DocBook or DITA?http://www.thecontentwrangler.com/article_comments/choosing_an_xml_schema_docbook_or_dita/http://drmacros-xml-rants.blogspot.com/2008/04/choosing-xml-schema-docbook-or-dita.html
Il existe des transformations XSL permettant de passer :- de DITA à DocBook- ou de DocBook à DITA (en général plus compliqué)
Un autre articleDocBook to DITA Conversion Automation -Improving the Yield?http://www.dclab.com/docbook_to_dita.asp
DITADarwin Information Typing Architecture
Spécialisation [1/2]Spécialisation de types : créer des types à partir des types de base fournis par DITA (tâche, concept, référence)Spécialisation de domaines : étendre un vocabulaire s'appliquant à tout type d'information
DITADarwin Information Typing Architecture
Spécialisation [2/2]Héritage selon le modèle des architectures orientées objetPermet d'utiliser un cadre commun tout en adaptant les concepts aux besoins des entreprisesExemples dans les sous-comités DITA :
DITA Machine Industry Subcommittee
DITA Semiconductor Information Design Subcommittee
DITA Enterprise Business Documents Subcommittee
DITA Pharmaceutical Content Subcommittee
Un tutoriel sur la spécialisationhttp://www.xiruss.org/tutorials/dita-specialization/
DITADarwin Information Typing Architecture
Rédaction DITAUn titre peut éventuellement être suivi d'une description courte (shortdesc); ceci permet la découverte progressive (progressive disclosure) des contenus.Les sujets peuvent être imbriqués, mais toujours en dehors du contenu<topic>
<title>A general topic</title><shortdesc>This general topic is pretty general.</shortdesc><body><p>General topics are not very specific.</p></body><topic>
<title>A specific topic</title><shortdesc>This is a more specific topic.</shortdesc><body><p>Specifically, this is more specific.</p></body>
</topic></topic>
DITADarwin Information Typing Architecture
Conseils de rédactionÉvitez les locutions « voir ci-dessus »,« voir ci-dessous », « voir page suivante », etc.Identifier les informations communes et réutilisables.Par exemple les noms de produits sont définis comme des "variables" :
<p>Achetez le produit <keyword conref="central_file.dita#reusable_content/product_name"/> car c'est le meilleur</p>
DITADarwin Information Typing Architecture
Réutilisation des standardsDublin Core pour les métadonnéesXHTML pour le texteOASIS Tables pour les tableaux
DITADarwin Information Typing Architecture
Modifier les sorties - DITAVALRappel : Une carte DITA (DITA map) contrôle l'assemblage des sujets pour une sortieDITA fournit deux mécanismes permettant de paramétrer et de modifier les sorties :le Filtering et le FlaggingCes mécanismes sont définis dans un fichier XML nommé DITAVAL
DITADarwin Information Typing Architecture
Modifier les sorties - DITAVALFiltering : permet d'inclure ou d'omettre des éléments en sortie. Toute l'information n'apparaît pas en sortie.Exemple :<p>Vous devez tapez la commande suivante :</p><sl>
<sli platform="windows"><userinput>start.bat</userinput></sli><sli platform="linux"><userinput>start.sh</userinput></sli>
</sl><p>puis patientez pendant l'initialisation</p>
Affichage filtering (avec filtre où platform a la valeur "windows")Vous devez tapez la commande suivante :start.batpuis patientez pendant l'initialisation
DITADarwin Information Typing Architecture
Modifier les sorties - DITAVALFlagging : indique des différences de traitement (par exemple de rendu visuel) en fonction d'un attribut. Toute l'information apparaît en sortie. Exemple :<p>Vous devez tapez la commande suivante :</p><sl>
<sli platform="windows"><userinput>start.bat</userinput></sli><sli platform="linux"><userinput>start.sh</userinput></sli>
</sl><p>puis patientez pendant l'initialisation</p>
Affichage flaggingVous devez tapez la commande suivante :Windows start.batLinux start.shpuis patientez pendant l'initialisation
DITADarwin Information Typing Architecture
DITA Open ToolkitLe DITA Open Toolkit (DITA-OT en abrégé) est un ensemble d'outils open source écrits en Java qui permettent de traiter des DITA maps et des contenus de sujets DITAIl permet de générer de nombreux formats de sortie (HTML, HTML Help, PDF, Java Help, etc.) à partir de contenus DITA
DITADarwin Information Typing Architecture
BOOKMAPUn Bookmap est une spécialisation de DITAMAP décrivant un ensemble d'informations destinées à être publiées sous forme de livreContient des éléments spécialisés tels que <booktitle>, <bookmeta>, <frontmatter> (préface), <chapter>, etc.
DITADarwin Information Typing Architecture
OASIS travaille aussi sur une version de DITA orientée vers les documents d'affaires organisés de manière narrativeOASIS DITA for Business Documents Sub-committeehttp://www.oasis-open.org/committees/tc_home.php?wg_abbrev=dita-busdocs
DITADarwin Information Typing Architecture
Conclusion [1/2]La mutation des médias que nous vivons actuellement concerne aussi la manière dont on conçoit, organise et restitue les contenusDans ce contexte, il est important d'acquérir d'autres "cultures du document" et de comprendre les concepts et techniques qui y sont déployées
DITADarwin Information Typing Architecture
Conclusion [2/2]Parmi les concepts développés dans les diverses "cultures du document", ceux de DITA (topics, types, maps, specialization, etc.) sont particulièrement intéressantsDITA peut effectivement être utilisé en dehors du domaine de la documentation technique, quand la structuration par sujets est forte
DITADarwin Information Typing Architecture
Pour en savoir plus
History of DITAhttp://dita.xml.org/book/history-of-dita
Introduction à DITA, par Pierre Attar (en français)http://www.tireme.fr/glossaire/SPEC-DITA.html
OASIS Darwin Information Typing Architecture (DITA) TChttp://www.oasis-open.org/committees/tc_home.php?wg_abbrev=dita
Introduction to the Darwin Information Typing Architectureby Don Day, Michael Priestley, David Schell (IBM)http://www-128.ibm.com/developerworks/xml/library/x-dita1/index.html
DITA Tutorialshttp://www.ditausers.org/tutorials/
Merci pour votre attention