Files
lespiedsdanslecode/content/posts/2007/2007-07-10-relax-max.md
T
Yannick Francois a6421e78fa Changement pour hugo
2018-03-29 10:19:15 +02:00

33 lines
2.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
layout: post
title: Relax max
date: 2007-07-10
---
*où quand un fan dXML sy remet enfin et découvre RelaxNg*
Jai toujours aimé lunivers qui gravite autour d"XML":http://www.w3.org/<span class="caps">XML</span>/ : [XPath](http://www.w3.org/TR/xpath20/), [XSLT](http://www.w3.org/Style/XSL/)... Mais je navais pas encore vraiment eu loccassion de mis frotter plus que ça au travail. Enfin si, mais là ça atteint des sommets.
Je suis dans une boite dont le produit est basé sur <acronym title="eXtensible Markup Language"><span class="caps">XML</span></acronym>. Beaucoup, mais alors beaucoup de <acronym title="eXtensible Stylesheet Language Transformation"><span class="caps">XSLT</span></acronym>, du coup des XPath de folie, et bien sur une dose de Java/Hibernate/...
Malheureusement comme beaucoup de société dont jai croisé la route, personne ne prend le temps de faire les chose bien: la [DTD](http://fr.wikipedia.org/wiki/DTD) du fichier <span class="caps">XML</span> servant de base à tout un tas de chose dans lapplication nest pas à jour. Mais alors pas du tout. Du coup, je me suis plongé dans cette petite nouveauté (enfin pour moi) que javais vu arrivé, mais sur laquelle je ne metais pas encore penché: [RelaxNG](http://www.relaxng.org/)
Pour décrire la structure dun document <span class="caps">XML</span> on a (classé par ordre dapparition):
*
<acronym title="Document Type Definition"><span class="caps">DTD</span></acronym>. Cest un format interessant, mais non <span class="caps">XML</span>. Il a lavantage d’être simple.
* XmlSchema. Une description de document au format <span class="caps">XML</span>. Là tout de suite ça deviens interessant: on peut le traité par le biais dune machine. Pas mal de base de données et autres produit se sont lancé dans lutilisation de ce genre de document pour la description de leur données. Les description sont très strict, et bonus par rapport au <span class="caps">DTD</span>: on peut typé les données.
* RelaxNG. Description de document en <span class="caps">XML</span> egalement, donc les même avantages que XmlSchema. Cependant cest plus simple, et plus libre. On peut donc mieux décrire ces documents. En plus, pour ne rien gacher, on peut utiliser du XmlSchema dedans ! (ça peut être pratique)
Bon plutôt que de vous faire un tas dexemple, je préfère vous faire lire ceux qui existe déjà et qui sont très bien: [RelaxNG Tutorial](http://relaxng.org/tutorial-20011203.html)
Si vous navez pas encore regardé XmlSchéma, sauté directement à RelaxNG, vous aller gagner du temps.