100 lines
5.1 KiB
HTML
100 lines
5.1 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="fr">
|
||
<head>
|
||
<meta charset="utf-8">
|
||
<title>Relax max - lespiedsdanslecode.org</title>
|
||
<meta name="DC.title" content="lespiedsdanslecode.org, site de Yannick François aka yaf (ou ya_f)."/>
|
||
<meta name="description" content="Le site de Yannick François. Développeur Senior, Responsable Produit, Pédagogue. Je travail chez Pix"/>
|
||
<meta name="keywords" content="code, développement, programmation, apprentissage, apprendre, lean, agile, logiciel, tdd, objet, refactoring, libre, creative commons, linux, unix"/>
|
||
<meta name="author" content="Yannick François, https://lespiedsdanslecode.org"/>
|
||
<meta name="designer" content="Yannick François, https://lespiedsdanslecode.org"/>
|
||
<meta name="geo.placename" content="Le Faouët, Pontivy, Morbihan, Bretagne, France métropolitaine, 56320, France"/>
|
||
<meta name="robots" content="index,follow" />
|
||
<meta name="language" content="French" />
|
||
<meta name="HandheldFriendly" content="True" />
|
||
<meta name="MobileOptimized" content="320" />
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=0, minimum-scale=1.0, maximum-scale=1.0" />
|
||
<link rel="index" title="Yannick François / Développeur / Pédagogue" href="index.html" />
|
||
<link rel="alternate" type="application/rss" href="/feed.xml" title="lespiedsdanslecode.org/feed" />
|
||
<style>
|
||
body {
|
||
font-size:16pt;
|
||
max-width:42rem;
|
||
min-width: 18rem;
|
||
margin: 1em;
|
||
color: black;
|
||
background: white;
|
||
font-family: Palatino, "Palatino Linotype", "Palatino LT STD", "Book Antiqua", Georgia, serif;
|
||
}
|
||
a { color: darkred; }
|
||
a:hover { background: gold; }
|
||
a:visited, a:active { color: dimgrey; }
|
||
nav { text-align:center; font-size:smaller; padding: 0; margin: 0; }
|
||
nav li { list-style-type: none; }
|
||
h2 > a, h2 > a:active, h2 > a:visited { color: lightgrey; text-decoration:none;}
|
||
h2 > a:hover { color: black; text-decoration:underline }
|
||
|
||
@media (max-width: 1000px) { #portrait {display:none;} }
|
||
</style>
|
||
</head>
|
||
<body>
|
||
<article>
|
||
<h1>Relax max</h1>
|
||
|
||
<p><em>ou quand un fan d’XML s’y remet enfin et découvre
|
||
RelaxNg</em></p>
|
||
<p>J’ai toujours aimé l’univers qui gravite autour
|
||
d’“XML”:http://www.w3.org/<span class="caps">XML</span>/ : <a
|
||
href="http://www.w3.org/TR/xpath20/">XPath</a>, <a
|
||
href="http://www.w3.org/Style/XSL/">XSLT</a>… Mais je n’avais pas
|
||
encore vraiment eu l’occassion de mis frotter plus que ça au
|
||
travail. Enfin si, mais là ça atteint des sommets.</p>
|
||
<p>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/…</p>
|
||
<p>Malheureusement comme beaucoup de société dont j’ai croisé la
|
||
route, personne ne prend le temps de faire les chose bien: la <a
|
||
href="http://fr.wikipedia.org/wiki/DTD">DTD</a> du fichier <span
|
||
class="caps">XML</span> servant de base à tout un tas de chose
|
||
dans l’application n’est pas à jour. Mais alors pas du tout. Du
|
||
coup, je me suis plongé dans cette petite nouveauté (enfin pour
|
||
moi) que j’avais vu arrivé, mais sur laquelle je ne m’etais pas
|
||
encore penché: <a href="http://www.relaxng.org/">RelaxNG</a></p>
|
||
<p>Pour décrire la structure d’un document <span
|
||
class="caps">XML</span> on a (classé par ordre d’apparition):</p>
|
||
<ul>
|
||
<li></li>
|
||
</ul>
|
||
<p><acronym title="Document Type Definition"><span
|
||
class="caps">DTD</span></acronym>. C’est un format interessant,
|
||
mais non <span class="caps">XML</span>. Il a l’avantage d’être
|
||
simple.</p>
|
||
<ul>
|
||
<li><p>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 d’une machine. Pas mal de base de
|
||
données et autres produit se sont lancé dans l’utilisation 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.</p></li>
|
||
<li><p>RelaxNG. Description de document en <span
|
||
class="caps">XML</span> egalement, donc les même avantages que
|
||
XmlSchema. Cependant c’est 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)</p></li>
|
||
</ul>
|
||
<p>Bon plutôt que de vous faire un tas d’exemple, je préfère vous
|
||
faire lire ceux qui existe déjà et qui sont très bien: <a
|
||
href="http://relaxng.org/tutorial-20011203.html">RelaxNG
|
||
Tutorial</a></p>
|
||
<p>Si vous n’avez pas encore regardé XmlSchéma, sauté directement
|
||
à RelaxNG, vous aller gagner du temps.</p>
|
||
</article>
|
||
</body>
|
||
</html>
|