Cliquez ici.
Accueil
 chercher             Plan du site             Info (English version) 
L'histoire de XML s'écrit en ce moment même. XMLfr vous aide à la suivre et à en dégager les tendances.Les listes de discussions XMLfr sont à votre disposition pour réagir sur nos articles ou simplement poser une question.Si vous ètes passionnée(e) par XML, pourquoi ne pas en faire votre métier ?XMLfr n'est heureusement pas le seul site où l'on parle de XML. Découvrez les autres grâce à XMLfr et à l'ODP.Les partenaires grâce auxquels XMLfr peut se développer.Pour tout savoir sur XMLfr.XMLfr sans fil, c'est possible !Pour ceux qui veulent vraiment en savoir plus sur XML.L'index du site.
 Commentaires et questions non techniques.Commentaires et questions techniques.

 
Cliquez ici.

[xml-tech] INFO : La longue marche de JDOM 1.0

Auteur: <redacteurs@xmlfr.org>
Date: 10/09/2004 - 09:22
X-Mailer: FormatedTextOutputHandler

La longue marche de JDOM 1.0

Un peu plus de quatre ans apres la premiere discussion entre les deux
auteurs, JDOM conclut dix versions beta par une version 1.0.

Frederic Laurent  , opikanoba.org ( fl@opikanoba.org ).
---------------
Retrouvez cet article en ligne
(http://xmlfr.org/actualites/tech/040910-0001).

Donnez votre avis !
mailto:xml-tech@xmlfr.org?subject=Re:%20INFO%20:%20La%20longue%20marche%20de%20JDOM%201.0
---------------

A l'automne 2000, Jason Hunter  et Brett McLaughlin  se rencontrent a
Santa Clara lors d'une conference O'Reilly . Ils echangent leurs
frustrations quant a l'utilisation des API DOM et SAX , et decident
alors d'en creer une pour les programmeurs Java desireux d'utiliser XML
d'une facon tres simple. JDOM [1] est ne. Jason Hunter  , auteur de
«Java Servlet Programming» et createur du site servlets.com [2] ,
s'occupera de la convivialite d'utilisation pour le programmeur Java .
Brett McLaughlin  , auteur de «Java and XML», aura la charge du respect
de la conformite de l'API avec les specifications XML .

Apres deux versions beta privees, JDOM beta 3 devient disponible, le 27
avril 2000. JDOM n'etant pas un produit commercial, la guerre des
versions l'epargne. L'API continue donc sa route des versions beta,
incluant toujours plus de fonctionnalites et se repandant largement
dans la communaute Java . L'alternative aux specifications DOM [3] du
W3C est d'ailleurs largement decrite dans nombre d'articles techniques
lies a Java (javaworld partie 1 [4] et 2 [5] , ibm developerWorks [6] ,
Oracle Technical Network - partie 1 [7] , 2 [8] et 3 [9] , xml.com [10]
, ...) sur Internet mais egalement dans les ouvrages traitant de XML
(comme Processing XML with Java [11] par exemple). Par ailleurs, JDOM
est integre ou supporte par de plus en plus d'autres briques
logicielles. Citons par exemple Saxon [12] , le celebre processeur XSLT
/ XPath ; Jaxen [13] , un autre processeur XPath , eclipse [14] ,
l'idee Open Source Java ...

Si DOM est une specification qui definit des concepts independants de
toute mise en oeuvre et donc de tout langage, JDOM affiche une volonte
claire de coller au plus pres au langage Java , supprimant de fait de
nombreuses lourdeurs inherentes a DOM . Ce choix delibere constitue le
vrai succes de JDOM . Voici une liste (non exhaustive) de quelques
differences :

  - les elements XML sont representes par des classes concretes et
    efficace pour le programmeur Java et non par des interfaces
  - les noeuds XML peuvent etre crees sans reference a un document DOM
    specifique. Ils peuvent etre rattaches a n'importe quel document
    par la suite
  - la creation des elements (attributs, texte, ...) XML en general est
    simplifiee et adaptee a Java , donnant un code reduit et plus
    lisible
  - le deplacement d'un noeud XML (et donc de toute sa descendance)
    d'un document vers un autre est tres simple. Avec DOM , cette
    manipulation est assez lourde et couteuse puisqu'il faut demander
    au document devant accueillir le nouveau noeud d'en faire une
    copie...
  - l'exportation de l'arbre XML dans un buffer ou dans un fichier de
    facon est aisee. C'est un des manques de DOM , manque qui sera
    comble par l'implementation des specifications DOM 3 Load and Save
    [15] (qui est encore un document de travail)
L'API de JDOM propose les fonctionnalites suivantes :

  - creation de document XML
  - lecture de fichiers XML a partir de fichiers, arbres DOM , flux SAX
    (en realite, JDOM ne fournit qu'une representation sous forme
    d'objets Java , mais ce n'est pas un analyseur syntaxique. Il en
    utilise un, comme Xerces par exemple, pour la lecture de flux XML )
  - exportation d'arbre XML JDOM sous la forme de fichier, arbre DOM ,
    flux SAX
  - transformation XSLT
  - support de XPath 1.0 (a travers la brique logicielle Jaxen )
Alors si cette API fonctionne depuis longtemps et pour beaucoup de
monde, pourquoi une version 1.0 si tardive ? Jason Hunter  invoque
trois raisons majeures : d'une part, la complexite de XML entraine de
longs efforts pour fournir une API conforme aux specifications, d'autre
part une fois la couverture des fonctionnalites indispensables a
l'auteur lui-meme atteinte, completer les aspects dont il n'avait pas
besoin ne le motivait que moyennement (d'autant de Brett McLaughlin  a
quitte le projet fin 2000). Enfin, JDOM est une JSR - soit une
specification Java (Java Specification Request) - soumise et approuvee
par le Java Community Process ( JCP ). La gestion inherente au
processus JCP et la defense des idees de l'auteur face a Sun ont ete si
longues et fastidieuses qu'il a abandonne cette JSR-102 . Par ailleurs,
il reconnait [16] que la beta 7 aurait pu deboucher sur cette la
version stable 1.0, et qu'aujourd'hui il produirait la version 2.0.
Mais l'API etait sujette aux changements, et il a donc prefere garder
ce statut de version temporaire pour quelques annees de plus.

Malgre tout, JDOM , avec quatre annees d'existence, reste bel et bien
une alternative de poids au modele DOM , et le nombre de developpeurs
convaincus croit sans cesse. Ces adeptes attendaient depuis longtemps
ce changement de statut (question tellement recurrente sur la liste de
discussion JDOM qu'elle fait partie de la FAQ !), pour pouvoir
justifier l'integration de la brique logicielle dans leurs projets.
Apres s'etre interesse a XQuery (creation du site xquery.com [17] ) et
le developpement d'une suite de tests de conformite des processeurs
XQuery (BumbleBee [18] ), Jason Hunter  peut donc enfin effacer la
mention beta de JDOM , delivrer une version 1.0 largement eprouvee, et
envisager la suite pour construire JDOM 1.1...

Autres articles :

  - JDOM 1.0 Beta 7 supporte XSLT. [19]
  - JDOM se rapproche du coeur de Java. [20]
Et sur d'autres sites :

  - Chapitre 14 de Java et XML [21] , et Chapitre 15 [22] ecrits par
    Elliotte Rusty Harold
  - Le site Web [23] de JDOM
Copyright 2004 , Frederic Laurent .

---------------------------------------------------------
References:
[1] http://www.jdom.org
[2] http://www.servlets.com
[3] http://www.w3.org/DOM/
[4] http://www.javaworld.com/javaworld/jw-05-2000/jw-0518-jdom.html
[5] http://www.javaworld.com/javaworld/jw-07-2000/jw-0728-jdom2.html
[6] http://www-106.ibm.com/developerworks/java/library/j-jdom/
[7] http://otn.oracle.com/oramag/oracle/02-sep/o52jdom.html
[8] http://otn.oracle.com/oramag/oracle/02-nov/o62odev_jdom.html
[9] http://otn.oracle.com/oramag/oracle/03-mar/o23javaxml.html
[10] http://www.xml.com/pub/a/2002/04/03/csharp.html
[11] http://www.cafeconleche.org/books/xmljava/
[12] http://saxon.sf.net
[13] http://jaxen.org/
[14] http://eclipse.org
[15] http://www.w3.org/TR/DOM-Level-3-LS
[16] http://www.servlets.com/blog/archives/000059.html
[17] http://xquery.com/
[18] http://xquery.com/bumblebee/
[19] http://xmlfr.org/actualites/tech/010710-0001
[20] http://xmlfr.org/actualites/tech/010301-0002
[21] http://www.cafeconleche.org/books/xmljava/chapters/ch14.html
[22] http://www.cafeconleche.org/books/xmljava/chapters/ch15.html
[23] http://jdom.org
---------------------------------------------------------
Mail genere par FormatedTextOutputHandler pour XT
(http://4xt.org/downloads/examples/outputhandlers/formatedtext/).

--
Devenez redacteur <XML>fr et contribuez au developpement du
xml francophone (http://xmlfr.org/infos/redacteurs/) !
Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
Cette liste est a votre disposition pour discuter en francais de 
tout sujet technique lie a XML.
Pour resilier votre abonnement, envoyez un message contenant 
la commande "unsubscribe" a xml-tech-request@xmlfr.org
(mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
Received on Fri Sep 10 11:22:31 2004

Archive générée par hypermail 2.1.8 le 04/10/2004 - 20:25 UTC

webmaster@xmlfr.org

 

xml tech

Discussions techniques au sujet de XML.

Cette liste est à votre disposition pour discuter en français de tout sujet technique lié à XML.



Devenez rédacteur <XML>fr et contribuez au développement du xml francophone !
Les documents publiés sur ce site le sont sous licence "Open Content"
Conception graphique
  l.henriot@online.fr  

Conception, réalisation et hébergement