@Override public Mapping rewrite(Mapping mapping) { if (!enabled) return mapping; ImmutableTable<RDFAtomPredicate, IRI, IQ> mappingUpdate = mapping.getRDFAtomPredicates().stream() .flatMap(p -> mapping.getRDFPropertyDefinition(p, OWL.SAME_AS) .map(sameAsDef -> completeSameAsDefinition(sameAsDef, p)) .map(sameAsDef -> Tables.immutableCell(p, OWL.SAME_AS, sameAsDef)) .map(Stream::of) .orElseGet(Stream::empty)) .collect(ImmutableCollectors.toTable()); return mapping.update(mappingUpdate, ImmutableTable.of()); }