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 :

Servlet et ontologie


Sujet :

Web sémantique

  1. #1
    Futur Membre du Club
    Inscrit en
    Mai 2006
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 8
    Points : 7
    Points
    7
    Par défaut Servlet et ontologie
    Bonjour,
    Je dois créer un site web permettant de comparer une chaine de caractère saisie avec les instances enregistrées dans mon ontologie (créée avec Protégé). J'ai créé une page pour saisir les infos, je les récupère dans une servlet. Mais je n'arrive pas à comparer cette chaine de caractère à mon ontologie.

    Est ce que quelqu'un connait un peu ce sujet?

    Merci pour vos réponses

  2. #2
    Membre éclairé Avatar de BizuR
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    688
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 688
    Points : 757
    Points
    757
    Par défaut
    Et que veux tu faire avec cette comparaison ?
    * Ramener les concepts proches lexicalement ?
    >> Il faudrait aller voir du coté de certains algorithmes de distance des mots tels que Levenstein ou bien le soundex... il me semble qu'il existe une API Java les fournissant (symmetrics ou un truc dans le genre )

    * Trouver la fin du mot en cours de saisie ?
    >> Euh faut voir comment est organisée ton ontologie ...
    See you, space cowboy... and if you're satisfied, click on

  3. #3
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Points : 5 059
    Points
    5 059
    Par défaut
    Citation Envoyé par AlexandraS
    Bonjour,
    Je dois créer un site web permettant de comparer une chaine de caractère saisie avec les instances enregistrées dans mon ontologie (créée avec Protégé). J'ai créé une page pour saisir les infos, je les récupère dans une servlet. Mais je n'arrive pas à comparer cette chaine de caractère à mon ontologie.

    Est ce que quelqu'un connait un peu ce sujet?

    Merci pour vos réponses
    Quel sujet ? comparaison de chaines??

    de quoi tu dispose? mise à part la chaine envoyé par le form ...
    Si c'est un problème de chaines de caractères, il vaut mieux le placer dans le forum Java ..

  4. #4
    Futur Membre du Club
    Inscrit en
    Mai 2006
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 8
    Points : 7
    Points
    7
    Par défaut
    rien de si compliqué, je ne suis pas aussi doue
    c'est une comparaison de chaine, tt simplement en utilisant une boucle pour faire défilé les classes de l'ontologie, si une classe = theme saisie, alors j'affiche les instances de cette classe.
    J'ai le code pour afficher les instances, mais si je l'insere dans ma servlets, ca bugs.
    c un pb de servlet, le fait d'ajouter la partie en rouge ca plante:
    public void doGet(HttpServletRequest request, HttpServletResponse response, OWLModel m)
    throws IOException, ServletException

    Comment faire pour appeler mon model OWL dans la servlet?

    une idée?

  5. #5
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Points : 5 059
    Points
    5 059
    Par défaut
    Citation Envoyé par AlexandraS
    rien de si compliqué, je ne suis pas aussi doue
    c'est une comparaison de chaine, tt simplement en utilisant une boucle pour faire défilé les classes de l'ontologie, si une classe = theme saisie, alors j'affiche les instances de cette classe.
    J'ai le code pour afficher les instances, mais si je l'insere dans ma servlets, ca bugs.
    c un pb de servlet, le fait d'ajouter la partie en rouge ca plante:
    public void doGet(HttpServletRequest request, HttpServletResponse response, OWLModel m)
    throws IOException, ServletException

    Comment faire pour appeler mon model OWL dans la servlet?

    une idée?
    c'est quoi OWLModel: ça ressemble au paramètres C++ des MFC ça me rappelles des vieux souvenirs!!

    j'ai regardé la spec des servlets je n'ai pas trouvé cette méthode..?

    peux tu nous expliquer plus ce que tu souhaites faire??



  6. #6
    Membre éclairé Avatar de BizuR
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    688
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 688
    Points : 757
    Points
    757
    Par défaut
    Ah ok, donc en effet, tu ne peux pas ajouter de parametre dans la fonction doGet ... ca ne marche pas ainsi

    La solution sera donc de passer en parametre la chaine (donc en get ici), de la récuperer avec request.getParameter("chaine") puis, dans cette servlet, faire appel a ton modèle pour le récuperer (tu dois bien avoir un moyen de récuperer ce modèle ). Après coup seulement, tu pourras gérer l'affichage avec ta servlet.
    See you, space cowboy... and if you're satisfied, click on

  7. #7
    Futur Membre du Club
    Inscrit en
    Mai 2006
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 8
    Points : 7
    Points
    7
    Par défaut
    J'écris mon code java sous eclipse 3.1.2, j'ai intégré l'API OWL de protege qui permet de travailler avec les ontologies crées sous l'editeur Protege. J'ai grace a cette API un ensemble de classe. Je peux creer un model Jena avec ce code, :
    JenaOWLModel owlModel = ProtegeOWL.createJenaOWLModel();
    owlModel.getNamespaceManager().setDefaultNamespace("http://localhost:8080/oeb/SW/WS.owl");
    Ensuite je peux travailler sur ce model "owlModel" créé pour en extraire des informations, comme les classes et les instances.
    Moi je veux faire une sorte de moteur de recherche avec l'affichage des infos de l'ontologie correspondantes aux recherches.

    Je ne sais pas comment lire mon model créé dans la servlet pour utilser l'instruction java permettant de comparer les chaines de caractères.

    Je pense qu'il faut que je travaille avec Jena dans une "classe normale" et je dois faire appel a cette classe dans ma servlet pour en utiliser ses éléments. Pouvez vous me dire quel est le code a ecrire dans la servlet pour appeler la classe toto.java, s'il vous plait.
    merci de repondre à mes questions pas d'un niveau bien mediocre

  8. #8
    Membre éclairé Avatar de BizuR
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    688
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 688
    Points : 757
    Points
    757
    Par défaut
    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
    package mon.package.servlet;
    //import du package ou se situe ta classe métier
    import mon.package.metier.Toto;
    
    public class MaServlet extends HttpServlet ..... {
    public doGet(HTTPRequest request, HTTPResponse response){
    [...]
    //plusieurs méthodes pour accéder aux méthodes
    
    //methode 1
       Toto objetToto = new Toto(); // méthode classique en instanciant l'objet
       objetToto.findConcept(chaine);
    
    //methode 2
       Toto.findConcept(chaine); // methode static définie dans la classe
    [...]
    }
    Voila, j'espere que cela représente ce que tu voulais en réponse ... d'un point de vue implémentation de la classe Toto pour ton cas, voici les deux types d'implémentation possibles

    //methode "classique" avec constructeur
    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
    package mon.package.metier;
     
    public class Toto {
    private OWLModel owlModel;
     
    //constructeur si ton fichier modèle est toujours le même
    public Toto(){
     JenaOWLModel owlModel = ProtegeOWL.createJenaOWLModel();
     owlModel.getNamespaceManager().setDefaultNamespace("http://localhost:8080/oeb/SW/WS.owl");
    }
    //constructeur pour prendre un fichier modele specifique
    public Toto(string urlModel){
        owlModel = ProtegeOWL.createJenaOWLModel();
       owlModel.getNamespaceManager().setDefaultNamespace(urlModel);
    }
    //methode retrouvant le concept si il existe
    public <Objet a definir> findConcept(String chaine){
    [...]//algo de recherche du concept dans ton modèle
    }
    }
    //methode avec methode statique
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    package mon.package.metier;
     
    public abstract class Toto{
    private static OWLModel owlModel;
     
    static {
        owlModel = ProtegeOWL.createJenaOWLModel();
       owlModel.getNamespaceManager().setDefaultNamespace(urlModel);
    }
     
    public static <Objet à definir> findConcept(String chaine){
    [...]//algo de recherche
    }
    }
    Voila, la première métode étant je pense, à privilégier car plus proche d'un concept Objet ...mais je suppose que tu le sais déjà

    En esperant que la réponse satisfasse tes attentes ... car j'ai pas très bien compris ce que tu voulais
    See you, space cowboy... and if you're satisfied, click on

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    158
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 158
    Points : 80
    Points
    80
    Par défaut problème de jar manquantes sous eclipse
    Bonjour,

    J'essaie les codes suivant pour interagir avec mon fichier .owl crée par protégé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    owlModel = ProtegeOWL.createJenaOWLModel();
       owlModel.getNamespaceManager().setDefaultNamespace(urlModel);
    J'ai l'erreur suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Multiple markers at this line
    	- ProtegeOWL cannot be resolved
    	- JenaOWLModel cannot be resolved
    Je sais que ce ci m'est parvenu parcequ'il y a des jars manquantes dans mon java build path. Pourtant j'ai y ajouté tous les .jars de jENA.
    Je voudrais savoir quelles sont les jars manquantes et les import que je dois les ajouter pour remédier ce problème.

    Merci.

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

Discussions similaires

  1. Alimentation d'une ontologie via une servlet
    Par sawsen27 dans le forum Frameworks
    Réponses: 0
    Dernier message: 14/03/2013, 00h52
  2. [Servlets - JSP] Problème de session
    Par the java lover dans le forum Servlets/JSP
    Réponses: 8
    Dernier message: 28/11/2011, 10h54
  3. [JSP/Servlet] Outils pour developper?
    Par BenoitM dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 04/05/2004, 12h03
  4. [servlet] initialisation d'objets
    Par tiPouick dans le forum Servlets/JSP
    Réponses: 11
    Dernier message: 05/08/2003, 13h12
  5. Servlet dans Eclipse ?
    Par unflag dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 10/04/2003, 19h46

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