Forums : Xul, Xbl, JS...

Aller à la discussion :  Plus récente Plus ancienne

# Ajouter un noeud dans un RDF via JsLib

Envoyé par : Utilisateur anonyme

Date : 23/01/2006 11:27

Bonjour ! Je débute dans xul et je rencontre mon premier problème sérieux. En effet j’ai créé une petite application de gestion de contacts qui met en place un tree rempli à partir d’une source de données RDF. Un cas d’utilisation me permet d’ajouter une ressource dans le RDF. C’est la que ce situe mon pb. Explication en image :

Voici mon RDF simplifié (avec des enregistrements en moins) : Chemin sur le disque : C:/toto/entreprises.rdf

<?xml version="1.0" encoding="ISO-8859-1"?>
<RDF:RDF xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
        xmlns:ENTREPRISE="http://www.toto.com/rdf/entreprise/rdf#">

 <RDF:Seq RDF:about="http://www.toto.com/entreprises/all/">
   <RDF:li>
    <RDF:Description RDF:about="http://www.toto.com/entreprises/1">
 <ENTREPRISE:ID>1</ENTREPRISE:ID>
 <ENTREPRISE:nom>Bidon sarl</ENTREPRISE:nom>
 <ENTREPRISE:adresse>9 rue des sdl 57000 Metz</ENTREPRISE:adresse>
 <ENTREPRISE:telephone>0387696966</ENTREPRISE:telephone>
 <ENTREPRISE:siret>23254678</ENTREPRISE:siret>
 <ENTREPRISE:nb_contacts>0</ENTREPRISE:nb_contacts>
    </RDF:Description>
  </RDF:li>
 </RDF:Seq>
</RDF:RDF>

Voici la fonction que j'appel :

function ajout_entr()
{
include(jslib_rdf);
include(jslib_rdfbase);
include(jslib_rdffile);
include(jslib_rdfcontainer);
include(jslib_rdfresource);
include(jslib_rdfmemory);


var src = "file:///C:/toto/entreprises.rdf";
var gRDF = new RDF(src); 
var seq = gRDF.getRootSeq("http://www.toto.com/entreprises/all/");
var node = seq.addNode("testtototototototototo");
gRDF.flush();

}

La console indique :

* RDFFILE: Opening File
* RDFFILE: doing remote init
* RDFFILE: refresh remote
seq has no properties

aucune noeud <testtototototototototto/> n'est ajouté dans le RDF :'( pouvez vous m'aidez à corriger mon script svp. En vous remerciant d'avance.

Antoine (étudiant en info)

# Re: Ajouter un noeud dans un RDF via JsLib

Envoyé par : hhf

Date : 23/01/2006 23:52

J'ai pas l'habitude d'utiliser la jsLib, mais deja pour rajouter quelque chose a un rdf (memory) il faut mettre l'epace de nom, je pense...

# Re: Ajouter un noeud dans un RDF via JsLib

Envoyé par : Utilisateur anonyme

Date : 24/01/2006 10:57

Au secours, j'ai trouver des exemples sur http://docs.mandragor.org/files/Misc/Mo(..) voici ma nouvelle version du script :

var rdfFileURL = 'chrome://gest_contact/content/entreprises.rdf';
var gRDF = null;
fileUtils = new FileUtils( );
path = fileUtils.chrome_to_path(rdfFileURL);
if(navigator.platform == "Win32") 
{
path = path.replace(/\//g,"\\"); 
// Only needed on Windows, until JSLib is fixed
}
gRDF = new RDFFILE(path);
var item ='toto:tata';
gRDF.addNode(item);
gRDF.flush( );

maintenant il me dit "gRDF.addNode is not a function"

Je ne comprend vraiment pas bien le fonctionnement de cette bibliotheque pouvez vous m'aider ?

Merci

Antoine

Il n'est plus possible de poster des messages dans ce forum.


Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.

Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™ sont des marques de la fondation Mozilla.