je travaille sur le calcul de similarité entre ontologies
par exemple j'ai une classe pour importer l'ontologie
import com.hp.hpl.jena.ontology.*;
import com.hp.hpl.jena.rdf.model.*;
import com.hp.hpl.jena.util.*;
import com.hp.hpl.jena.vocabulary.*;
import java.io.*;
import java.util.*;
public class ImportOnt
{
public OntModel ImportOnt(String uri, String url )
{
OntModel m = ModelFactory.createOntologyModel();
OntDocumentManager dm = m.getDocumentManager();
dm.addAltEntry(uri,url);
m.read(url);
return m;
}
}
et voici le main
import com.hp.hpl.jena.ontology.OntModel;
import com.hp.hpl.jena.rdf.model.*;
import com.hp.hpl.jena.util.*;
import com.hp.hpl.jena.vocabulary.*;
import java.io.*;
import java.util.*;
public static void main(String[] args)
{
String urlt="file:C:/Users/scoop/Desktop/Doc/scene/sceneTebourba/sceneT.owl";
String urit="[http://www.owl-ontologies.com/]";
String urlj="file:C:/Users/scoop/Desktop/Doc/scene/sceneJendouba/sceneJ.owl";
String urij="[http://www.owl-ontologies.com/]";
ImportOnt im=new ImportOnt();
Main m=new Main();
OntModel tebourba= im.ImportOnt(urit,urlt);
OntModel jendouba= im.ImportOnt(urij,urlj);
//m.SimG calcule la similarité entre ontologie
//elle n'est pas définie dans Jena
double a=m.SimG(assoc,jendouba);
System.out.println("le pourcentage de similarité est de : "+100*a+"%");
}