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

Frameworks Discussion :

Exécution de requête [Jena]


Sujet :

Frameworks

  1. #1
    Futur Membre du Club
    Inscrit en
    Février 2011
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 7
    Points : 7
    Points
    7
    Par défaut Exécution de requête
    Bonjour,
    j'éssaye depuis queleques joursd'éxecuter des requete SPARQL sur une une ontologie
    que j'ai crée mais je trouve toujours le mème problème :le programme s'exécute mais
    les requetes ne s'executent pas
    Ce que je ne comprend pas c'est que programme accède à l'ontologie et j'arrive à afficher son contenu y compris les individus etc donc le problème n'est pas dans le fichier.il pourrait etre un problème de name spaces que je n'ia pas bien définit?
    Voici un code contenant une requette qui ne s'execute pas:
    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
     
    package mypkg;
     
     
    public class TestQuery {
     
     
     
    	public static void main(String[] args) {
     
     
    	  String monontologie=("C:\\Documents and Settings\\sabrina.SAHLI-8CD27CF73\\workspace\\requettSparql\\GestionHopital.owl");
    		OntModel model = ModelFactory.createOntologyModel(OntModelSpec.OWL_DL_MEM_RDFS_INF);
    		InputStream reader=FileManager.get().open(monontologie);
    		if (reader == null) {
    			throw new IllegalArgumentException("File: " + monontologie+ " not found");
    		}
    		model.read(reader , "","RDF/XML"); 
    		// the query: afficher les medicament d'un patient donnée
    		String queryString="PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>"+
    		"PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>"+ 
    		"PREFIX GestionHopital:<http://semanticweb.org/ontologies/2010/10/Ontology1291143729468.owl>"+  
    	     "SELECT ?CODE_MEDICAMENT WHERE{"+
    	     "?P rdf:type  GestionHopital:Patient."+
    	     "?P GestionHopital:prend ?M."+
    	     "?P GestionHopital:CodeP $Code.FILTER($Code < 100)" +
    	     "?M rdf:type GestionHopital:medication."+
    	     "?M GestionHopital:codeM ?CODE_MEDICAMENT."+
    	     "?P rdfs:subClassOf GestionHopital:Personne."+
    	     "?M rdfs:subClassOf GestionHopital:Soin."+
    	     "}" ;
    		Query query =QueryFactory.create(queryString) ;
    		Dataset dataset=DatasetFactory.create(model);
    		QueryExecution qexec = QueryExecutionFactory.create(query,dataset) ;
    		ResultSet resultset = qexec.execSelect() ;
    		ResultSetFormatter.out(System.out,resultset,query) ;
     
     
            //afficher les resultats
            for ( ;resultset.hasNext(); ){
     
                QuerySolution row1 =(QuerySolution) resultset.nextSolution()  ;
     
                 RDFNode code = row1.get("CODE_MEDICAMENT");
                 System.out.print(code.toString());
     
     
                 }
    	}
    S'il vous plait aidez moi je suis bloqué depuis plus d'une semaine à cause de ça.

  2. #2
    Futur Membre du Club
    Inscrit en
    Février 2011
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 7
    Points : 7
    Points
    7
    Par défaut
    salut,
    l'ontologie est en fichier .owl la premiere partie du fichier de l'oontologie contenant les name spaces est la suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <rdf:RDF
        xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
        xmlns:Ontology1291143729468="http://www.semanticweb.org/ontologies/2010/10/Ontology1291143729468.owl#"
        xmlns:owl="http://www.w3.org/2002/07/owl#"
        xmlns:owl2xml="http://www.w3.org/2006/12/owl2-xml#"
        xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
        xmlns:ont="http://www.co-ode.org/ontologies/ont.owl#"
        xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" >
    est ce que j'ai bien défini mes name space?
    il me semble que le code est correct mais je ne vois pas pourquoi je n'ai toujours pas de resultats le programme en rentre même pas à la boucle pour afficher les resultats
    S'il vous plait aidez moi je suis bloquée

  3. #3
    Futur Membre du Club
    Inscrit en
    Février 2011
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 7
    Points : 7
    Points
    7
    Par défaut
    j'ai su finalement ou est le problème je n'ai pas bien défini le name space de mon ontologie et à l'ecriture de requete j'aurai du utiliser le nom de l'ontologie et non pas le nom du fichier

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Exécuter une requête non-query
    Par Piet dans le forum MS SQL Server
    Réponses: 10
    Dernier message: 07/02/2007, 15h01
  2. [ADO.Net][C#/Mysql] Comment exécuter une requête paramétrée?
    Par wremacle dans le forum Accès aux données
    Réponses: 6
    Dernier message: 07/02/2006, 16h55
  3. [STRUTS/HIBERNATE] Problème d'exécution de requête
    Par mc_chicken dans le forum Hibernate
    Réponses: 5
    Dernier message: 21/10/2005, 09h27
  4. Comment exécuter une requête rapidement
    Par kardevlop dans le forum Bases de données
    Réponses: 2
    Dernier message: 18/10/2005, 13h45
  5. Réponses: 2
    Dernier message: 17/10/2005, 14h58

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