Re: Un zeste de REX, AJAX et SVG

Robin Berjon <[email protected]>
Newsgroups gmane.text.xml.french.tech
Message-ID <[email protected]>
Salut Stéph!

On Jul 06, 2006, at 13:45, Stéphane Bonhomme wrote:
> Je n'ai jamais utilisé la REX, mais cela semble une "simplication" de
> DOM+Xpath permettant une manipulation Facile d'un arbre xml en  
> mémoire.

Plus ou moins, mais pas tout à fait. C'est un mécanisme simple de  
transmission de DOM Events qui associe une notion de synchronisation  
de documents: en transmettant les DOM Events de mutation, l'arbre les  
recevant peut être modifié comme l'original l'a été. La spécification  
courante se limite présentemment à ces mutation events, mais elle  
permet de transmettre des events de tous types.

La version la plus fraiche est en CVS:

   http://dev.w3.org/cvsweb/~checkout~/2006/webapi/REX/publish/ 
rex.html?content-type=text/html;%20charset=utf-8

Elle sera publiée sous peu, avec quelques changements supplémentaires.

> Un point important que tu ne releves pas dans ton billet est que
> l'utilisation des méthodes standard de DOM (en particulier pour la
> manipulation de styles et tailles des objets) est *fortement*
> déconseillée lorqu'on manipule du SVG. En effet il existe dans la
> recomandation svg un annexe définissant un domsvg
> (http://www.w3.org/TR/SVG/svgdom.html) offrant des interfaces
> spécialisée dans la manipulation des objets graphiques, d'expérience,
> ces méthodes sont beaucoup plus efficaces que la modification des
> attributs xml par du dom classique (testé dans l'implémentation svg
> native gecko).

Je ne suis pas d'accord. Dans certaines implémentation ça peut être  
plus rapide, mais ça dépend de beaucoup de facteurs et n'est pas  
nécessairement toujours le cas. Aussi, la possibilité de réutiliser  
ses connaissances XML directement est très intéressante. Finalement,  
le uDOM qui est dans SVG Tiny 1.2 ne fait pas usage du DOM étendu de  
SVG Full 1.0 car il est trop lourd à implémenter.

> Peut-on envisager un svg-rex ? comme il existe un svgdom permettant  
> une
> manipulation de haut niveau des objets svg ? JE pense que cela peut  
> etre
> une piste interessante, bien que (à ma connaissance) pes explorée  
> par le
> W3C.

REX a été créé spécifiquement avec SVG comme cas d'usage (demandé par  
l'OMA), et en collaboration avec le SVG WG. Il n'y a pas besoin de  
spécialiser REX à SVG, ça marche déjà tout seul avec.

> Je vous invite à regarder le prototype de tableau blanc SVG permettant
> de manipuler à plusieurs des objets svg que j'ai réalisé pour
> m'acclimater avec ces technologies :
> http://www.exselt.com:8000/static/coopdrw.xul

Très chouette!

> Cette application utilise
> - xmlHttpRequest pour synchroniser les objets (et pour le chat) (les
> dessins sont intégralement transmis lors de la synchro, il serait
> interessant d'avoir des evements de mise à jour)

REX pourrait en effet être utilisé pour ça (et pour le chat en  
ajoutant des évènements spécifiques au chat dans ton namespace)

-- 
Robin Berjon
    Senior Research Scientist
    Expway, http://expway.com/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.