| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> |
| <html> |
| <head> |
| <title>FAQ_item</title> |
| <meta http-equiv="content-type" content="text/html; charset=UTF-8"> |
| </head> |
| <body> |
| <table border="0" cellpadding="4" width="100%"> |
| <tbody> |
| <tr style="font-family: helvetica,arial,sans-serif;"> |
| <td align="left" valign="top" width="100%"><!-- Content --> |
| <h1>OpenOffice.org et le XML<br> |
| </h1> |
| <br> |
| <span style="font-family: times new roman,times,serif;">Vous avez |
| sans-doute souvent entendu parler du XML, entendu dire que le |
| format de fichier d'OpenOffice.org était du XML, mais qu'en est-il |
| exactement et surtout qu'est-ce que cela signifie, qu'est-ce en fin de |
| compte que le XML ?</span><br |
| style="font-family: times new roman,times,serif;"> |
| <br style="font-family: times new roman,times,serif;"> |
| <h2 style="font-family: times new roman,times,serif;"><span |
| style="font-family: helvetica,arial,sans-serif;">Qu'est-ce que le XML ?</span><br> |
| </h2> |
| <span style="font-family: times new roman,times,serif;">Cet |
| acronyme est l'abréviation de eXtensible Markup Language. En le |
| traduisant en français, cela voudrait dire "langage à balises |
| extensibles". Cela ne vous en dit pas beaucoup plus :)</span><br |
| style="font-family: times new roman,times,serif;"> |
| <span style="font-family: times new roman,times,serif;">Le XML |
| fait partie de la classe des métalangages, c'est en fait un |
| sous-ensemble du SGML. Bon, alors qu'est-ce que le SGML (Standard |
| Generalized Markup Language) ? C'est un langage qui permet de créer des |
| documents de façon structurée et modulaire. Concrètement cela veut dire |
| que vous pouvez créer un document à partir de données aussi |
| hétéroclites que du son, des données provenant d'une base, ou du texte |
| et des images. Le SGML a donc été défini pour une large gamme |
| d'applications et doit être maintenu sur un très long terme. Ce langage |
| étant assez complet et complexe, le XML a été créé pour simplifier le |
| SGML.</span><br style="font-family: times new roman,times,serif;"> |
| <br style="font-family: times new roman,times,serif;"> |
| <span style="font-family: times new roman,times,serif;">Ce qui |
| peut prêter à confusion au premier abord, c'est que le HTML |
| ressemble beaucoup au XML. C'est un langage avec des balises, qui |
| s'ouvrent et qui se ferment. Grande différence pourtant, le HTML a été |
| défini avec des balises qui décrivent la présentation, alors que les |
| balises du XML, elles, traitent du contenu. Mais oui, le HTML est aussi |
| un sous ensemble du SGML, mais uniquement pour traiter des données sur |
| le Web.</span><br style="font-family: times new roman,times,serif;"> |
| <br style="font-family: times new roman,times,serif;"> |
| <span style="font-family: times new roman,times,serif;">Si l'on |
| se résume, le XML est donc un moyen (et ni un langage de |
| programmation, ni un nouveau HTML) clair de structurer, décrire et |
| échanger des données. On sépare le contenu de la forme pour permettre |
| cet échange. Le contenu pourra alors être réutilisé sous d'autres |
| formes ou d'autres supports. Les données peuvent être de toutes sortes |
| : formules chimiques, données financières, données musicales, texte...<br> |
| L'actualité du xml en France <a href="http://xmlfr.org/">xmlfr.org</a><br |
| style="font-family: times new roman,times,serif;"> |
| </span> <br style="font-family: times new roman,times,serif;"> |
| <span style="font-weight: bold;"><span |
| style="font-family: times new roman,times,serif;">Un exemple du |
| contenu xml d'un |
| document OOo :</span><br> |
| </span><?xml version="1.0" encoding="UTF-8"?><br> |
| <!DOCTYPE office:document-meta PUBLIC "-//OpenOffice.org//DTD |
| OfficeDocument 1.0//EN" "office.dtd"><br> |
| <office:meta><br> |
| |
| <meta:generator>OpenOffice.org 1.1.1 |
| (Win32)</meta:generator><br> |
| <!--645m35(Build:8762)--><br> |
| |
| <meta:initial-creator>Sophie Gautier</meta:initial-creator><br> |
| |
| <meta:creation-date>2004-05-10T19:07:36</meta:creation-date><br> |
| <div style="margin-left: 40px;"><meta:document-statistic |
| meta:table-count="0" meta:image-count="31" meta:object-count="0" |
| meta:page-count="17" meta:paragraph-count="213" meta:word-count="2647" |
| meta:character-count="16353"/><br> |
| </div> |
| </office:meta><br> |
| <span style="font-family: times new roman,times,serif;">Vous le |
| voyez les balises <> distinguent le contenu du document. |
| Une balise ouverte doit toujours être fermée <office:meta> sera |
| terminé par </office:meta>. Pour ajouter des informations au |
| document, on lui donne des attributs, toujours accompagnés d'une valeur |
| : meta:page-count="17". L'attribut meta:page-count a la valeur "17" (le |
| document a 17 pages). On peut également placer des commentaires comme |
| ceci :</span> <!--645m35(Build:8762)-->. <br> |
| <span style="font-weight: bold;"></span> |
| <h2>Pourquoi choisir le XML ?<br> |
| </h2> |
| <span style="font-family: times new roman,times,serif;">Si l'on |
| regarde le fragment de code XML ci-dessus, il y a quelques |
| choses qui surprennent :</span><br |
| style="font-family: times new roman,times,serif;"> |
| <ul style="font-family: times new roman,times,serif;"> |
| <li>le XML est lisible par vous même, mais également par la |
| machine. C'est un de ses grands avantages.</li> |
| <li>Il est unicode (unicode : on définit un nombre unique pour |
| chaque charactère, quels que soient la plateforme, le langage, le |
| programme). Cela veut dire qu'il peut être stocké dans différents |
| encodages. Quelle différence ? Vous savez sans doute que les documents |
| étaient (sont encore) encodées en ASCII, mais celui-ci ne se rapporte |
| qu'à un seul alphabet et un seul système d'écriture. Le fragment de |
| code indique un encodage UTF-8 qui est supporté par bon nombre |
| d'alphabets.</li> |
| <li>le XML est orienté objet : au lieu de décomposer les |
| données dans des tables normalisées liées par relations, il décrit des |
| objets (concrets ou abstraits) en modelisant leurs propriétés telles |
| qu'elles sont, ce qui rend les documents XML plus intuitifs à |
| comprendre.</li> |
| <li>Enfin, le XML distingue le contenu de la forme, la mise en |
| page des données étant assurée par des langages tiers comme CSS, XSL...</li> |
| <li>le XML génère un faible coût au niveau des composants |
| logiciels, d'où sa bonne intégration dans l'industrie informatique.</li> |
| </ul> |
| <h3>Le XML de OOo</h3> |
| <span style="font-family: times new roman,times,serif;">Et |
| comment, à quoi voit-on que OOo est du XML ? OOo a un format de |
| fichier .xml natif compressé. Cela signifie que les fichiers qui |
| composent votre document OOo sont encapsulés dans une archive. </span><br |
| style="font-family: times new roman,times,serif;"> |
| <span style="font-family: times new roman,times,serif;">Un |
| exemple : prenez votre dézipeur favorit et ouvrez n'importe quel |
| fichier .sxw (Writer) avec, voici ce que vous obtenez :</span><br |
| style="font-family: times new roman,times,serif;"> |
| <img alt="" src="zipOOo.jpg" |
| style="width: 121px; height: 176px; font-family: times new roman,times,serif;"><br |
| style="font-family: times new roman,times,serif;"> |
| <span style="font-family: times new roman,times,serif;">Une |
| collection de fichiers différents dont certains portent l'extension |
| .xml.</span><br style="font-family: times new roman,times,serif;"> |
| <br> |
| <span style="font-weight: bold;">Quels modules d'OOo utilisent le |
| xml ?</span> <br> |
| <span style="font-family: times new roman,times,serif;">Tous les |
| modules d'OOo utilisent le xml comme format de fichier natif. |
| Le module Math utilise une structure de package un peu différente, mais |
| du xml |
| à l'intérieur du package : MathML qui est un standard xml pour les |
| formules. |
| Egalement, certains fichiers de configuration utilisent le XML. Vous |
| retrouverez toujours ces fichiers :</span><br |
| style="font-family: times new roman,times,serif;"> |
| <span style="font-family: times new roman,times,serif;">- le |
| fichier meta.xml contient des informations au sujet du document |
| (l'auteur, la date de la dernière sauvegarde).</span><br |
| style="font-family: times new roman,times,serif;"> |
| <span style="font-family: times new roman,times,serif;">- le |
| fichier styles.xml contient les styles utilisés dans le document</span><br |
| style="font-family: times new roman,times,serif;"> |
| <span style="font-family: times new roman,times,serif;">- le |
| fichier contentt.xml contient le contenu principale du document |
| (texte, tableaux, éléments graphiques...)</span><br |
| style="font-family: times new roman,times,serif;"> |
| <span style="font-family: times new roman,times,serif;">- le |
| fichier settings.xml, en général spécificique à une application, |
| il contient certains paramètres tel que l'imprimante sélectionnée...)</span><br |
| style="font-family: times new roman,times,serif;"> |
| <span style="font-family: times new roman,times,serif;">- les |
| fichiers META-INF/manifest.xml contiennent des informations |
| supplémentaires sur les autres fichiers (comme le tympe MIME ou le |
| cryptage).</span><br style="font-family: times new roman,times,serif;"> |
| <span style="font-family: times new roman,times,serif;">Les |
| images sont sauvegardées dans le format natif à l'intérieur du zip. |
| Vous comprenez maintenant pourquoi les fichiers OOo occupent si peu de |
| place sur votre disque !<br> |
| <br> |
| Pour en savoir plus sur les formats de fichiers OpenOffice.org, |
| consultez le site <a href="http://xml.openoffice.org/">xml.openoffice.org</a><br> |
| <br> |
| Notez qu'un document XML ne peut être affiché tel quel, il lui faut un |
| langage de transformation (XSLT) et un langage de formatage des objets |
| (XSL-FO) pour pouvoir afficher toutes les informations correctement (ex |
| : si votre document est constitué des diverses parties organisées |
| distinctement ou encore s'il contient un tableau avec des formatages...)</span><br> |
| <h2>DTD, Schéma XML, XSLT, ..., qu'est-ce ?</h2> |
| <ul> |
| <li><span style="font-weight: bold;">DTD</span> : Document |
| Type Définition. La DTD va spécifier quels éléments et attributs |
| vont être utilisés dans le document XML et va en décrire la structure |
| et le contenu. La DTD peut être interne au document (elle inclut les |
| définitions au sein même du document) ou externe (elle est située dans |
| un fichier local ou appelée par URL). La norme XML ne rend pas |
| obligatoire la DTD, ainsi, on parle de document XML valide s'il |
| comporte une DTD ou de document XML bien formé s'il n'en comporte pas |
| (mais qu'il respecte le strandard XML).</li> |
| exemple de contenu de DTD OOo: <br> |
| <br> |
| List the initial writers in |
| this form (with initial="true"). Initial Writers is a term from the PDL |
| (License). <br> |
| If one of these authors |
| assined copyright to somebody else, e.g. the company they are working |
| for, use the attribute copyright="..." <br> |
| and name the copyright |
| holder.<br> |
| --><br> |
| <!ELEMENT authors ( author+ ) ><br> |
| <!ELEMENT author (#PCDATA)><br> |
| <!ATTLIST author<br> |
| |
| id ID #REQUIRED<br> |
| |
| initial CDATA #IMPLIED<br> |
| |
| email CDATA #REQUIRED><br> |
| <!--<br> |
| <li><span style="font-weight: bold;">Schéma XML </span>: Un |
| shéma permet également de définir la stucture d'un document XML, il est |
| cependant plus souple qu'une DTD pour définir les types d'éléments. Il |
| reprend les acquis des DTD pour définir les modèles. Les schémas font |
| l'objet |
| d'une spécification du W3C.<br> |
| </li> |
| <li><span style="font-weight: bold;">XSLT</span> : eXtensible |
| Style Language Transformation : C'est un langage de programmation |
| destiné à transformer un document XML en d'autres formes, par exemple |
| en RTF, en HTML ou en PDF, etc. Ce langage est déclaratif et non |
| procédural (pas d'algorithme), ce qui le rend plus facile d'accès pour |
| les non développeurs. Lui même écrit en XML, il peut être réinterpreté. |
| En fait, XSLT permet de tranformer l'arborescence du XML en règles de |
| modèles décrivant une feuille de style. On le compare souvent aux CSS |
| car comme les CSS il produit des règles, l'ordre d'apparition des ces |
| règles n'a pas d'importance dans le document, il comporte également des |
| priorités lorsque plusieurs règles peuvent s'appliquer. La |
| différence c'est que si une feuille CSS est vide, cela n'aura aucune |
| incidence sur le document html généré, elle sera simplement ignorée |
| n'étant qu'un habillage, alors que la feuille XSLT générera un |
| document vide (en réalité, ce n'est pas tout à fait vrai car la |
| spécification a défini des règles internes toujours présentes, donc le |
| document n'est jamais vraiment vide :) <br> |
| Un très bon site, plein de ressources et de filtres XSLT à utiliser |
| avec OOo : <a href="http://www.maxopeninfo.com/">http://www.maxopeninfo.com/ |
| </a><br> |
| </li> |
| <li><span style="font-weight: bold;">XPath</span> : langage |
| déclaratif associé à XSLT et qui permet de définir des chemins de |
| localisation à l'intérieur de l'abre XML.</li> |
| <li><span style="font-weight: bold;">XSL-FO</span> : eXtensible |
| Style Language for Formating Object : Langage permettant de définir les |
| objets de présentation générique (listes, tableaux...) utilisé assez |
| souvent pour des sorties PDF. Il intervient après une transformation |
| XSLT et permet de faire une interprétation visuelle des objets traités.<br> |
| </li> |
| </ul> |
| <h2>OASIS</h2> |
| Oasis (Organisation for the Advancement of Structured Information |
| Standard) est un consortium global qui dirige le développement, la |
| convergence et l'adoption de standards pour l'e-business. Il définit |
| donc le standard XML. Cette définition se fait en s'appuyant sur les |
| formats de fichiers OpenOffice.org, ceux-ci étant ouverts et conforme |
| avec une DTD publiée. Plus d'informations ici :<br> |
| <a |
| href="http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=office">http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=office</a><br> |
| Le format de fichiers OpenOffice.org a maintenant été adopté par KDE<br> |
| <br> |
| <span style="font-family: helvetica,arial,sans-serif;"><a |
| href="index.html">Retour à l'index de la FAQ Générale</a> | <a |
| href="../../faq-fr.html">Retour à l'index général de la FAQ</a></span><span |
| style="font-weight: bold;"><span style="font-weight: bold;"></span></span><br> |
| <br> |
| </td> |
| </tr> |
| <tr> |
| <td align="right" valign="bottom"> |
| <p> </p> |
| <!-- Copyrights --> |
| <p><small>OpenOffice.org native tongue concept and francophone |
| project are built for you with pride by Guy Capra (Alomphega).<br> |
| This fr project is also led and maintained by Sophie Gautier.</small></p> |
| <!-- /Copyrights --> </td> |
| </tr> |
| <tr> |
| <td style="vertical-align: top;"><br> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| <br> |
| <br> |
| <br> |
| <br> |
| <br> |
| <br> |
| </body> |
| </html> |