Developpement C/C++ - CC/PP et parseur XML/RDF/schémas

Developpement C/C++ - CC/PP et parseur XML/RDF/schémas - C++ - Programmation

Marsh Posté le 08-12-2007 à 15:50:44    

Bonjour,
 
Le language CC/PP (http://www.w3.org/TR/CCPP-struct-vocab/) permet de décrire le profil d'un terminal (PC, PDA, laptop, etc), suivant plusieurs caractéristiques matérielle, logicielle, préférence utilisateurs. Ceci peut par exemple servir à adapter un flux (audio, video, web) aux capacités du terminal. En voici un exemple, sont précisé la résolution (matérielle), le système d'exploitation (logiciel) et le navigateur web (préférence utilisateur).
 

Code :
  1. <?xml version="1.0"?>
  2. <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  3.      xmlns:ccpp="http://www.w3.org/2002/11/08-ccpp-schema#"
  4.      xmlns:ex="http://www.example.com/schema#">
  5. <rdf:Description rdf:about="http://www.example.com/schema#Profile">
  6. <ccpp:component>
  7.     <ex:Hardware rdf:about="http://www.example.com/schema#Hardware">
  8.         <ex:DisplayWidth>320</ex:DisplayWidth>
  9.         <ex:DisplayHeight>240</ex:DisplayHeight>
  10.     </ex:Hardware>
  11. </ccpp:component>
  12. <ccpp:component>
  13.     <ex:Software rdf:about="http://www.example.com/schema#Software">
  14.         <ex:OSName>Debian</ex:OSName>
  15.         <ex:OSVersion>4.0r1</ex:OSVersion>
  16.     </ex:Software>
  17. </ccpp:component>
  18. <ccpp:component>
  19.     <ex:User rdf:about="http://www.example.com/schema#User">
  20.         <ex:BrowserName>Mozilla</ex:BrowserName>
  21.         <ex:BrowserVersion>5.0</ex:BrowserVersion>
  22.     </ex:User>
  23. </ccpp:component>
  24. </rdf:Description>
  25. </rdf:RDF>


 
J'ai pour idée d'exploiter ce genre de code XML en programmation C/C++, mais je ne sais pas trop comment m'y prendre (réutiliser des parseurs XML, RDF, open-source si possible ou je ne sais quelle autre méthode...)
 
Merci d'avance pour vos conseils.


Message édité par CeD69 le 08-12-2007 à 15:51:18
Reply

Marsh Posté le 08-12-2007 à 15:50:44   

Reply

Marsh Posté le 08-12-2007 à 17:20:12    

Merci beaucoup. Voilà quelques 20 minutes que je parcours tes liens et en effet ça correspond bien à ce que je voulais. Le document XML est chargé en mémoire sous forme d'un arbre que l'on peut parcourir pour récupérer des informations.
 
De plus, la librairie ne fait que quelques ko.
Je vais continuer à la comprendre, mais n'hésitez pas si vous avez d'autres conseils ;)
A+

Reply

Marsh Posté le 08-12-2007 à 18:50:14    

xerces-c c'est ce qu'il y a de mieux pour manipuler le XML en C++.  
 
Par contre, je trouve l'API assez mal fichue, la première chose que j'ai faite quand j'ai utilisé cette bibliothèque, c'est écrire une surcouche pour me faciliter la vie. [:mullet]
 
Autrement, c'est très rapide et ça fait bien son boulot.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed