NIHVIVO-1980 change in input parameters of extractABox method.
This commit is contained in:
parent
17d41d281a
commit
828cbc3d2d
1 changed files with 26 additions and 29 deletions
|
@ -242,11 +242,11 @@ private final OntModelSpec DEFAULT_ONT_MODEL_SPEC = OntModelSpec.OWL_MEM;
|
||||||
|
|
||||||
public Model extractABox(Model inputModel){
|
public Model extractABox(Model inputModel){
|
||||||
Dataset dataset = DatasetFactory.create(inputModel);
|
Dataset dataset = DatasetFactory.create(inputModel);
|
||||||
return extractABox(dataset, null);
|
return extractABox(dataset, null, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
public Model extractABox( Dataset dataset, String graphURI ) {
|
public Model extractABox( Dataset unionDataset, Dataset baseOrInfDataset, String graphURI ) {
|
||||||
|
|
||||||
Model aboxModel = ModelFactory.createDefaultModel();
|
Model aboxModel = ModelFactory.createDefaultModel();
|
||||||
|
|
||||||
// iterate through all classes and DESCRIBE each of their instances
|
// iterate through all classes and DESCRIBE each of their instances
|
||||||
|
@ -257,31 +257,13 @@ private final OntModelSpec DEFAULT_ONT_MODEL_SPEC = OntModelSpec.OWL_MEM;
|
||||||
//OntModel ontModel = ( inputModel instanceof OntModel )
|
//OntModel ontModel = ( inputModel instanceof OntModel )
|
||||||
//? (OntModel)inputModel
|
//? (OntModel)inputModel
|
||||||
//: ModelFactory.createOntologyModel( DEFAULT_ONT_MODEL_SPEC, inputModel );
|
//: ModelFactory.createOntologyModel( DEFAULT_ONT_MODEL_SPEC, inputModel );
|
||||||
//OntModel ontModel = ModelFactory.createOntologyModel(OntModelSpec.OWL_MEM);
|
OntModel ontModel = extractTBox(unionDataset, null, graphURI);
|
||||||
/*Model model = ModelFactory.createDefaultModel();
|
|
||||||
String getStatements =
|
|
||||||
"CONSTRUCT " +
|
|
||||||
"{ ?p ?o ?a \n" +
|
|
||||||
"} WHERE {" +
|
|
||||||
"GRAPH ?g { \n" +
|
|
||||||
"{ ?p ?o ?a } \n" +
|
|
||||||
"} \n" +
|
|
||||||
"}";
|
|
||||||
try{
|
|
||||||
dataset.getLock().enterCriticalSection(Lock.READ);
|
|
||||||
model = QueryExecutionFactory.create(QueryFactory.create(getStatements), dataset).execConstruct();
|
|
||||||
}
|
|
||||||
finally{
|
|
||||||
dataset.getLock().leaveCriticalSection();
|
|
||||||
}
|
|
||||||
ontModel.add(model.listStatements());*/
|
|
||||||
OntModel ontModel = extractTBox(dataset, null, graphURI);
|
|
||||||
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
ontModel.enterCriticalSection(Lock.READ);
|
ontModel.enterCriticalSection(Lock.READ);
|
||||||
Iterator classIt = ontModel.listNamedClasses();
|
Iterator classIt = ontModel.listNamedClasses();
|
||||||
|
QueryExecution qe = null;
|
||||||
while ( classIt.hasNext() ) {
|
while ( classIt.hasNext() ) {
|
||||||
|
|
||||||
OntClass ontClass = (OntClass) classIt.next();
|
OntClass ontClass = (OntClass) classIt.next();
|
||||||
|
@ -292,12 +274,27 @@ private final OntModelSpec DEFAULT_ONT_MODEL_SPEC = OntModelSpec.OWL_MEM;
|
||||||
String queryStr = makeDescribeQueryStr( ontClass.getURI(), null, graphURI );
|
String queryStr = makeDescribeQueryStr( ontClass.getURI(), null, graphURI );
|
||||||
|
|
||||||
Query aboxSparqlQuery = QueryFactory.create(queryStr);
|
Query aboxSparqlQuery = QueryFactory.create(queryStr);
|
||||||
QueryExecution qe = QueryExecutionFactory.create(aboxSparqlQuery,dataset);
|
if(baseOrInfDataset != null){
|
||||||
try {
|
qe = QueryExecutionFactory.create(aboxSparqlQuery,baseOrInfDataset);
|
||||||
dataset.getLock().enterCriticalSection(Lock.READ);
|
}
|
||||||
qe.execDescribe(aboxModel); // puts the statements about each resource into aboxModel.
|
else{
|
||||||
} finally {
|
qe = QueryExecutionFactory.create(aboxSparqlQuery,unionDataset);
|
||||||
dataset.getLock().leaveCriticalSection();
|
}
|
||||||
|
if(baseOrInfDataset != null){
|
||||||
|
try {
|
||||||
|
baseOrInfDataset.getLock().enterCriticalSection(Lock.READ);
|
||||||
|
qe.execDescribe(aboxModel); // puts the statements about each resource into aboxModel.
|
||||||
|
} finally {
|
||||||
|
baseOrInfDataset.getLock().leaveCriticalSection();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
try {
|
||||||
|
unionDataset.getLock().enterCriticalSection(Lock.READ);
|
||||||
|
qe.execDescribe(aboxModel); // puts the statements about each resource into aboxModel.
|
||||||
|
} finally {
|
||||||
|
unionDataset.getLock().leaveCriticalSection();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue