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
|
package instanciate;
import java.io.*;
import com.hp.hpl.jena.ontology.*;
import com.hp.hpl.jena.rdf.model.*;
public class AddInstanciate {
private static final String URI = null;
private static String individuSolution = URI+"Solution" ;
private static String individuProcessPattern = URI+"Process_Pattern" ;
/**
* @param args
*/
public static void main(String[] args) {
/*
Initialisation : on charge l'ontologie en mémoire,
on crée un nouveau modèle vide et
on sélectionne les termes de l'ontologie dont on a besoin
*/
// create an empty model
OntModel modele = ModelFactory.createOntologyModel(OntModelSpec.OWL_DL_MEM_RDFS_INF);
try
{
//ici, il faut mettre le nom du fichier ontologie
InputStream reader = new FileInputStream("MetaProPOS.owl");
// si le fichier n'est pas enregistré en RDF/XML, changer le paramètre
modele.read(reader,"","RDF/XML");
modele.write(System.out);
OntClass classSolution = modele.getOntClass("http://www.semanticweb.org/ontologies/2010/9/MetaPatternOntology.owl#Solution" + "Solution");
OntClass classProcessPattern = modele.getOntClass("http://www.semanticweb.org/ontologies/2010/9/MetaPatternOntology.owl#Process_pattern" + "Process_Pattern");
//Creation individu
Individual individualSolution = classSolution.createIndividual(individuSolution);
Individual individualProcessPattern = classProcessPattern.createIndividual(individuProcessPattern);
//Recuperation objectProperty du fichier Owl
ObjectProperty adresseProperty = modele.getObjectProperty("http://www.semanticweb.org/ontologies/2010/9/MetaPatternOntology.owl#hasSolution" + "hasSolution");
individualProcessPattern.setPropertyValue(adresseProperty,individualSolution);
Statement statement_Solution_Pattern = modele.createStatement(individualProcessPattern, adresseProperty, individualSolution);
modele.add(statement_Solution_Pattern);
modele.write(new FileOutputStream("MetaProPOS.owl"));
modele.close();
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
}
} |