@Override public String getName() { return predicate.getName(); }
private static String buildMessage(List<Indicator> indicators) { StringBuilder sb = new StringBuilder(); if (!indicators.isEmpty()) { sb.append("\n"); sb.append("The plugin cannot load the OBDA model. (REASON: Unknown predicate declarations)\n"); sb.append("Please make sure the following predicates match to the source ontology.\n\n"); for (Indicator indicator : indicators) { int lineNumber = indicator.getLineNumber(); int columnNumber = indicator.getColumnNumber(); Predicate predicate = (Predicate) indicator.getHint(); switch (indicator.getReason()) { case UNKNOWN_PREDICATE: if (predicate.isClass()) { sb.append(String.format("Line %d, Column %d: %s (unknown class)\n", lineNumber, columnNumber, predicate.getName())); } else if (predicate.isObjectProperty()) { sb.append(String.format("Line %d, Column %d: %s (unknown object property)\n", lineNumber, columnNumber, predicate.getName())); } else if (predicate.isDataProperty()) { sb.append(String.format("Line %d, Column %d: %s (unknown data property)\n", lineNumber, columnNumber, predicate.getName())); } break; // case break } } } return sb.toString(); } }
@Override public int getArity() { return functor.getArity(); }
public static Set<OWLDeclarationAxiom> extractDeclarationAxioms(OWLOntologyManager manager, Stream<? extends Function> targetAtoms) { OWLDataFactory dataFactory = manager.getOWLDataFactory(); Set<OWLDeclarationAxiom> declarationAxioms = new HashSet<>(); targetAtoms.forEach(f -> { IRI iri = IRI.create(f.getFunctionSymbol().getName()); final OWLEntity entity; if (f.getArity() == 1) { entity = dataFactory.getOWLClass(iri); } else { Predicate.COL_TYPE secondArgType = f.getFunctionSymbol().getType(1); if ((secondArgType != null) && secondArgType.equals(Predicate.COL_TYPE.OBJECT)) { entity = dataFactory.getOWLObjectProperty(iri); } else { entity = dataFactory.getOWLDataProperty(iri); } } declarationAxioms.add(dataFactory.getOWLDeclarationAxiom(entity)); }); return declarationAxioms; }
return Optional.of(TYPE_FACTORY.getTermType(secondArgument)); return Optional.of(TYPE_FACTORY.getTermType(f.getFunctionSymbol().getType(0)));
Predicate functionSymbol = ((ImmutableFunctionalTerm) term).getFunctionSymbol(); if (functionSymbol instanceof DatatypePredicate) return functionSymbol.getExpectedBaseType(0);
@Override public int getArity() { return functor.getArity(); }
if (functionSymbol.getType(0) == UNSUPPORTED) { throw new RuntimeException("Unsupported type in the query: " + function);
if (functionSymbol.getExpectedBaseType(0) .isA(typeFactory.getUnsupportedDatatype())) { throw new RuntimeException("Unsupported type in the query: "
@Override public String toString() { return predicate.getName().toString(); }
protected ImmutableFunctionalTermImpl(Predicate functor, ImmutableList<? extends ImmutableTerm> terms) { super(functor); // No problem since the list is immutable this.terms = terms; string = null; if (functor.getArity() != terms.size()) { throw new IllegalArgumentException("Arity violation: " + functor + " was expecting " + functor.getArity() + ", not " + terms.size()); } }
@Override public boolean isTriplePredicate() { return (arity == 3 && name.equals(QUEST_TRIPLE_PRED.getName())); }
Optional<RelationDefinition> td = Optional.ofNullable(metadata.getRelation(tableId)); IntStream.range(0, predicate.getArity()) .forEach(i -> {
if (functionSymbol.getType(0) == UNSUPPORTED) { throw new RuntimeException("Unsupported type in the query: " + function);
if (function.isDataTypeFunction()) { if (TYPE_FACTORY.isString(functionSymbol) && (functionSymbol.getArity() == 2)) {