IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Web sémantique Discussion :

Fuseki et TDB


Sujet :

Web sémantique

  1. #1
    Nouveau membre du Club
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    54
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Décembre 2011
    Messages : 54
    Points : 38
    Points
    38
    Par défaut Fuseki et TDB
    Bonsoir,


    L'objectif est d'instancier une ontologie , et pour ce faire , il fallait enregister les triplets RDF dans un triple store (TDB de jena )

    Pour ajouter des triplets dans le triple store ou bien on peut dire magasin RDF , il faut l'interroger par des requêtes SPARQL

    et pour faire fonctionner ces requêtes , il faut un serveur SPARQL qui est Fuseki (le plus connu d'aprés ce que j'ai trouvé en googlant)

    J'ai essayé de faire fonctionner mon programme sans serveur SPARQL sans cesse

    et à ce niveau que je me suis bloqué :

    Comment peut on travailer avec Fuseki et le triple store TDB ?

    Merci de me corriger si je me trompe ou si j'ai pas bien compris certains concepts

    Pourriez vous m'indiquer comment procéder ?

    Merci d'avance

  2. #2
    Membre éprouvé
    Avatar de Sapience
    Homme Profil pro
    Consultant sémantique & data à sparna.fr
    Inscrit en
    Avril 2005
    Messages
    305
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Consultant sémantique & data à sparna.fr
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 305
    Points : 915
    Points
    915
    Par défaut
    Citation Envoyé par BIREFKOUN Voir le message
    Comment peut on travailer avec Fuseki et le triple store TDB ?
    Salut

    Voilà la documentation qui explique comment lancer Fuseki en passant en paramètre une configuration TDB : http://jena.apache.org/documentation...-fuseki-server (descend un peu plus bas au chapitre "Fuseki Server and TDB").
    Fuseki inclut déjà TDB et il faut passer un fichier de configuration de TDB au lancement en utilisant le paramètre "--desc".

  3. #3
    Nouveau membre du Club
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    54
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Décembre 2011
    Messages : 54
    Points : 38
    Points
    38
    Par défaut
    Merci pour votre réponse Sapience

    je vous montre la partie du code qui permet l'ajout des nouveaux instances dans le triple store
    Merci de me donner votre avis

    Est-il possible dans ce cas là, d'utiliser le serveur Fuseki ?
    Merci de m'indiquer comment procèder ?sachant que j'utilise windows et pas linux!!!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    Model model=ModelFactory.createDefaultModel() ;
    				    	 		FileManager fm = FileManager.get();
    				    	 	    fm.addLocatorClassLoader(Form3.class.getClassLoader());
    				    	 	    InputStream in = fm.open("Ontofolder\\MetaProPOS.owl");
     
    								Location location = new Location ("C:/TDB-0.8.10/Store/DB1");
    								Dataset dataset = TDBFactory.createDataset(location);
    				    	 	    dataset.begin(ReadWrite.WRITE);
     
    								// Load some initial data
     
    							    try {
    						            TDBLoader.load(TDBInternal.getBaseDatasetGraphTDB(dataset.asDatasetGraph()), in, false);
    						            dataset.commit();
    						        } catch (Exception e) {
    						            dataset.abort();
    						        } finally {
    						            dataset.end();
    						        }
     
     
     
     
     
    				    	 	    String NL = "\n" ;
     
     
    				    	 	    String requete = "PREFIX onto: <http://www.semanticweb.org/ontologies/2010/9/MetaPatternOntology.owl> \r"
    				    	 	    	+NL+"INSERT DATA {"
    				    	 	    	+NL+"    <http://www.semanticweb.org/ontologies/2010/9/MetaPatternOntology.owl#Identification>   a   onto:Identification;"
    				    	 	    	+NL+"        onto:Identifier onto:hasIdentifier \"" + table_1.getModel().getValueAt(0,0) + "\" . "
    				    	 	    	+NL+"        onto:Name onto:hasName \"" + table_1.getModel().getValueAt(0,1) + "\" . "
    				    	 	    	+NL+"        onto:Author onto:hasAuthor \"" + table_1.getModel().getValueAt(0,2) + "\" . "
    				    	 	    	+NL+"}";
     
     
     
    				    	 	    GraphStore graphstore=GraphStoreFactory.create();
    				    	 	    graphstore.setDefaultGraph(model.getGraph());
    				    	 	    UpdateRequest updaterequest=UpdateFactory.create(requete);
    				    	 	    UpdateAction.execute(updaterequest, graphstore);
    				    	 	    OutputStream path = System.out ;
    				    	 	    model.write(path, "RDF/XML-ABBREV");
     
    				    	 	    /**OutputStream path;
                                                        try {
                                                            path = new FileOutputStream(new File("Ontofolder\\MetaProPOS.owl"));
                                                            model.write(path, "RDF/XML-ABBREV");
                                                        } catch (FileNotFoundException e) {
                                                            // TODO Auto-generated catch block
                                                            e.printStackTrace();
                                                        }**/
     
    				    	 	    Query query = QueryFactory.create(requete);
    				    	 	    QueryExecution qexec = QueryExecutionFactory.create(query, dataset);
    			    	 	    	try {
    			    	 	    		ResultSet results = qexec.execSelect();
    			    	 	    		   while (  results.hasNext()) {
    			    	 	    			   QuerySolution soln = results.nextSolution();
    			    	 	    			   Literal identifier = soln.getLiteral((String) table_1.getModel().getValueAt(0, 0));
    			    	 	    			   Literal name = soln.getLiteral((String) table_1.getModel().getValueAt(0, 1));
    			    	 	    			   Literal author = soln.getLiteral((String) table_1.getModel().getValueAt(0, 2));
    			    	 	    			   System.out.println((String) table_1.getModel().getValueAt(0, 0));
    			    	 	    			   System.out.println((String) table_1.getModel().getValueAt(0, 1));
    			    	 	    			   System.out.println((String) table_1.getModel().getValueAt(0, 2));
    			    	 	    			   //RDFNode x = soln.get("varName") ;       // Get a result variable by name.
    			    	 	    			   //Resource r = soln.getResource("VarR") ; // Get a result variable - must be a resource
    								           //Literal l = soln.getLiteral("VarL") ;   // Get a result variable - must be a literal
    			    	 	    			   }
    			    	 	    		   } finally {
    			    	 	    			   qexec.close();
    			    	 	    			   }
     
     
     
    			    	 	    		  dataset.begin(ReadWrite.READ);
    			    	 	    		   try {
     
    			    	 	    		   Iterator<Quad> iter = dataset.asDatasetGraph().find();
     
    			    	 	    		   while ( iter.hasNext() ) {
    			    	 	    			   Quad quad = iter.next();
    			    	 	    			   System.out.println(quad);
    			    	 	    			   }
    			    	 	    		   } finally {
    			    	 	    			   dataset.end();
    			    	 	    		   }

    Merci pour votre aide

  4. #4
    Nouveau membre du Club
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    54
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Décembre 2011
    Messages : 54
    Points : 38
    Points
    38
    Par défaut
    Comment je pourrais installer Fuseki ? J'ai suivi la documentation et je n'ai pas réussi à l'installer.

    Merci pour votre aide

Discussions similaires

  1. [Jena] [TDB] Comment utiliser TDB pour créer une ontologie persistente ?
    Par joploya dans le forum Frameworks
    Réponses: 11
    Dernier message: 24/06/2011, 14h45
  2. [Jena] Nouvelles versions de Elda, ARQ et TDB
    Par snake264 dans le forum Frameworks
    Réponses: 0
    Dernier message: 23/04/2011, 13h59
  3. Les composants TDB dans une application MDI
    Par soft_balade dans le forum Débuter
    Réponses: 3
    Dernier message: 14/06/2008, 21h39
  4. Samba et les fichiers *.tdb
    Par ludoO dans le forum Applications et environnements graphiques
    Réponses: 3
    Dernier message: 15/03/2008, 11h15
  5. Page HTML avec graphs et TDBs par resultats requetes
    Par apachjb dans le forum Débuter
    Réponses: 3
    Dernier message: 19/11/2007, 18h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo