/** * Converts a {@link IRI} into a {@link RyaIRI} representation of the * {@code iri}. * @param iri the {@link IRI} to convert. * @return the {@link RyaIRI} representation of the {@code iri}. */ public static RyaIRI convertIRI(final IRI iri) { if (iri == null) { return null; } if (iri instanceof RangeIRI) { final RangeIRI riri = (RangeIRI) iri; return new RyaIRIRange(convertIRI(riri.getStart()), convertIRI(riri.getEnd())); } return new RyaIRI(iri.stringValue()); }
@Override public void meet(final StatementPattern node) throws Exception { super.meet(node); final Var subjectVar = node.getSubjectVar(); final RangeValue subjRange = rangeValues.get(subjectVar); final Var predVar = node.getPredicateVar(); final RangeValue predRange = rangeValues.get(predVar); final Var objVar = node.getObjectVar(); final RangeValue objRange = rangeValues.get(objVar); if(subjRange != null) { subjectVar.setValue(new RangeIRI(subjRange));//Assumes no blank nodes can be ranges } if(predRange != null) { predVar.setValue(new RangeIRI(predRange)); } if(objRange != null) { objVar.setValue(objRange); } } }