@Override public TupleQuery prepare(ParsedTupleQuery tupleQuery) { TupleQuery query = new SailTupleQuery(tupleQuery, con); query.setIncludeInferred(includeInferred); return query; }
@Override public TupleQuery prepare(ParsedTupleQuery tupleQuery) { TupleQuery query = new SailConnectionTupleQuery(tupleQuery, con); query.setIncludeInferred(includeInferred); return query; }
@Override public TupleQuery prepare(ParsedTupleQuery tupleQuery) { TupleQuery query = new SailConnectionTupleQuery(tupleQuery, con); query.setIncludeInferred(includeInferred); return query; }
public List<KBHandle> getSubProperty(KnowledgeBase aKB, String aIdentifier, boolean aAll) throws QueryEvaluationException { List<KBHandle> resultList = read(aKB, (conn) -> { ValueFactory vf = conn.getValueFactory(); String QUERY = SPARQLQueryStore.getSubProperty(aKB); TupleQuery tupleQuery = conn.prepareTupleQuery(QueryLanguage.SPARQL, QUERY); tupleQuery.setBinding("oItem", vf.createIRI(aIdentifier)); tupleQuery.setBinding("pSUBPROPERTY", aKB.getSubPropertyIri()); tupleQuery.setIncludeInferred(true); return evaluateListQuery(aKB, tupleQuery, aAll, "s"); }); resultList.sort(Comparator.comparing(KBObject::getUiLabel)); return resultList; }
public List<KBHandle> getSubProperty(KnowledgeBase aKB, String aIdentifier, boolean aAll) throws QueryEvaluationException { List<KBHandle> resultList = read(aKB, (conn) -> { ValueFactory vf = conn.getValueFactory(); String QUERY = SPARQLQueryStore.getSubProperty(aKB); TupleQuery tupleQuery = conn.prepareTupleQuery(QueryLanguage.SPARQL, QUERY); tupleQuery.setBinding("oItem", vf.createIRI(aIdentifier)); tupleQuery.setBinding("pSUBPROPERTY", aKB.getSubPropertyIri()); tupleQuery.setIncludeInferred(true); return evaluateListQuery(aKB, tupleQuery, aAll, "s"); }); resultList.sort(Comparator.comparing(KBObject::getUiLabel)); return resultList; }
@Override public List<KBHandle> listPropertiesRangeValue(KnowledgeBase aKB, String aProperty, boolean aIncludeInferred, boolean aAll) throws QueryEvaluationException { List<KBHandle> resultList = read(aKB, (conn) -> { ValueFactory vf = conn.getValueFactory(); String QUERY = SPARQLQueryStore.queryForPropertySpecificRange(aKB); TupleQuery tupleQuery = conn.prepareTupleQuery(QueryLanguage.SPARQL, QUERY); tupleQuery.setBinding("aProperty", vf.createIRI(aProperty)); tupleQuery.setBinding("pLABEL", aKB.getPropertyLabelIri()); tupleQuery.setBinding("pSUBPROPERTY", aKB.getSubPropertyIri()); tupleQuery.setIncludeInferred(aIncludeInferred); return evaluateListQuery(aKB, tupleQuery, aAll, "s"); }); List<KBHandle> resultLabelList = readLabelsWithoutLanguage(aKB, aAll, resultList); resultLabelList.sort(Comparator.comparing(KBObject::getUiLabel)); return resultLabelList; }
@Override public List<KBHandle> listPropertiesRangeValue(KnowledgeBase aKB, String aProperty, boolean aIncludeInferred, boolean aAll) throws QueryEvaluationException { List<KBHandle> resultList = read(aKB, (conn) -> { ValueFactory vf = conn.getValueFactory(); String QUERY = SPARQLQueryStore.queryForPropertySpecificRange(aKB); TupleQuery tupleQuery = conn.prepareTupleQuery(QueryLanguage.SPARQL, QUERY); tupleQuery.setBinding("aProperty", vf.createIRI(aProperty)); tupleQuery.setBinding("pLABEL", aKB.getPropertyLabelIri()); tupleQuery.setBinding("pSUBPROPERTY", aKB.getSubPropertyIri()); tupleQuery.setIncludeInferred(aIncludeInferred); return evaluateListQuery(aKB, tupleQuery, aAll, "s"); }); List<KBHandle> resultLabelList = readLabelsWithoutLanguage(aKB, aAll, resultList); resultLabelList.sort(Comparator.comparing(KBObject::getUiLabel)); return resultLabelList; }
@Override public List<KBHandle> list(KnowledgeBase aKB, IRI aType, boolean aIncludeInferred, boolean aAll, int aLimit) throws QueryEvaluationException { Set<KBHandle> labels = getSubPropertyLabels(aKB); List<KBHandle> resultList = read(aKB, (conn) -> { String QUERY = SPARQLQueryStore.listInstances(aKB, labels); TupleQuery tupleQuery = conn.prepareTupleQuery(QueryLanguage.SPARQL, QUERY); tupleQuery.setBinding("pTYPE", aKB.getTypeIri()); tupleQuery.setBinding("oPROPERTY", aType); tupleQuery.setBinding("pLABEL", aKB.getLabelIri()); tupleQuery.setBinding("pDESCRIPTION", aKB.getDescriptionIri()); tupleQuery.setBinding("pSUBPROPERTY", aKB.getSubPropertyIri()); tupleQuery.setIncludeInferred(aIncludeInferred); return evaluateListQuery(aKB, tupleQuery, aAll, "s"); }); resultList.sort(Comparator.comparing(KBObject::getUiLabel)); return resultList; }
@Override public List<KBHandle> listProperties(KnowledgeBase aKB, IRI aType, boolean aIncludeInferred, boolean aAll) throws QueryEvaluationException { Set<KBHandle> labels = getSubPropertyLabels(aKB); List<KBHandle> resultList = read(aKB, (conn) -> { String QUERY = SPARQLQueryStore.queryForPropertyList(aKB, labels); TupleQuery tupleQuery = conn.prepareTupleQuery(QueryLanguage.SPARQL, QUERY); tupleQuery.setBinding("pTYPE", aKB.getTypeIri()); tupleQuery.setBinding("oPROPERTY", aType); tupleQuery.setBinding("pLABEL", aKB.getPropertyLabelIri()); tupleQuery.setBinding("pDESCRIPTION", aKB.getPropertyDescriptionIri()); tupleQuery.setBinding("pSUBPROPERTY", aKB.getSubPropertyIri()); tupleQuery.setIncludeInferred(aIncludeInferred); return evaluateListQuery(aKB, tupleQuery, aAll, "s"); }); resultList.sort(Comparator.comparing(KBObject::getUiLabel)); return resultList; }
@Override public List<KBHandle> list(KnowledgeBase aKB, IRI aType, boolean aIncludeInferred, boolean aAll, int aLimit) throws QueryEvaluationException { Set<KBHandle> labels = getSubPropertyLabels(aKB); List<KBHandle> resultList = read(aKB, (conn) -> { String QUERY = SPARQLQueryStore.listInstances(aKB, labels); TupleQuery tupleQuery = conn.prepareTupleQuery(QueryLanguage.SPARQL, QUERY); tupleQuery.setBinding("pTYPE", aKB.getTypeIri()); tupleQuery.setBinding("oPROPERTY", aType); tupleQuery.setBinding("pLABEL", aKB.getLabelIri()); tupleQuery.setBinding("pDESCRIPTION", aKB.getDescriptionIri()); tupleQuery.setBinding("pSUBPROPERTY", aKB.getSubPropertyIri()); tupleQuery.setIncludeInferred(aIncludeInferred); return evaluateListQuery(aKB, tupleQuery, aAll, "s"); }); resultList.sort(Comparator.comparing(KBObject::getUiLabel)); return resultList; }
@Override public List<KBHandle> listProperties(KnowledgeBase aKB, boolean aIncludeInferred, boolean aAll) throws QueryEvaluationException { Set<KBHandle> labels = getSubPropertyLabels(aKB); List<KBHandle> resultList = read(aKB, (conn) -> { String QUERY = SPARQLQueryStore.queryForPropertyList(aKB, labels); TupleQuery tupleQuery = conn.prepareTupleQuery(QueryLanguage.SPARQL, QUERY); tupleQuery.setBinding("pTYPE", aKB.getTypeIri()); tupleQuery.setBinding("oPROPERTY", aKB.getPropertyTypeIri()); tupleQuery.setBinding("pLABEL", aKB.getPropertyLabelIri()); tupleQuery.setBinding("pDESCRIPTION", aKB.getDescriptionIri()); tupleQuery.setBinding("pSUBPROPERTY", aKB.getSubPropertyIri()); tupleQuery.setIncludeInferred(aIncludeInferred); return evaluateListQuery(aKB, tupleQuery, aAll, "s"); }); resultList.sort(Comparator.comparing(KBObject::getUiLabel)); return resultList; }
@Override public List<KBHandle> listDomainProperties(KnowledgeBase aKB, String aDomain, boolean aIncludeInferred, boolean aAll) throws QueryEvaluationException { Set<KBHandle> labels = getSubPropertyLabels(aKB); List<KBHandle> resultList = read(aKB, (conn) -> { ValueFactory vf = conn.getValueFactory(); String QUERY = SPARQLQueryStore.queryForPropertyListWithDomain(aKB, labels); TupleQuery tupleQuery = conn.prepareTupleQuery(QueryLanguage.SPARQL, QUERY); tupleQuery.setBinding("aDomain", vf.createIRI(aDomain)); tupleQuery.setBinding("pLABEL", aKB.getLabelIri()); tupleQuery.setBinding("pDESCRIPTION", aKB.getPropertyDescriptionIri()); tupleQuery.setBinding("pSUBPROPERTY", aKB.getSubPropertyIri()); tupleQuery.setIncludeInferred(aIncludeInferred); return evaluateListQuery(aKB, tupleQuery, aAll, "s"); }); // Sorting is not done as part of SPARQL queries as it will be more expensive on // SPARQL with sorting the whole data and then setting a limit for the number of // result data set and hence will also skip number of results as part of sorted // data from SPARQL resultList.sort(Comparator.comparing(KBObject::getUiLabel)); return resultList; }
@Override public List<KBHandle> listProperties(KnowledgeBase aKB, IRI aType, boolean aIncludeInferred, boolean aAll) throws QueryEvaluationException { Set<KBHandle> labels = getSubPropertyLabels(aKB); List<KBHandle> resultList = read(aKB, (conn) -> { String QUERY = SPARQLQueryStore.queryForPropertyList(aKB, labels); TupleQuery tupleQuery = conn.prepareTupleQuery(QueryLanguage.SPARQL, QUERY); tupleQuery.setBinding("pTYPE", aKB.getTypeIri()); tupleQuery.setBinding("oPROPERTY", aType); tupleQuery.setBinding("pLABEL", aKB.getPropertyLabelIri()); tupleQuery.setBinding("pDESCRIPTION", aKB.getPropertyDescriptionIri()); tupleQuery.setBinding("pSUBPROPERTY", aKB.getSubPropertyIri()); tupleQuery.setIncludeInferred(aIncludeInferred); return evaluateListQuery(aKB, tupleQuery, aAll, "s"); }); resultList.sort(Comparator.comparing(KBObject::getUiLabel)); return resultList; }
@Override public List<KBHandle> getConceptForInstance(KnowledgeBase aKB, String aIdentifier, boolean aAll) throws QueryEvaluationException { List<KBHandle> resultList = read(aKB, (conn) -> { String QUERY = SPARQLQueryStore.queryForConceptForInstance(aKB); ValueFactory vf = SimpleValueFactory.getInstance(); TupleQuery tupleQuery = conn.prepareTupleQuery(QueryLanguage.SPARQL, QUERY); tupleQuery.setBinding("pTYPE", aKB.getTypeIri()); tupleQuery.setBinding("pInstance", vf.createIRI(aIdentifier)); tupleQuery.setBinding("pLABEL", aKB.getLabelIri()); tupleQuery.setBinding("pDESCRIPTION", aKB.getDescriptionIri()); tupleQuery.setBinding("pSUBPROPERTY", aKB.getSubPropertyIri()); tupleQuery.setIncludeInferred(true); return evaluateListQuery(aKB, tupleQuery, aAll, "s"); }); resultList.sort(Comparator.comparing(KBObject::getUiLabel)); return resultList; }
@Override public List<KBHandle> getConceptForInstance(KnowledgeBase aKB, String aIdentifier, boolean aAll) throws QueryEvaluationException { List<KBHandle> resultList = read(aKB, (conn) -> { String QUERY = SPARQLQueryStore.queryForConceptForInstance(aKB); ValueFactory vf = SimpleValueFactory.getInstance(); TupleQuery tupleQuery = conn.prepareTupleQuery(QueryLanguage.SPARQL, QUERY); tupleQuery.setBinding("pTYPE", aKB.getTypeIri()); tupleQuery.setBinding("pInstance", vf.createIRI(aIdentifier)); tupleQuery.setBinding("pLABEL", aKB.getLabelIri()); tupleQuery.setBinding("pDESCRIPTION", aKB.getDescriptionIri()); tupleQuery.setBinding("pSUBPROPERTY", aKB.getSubPropertyIri()); tupleQuery.setIncludeInferred(true); return evaluateListQuery(aKB, tupleQuery, aAll, "s"); }); resultList.sort(Comparator.comparing(KBObject::getUiLabel)); return resultList; }
@Override public List<KBHandle> listProperties(KnowledgeBase aKB, boolean aIncludeInferred, boolean aAll) throws QueryEvaluationException { Set<KBHandle> labels = getSubPropertyLabels(aKB); List<KBHandle> resultList = read(aKB, (conn) -> { String QUERY = SPARQLQueryStore.queryForPropertyList(aKB, labels); TupleQuery tupleQuery = conn.prepareTupleQuery(QueryLanguage.SPARQL, QUERY); tupleQuery.setBinding("pTYPE", aKB.getTypeIri()); tupleQuery.setBinding("oPROPERTY", aKB.getPropertyTypeIri()); tupleQuery.setBinding("pLABEL", aKB.getPropertyLabelIri()); tupleQuery.setBinding("pDESCRIPTION", aKB.getDescriptionIri()); tupleQuery.setBinding("pSUBPROPERTY", aKB.getSubPropertyIri()); tupleQuery.setIncludeInferred(aIncludeInferred); return evaluateListQuery(aKB, tupleQuery, aAll, "s"); }); resultList.sort(Comparator.comparing(KBObject::getUiLabel)); return resultList; }
@Override public List<KBHandle> listAllConcepts(KnowledgeBase aKB, boolean aAll) throws QueryEvaluationException { Set<KBHandle> labels = getSubPropertyLabels(aKB); List<KBHandle> resultList; resultList = read(aKB, (conn) -> { String QUERY = SPARQLQueryStore.queryForAllConceptList(aKB, labels); TupleQuery tupleQuery = conn.prepareTupleQuery(QueryLanguage.SPARQL, QUERY); tupleQuery.setBinding("pTYPE", aKB.getTypeIri()); tupleQuery.setBinding("oCLASS", aKB.getClassIri()); tupleQuery.setBinding("pSUBCLASS", aKB.getSubclassIri()); tupleQuery.setBinding("pLABEL", aKB.getLabelIri()); tupleQuery.setBinding("pDESCRIPTION", aKB.getDescriptionIri()); tupleQuery.setBinding("pSUBPROPERTY", aKB.getSubPropertyIri()); tupleQuery.setIncludeInferred(false); return evaluateListQuery(aKB, tupleQuery, aAll, "s"); }); resultList.sort(Comparator.comparing(KBObject::getUiLabel)); return resultList; }
@Override public List<KBHandle> listAllConcepts(KnowledgeBase aKB, boolean aAll) throws QueryEvaluationException { Set<KBHandle> labels = getSubPropertyLabels(aKB); List<KBHandle> resultList; resultList = read(aKB, (conn) -> { String QUERY = SPARQLQueryStore.queryForAllConceptList(aKB, labels); TupleQuery tupleQuery = conn.prepareTupleQuery(QueryLanguage.SPARQL, QUERY); tupleQuery.setBinding("pTYPE", aKB.getTypeIri()); tupleQuery.setBinding("oCLASS", aKB.getClassIri()); tupleQuery.setBinding("pSUBCLASS", aKB.getSubclassIri()); tupleQuery.setBinding("pLABEL", aKB.getLabelIri()); tupleQuery.setBinding("pDESCRIPTION", aKB.getDescriptionIri()); tupleQuery.setBinding("pSUBPROPERTY", aKB.getSubPropertyIri()); tupleQuery.setIncludeInferred(false); return evaluateListQuery(aKB, tupleQuery, aAll, "s"); }); resultList.sort(Comparator.comparing(KBObject::getUiLabel)); return resultList; }
private Optional<KBHandle> readLabelsWithoutLanguage(KnowledgeBase aKB, boolean aAll, String aIdentifier, boolean getLabel, boolean getDescription) throws QueryEvaluationException { Optional<KBHandle> handle = read(aKB, (conn) -> { String QUERY = SPARQLQueryStore.readLabelWithoutLanguage(aKB, 1, getLabel, getDescription); ValueFactory vf = SimpleValueFactory.getInstance(); TupleQuery tupleQueryLabel = conn.prepareTupleQuery(QueryLanguage.SPARQL, QUERY); tupleQueryLabel.setBinding("oItem", vf.createIRI(aIdentifier)); tupleQueryLabel.setBinding("pTYPE", aKB.getTypeIri()); tupleQueryLabel.setBinding("oCLASS", aKB.getClassIri()); tupleQueryLabel.setBinding("pSUBCLASS", aKB.getSubclassIri()); tupleQueryLabel.setBinding("pLABEL", aKB.getLabelIri()); tupleQueryLabel.setBinding("pDESCRIPTION", aKB.getDescriptionIri()); tupleQueryLabel.setIncludeInferred(false); return evaluateGenericLabelQuery(aKB, tupleQueryLabel, aAll, "oItem"); }); return handle; }
private Optional<KBHandle> readLabelsWithoutLanguage(KnowledgeBase aKB, boolean aAll, String aIdentifier, boolean getLabel, boolean getDescription) throws QueryEvaluationException { Optional<KBHandle> handle = read(aKB, (conn) -> { String QUERY = SPARQLQueryStore.readLabelWithoutLanguage(aKB, 1, getLabel, getDescription); ValueFactory vf = SimpleValueFactory.getInstance(); TupleQuery tupleQueryLabel = conn.prepareTupleQuery(QueryLanguage.SPARQL, QUERY); tupleQueryLabel.setBinding("oItem", vf.createIRI(aIdentifier)); tupleQueryLabel.setBinding("pTYPE", aKB.getTypeIri()); tupleQueryLabel.setBinding("oCLASS", aKB.getClassIri()); tupleQueryLabel.setBinding("pSUBCLASS", aKB.getSubclassIri()); tupleQueryLabel.setBinding("pLABEL", aKB.getLabelIri()); tupleQueryLabel.setBinding("pDESCRIPTION", aKB.getDescriptionIri()); tupleQueryLabel.setIncludeInferred(false); return evaluateGenericLabelQuery(aKB, tupleQueryLabel, aAll, "oItem"); }); return handle; }