/** * Transform a collection of ontology ids to a collection of IRIs of those ontology ids. * Anonymous ontology ids are skipped. * * @param ids ontology ids to transform * @return collection of IRIs for the ontology ids. */ public static Stream<IRI> ontologyIRIs(Stream<OWLOntologyID> ids) { return ids.filter(i -> i.getOntologyIRI().isPresent()).map(i -> i.getOntologyIRI().get()); } }
/** * @param ontology ontology */ public UseOfReservedVocabularyForVersionIRI(OWLOntology ontology) { super(ontology, null, ontology.getOntologyID().getVersionIRI().get()); }
@Override void attribute(String localName, String value) { OWLOntology o = handler.getOntology(); if ("ontologyIRI".equals(localName)) { o.applyChange(new SetOntologyID(o, new OWLOntologyID(optional(IRI.create(value)), o.getOntologyID().getVersionIRI()))); } if ("versionIRI".equals(localName)) { o.applyChange(new SetOntologyID(o, new OWLOntologyID(o.getOntologyID().getOntologyIRI(), optional(IRI.create(value))))); } }
public KRSS2Parser setOntology(OWLOntology ontology) { this.ontology = ontology; this.df = ontology.getOWLOntologyManager().getOWLDataFactory(); this.string2IRI = new HashMap<String, IRI>(); OWLOntologyID id = ontology.getOntologyID(); if(!id.isAnonymous()) { this.base = id.getOntologyIRI().toString() + "#"; } else { this.base = id.toString() + "#"; } this.nameResolution = NameResolverStrategy.CHECK; return this; }
/** * @param ont ontology to use * @return short form of the ontology IRI */ public String getShortForm(OWLOntology ont) { OWLOntologyID ontologyID = ont.getOntologyID(); if (ontologyID.getOntologyIRI().isPresent()) { return getShortForm(verifyNotNull(ontologyID.getOntologyIRI().get())); } else { return ontologyID.toString(); } }
public static String getOntologyLabelText(OWLOntology ont, OWLModelManager mngr) { if (ont.getOntologyID().isAnonymous()) { return ont.getOntologyID().toString(); } final Optional<IRI> iri = ont.getOntologyID().getDefaultDocumentIRI(); return getOntologyLabelText(iri, mngr); }
@Override @Nullable public OWLOntology getOntology(IRI iri) { OWLOntologyID ontologyID = new OWLOntologyID(optional(iri), emptyOptional()); readLock.lock(); try { OWLOntology result = ontologiesByID.get(ontologyID); if (result != null) { return result; } java.util.Optional<Entry<OWLOntologyID, OWLOntology>> findAny = ontologiesByID.entrySet().stream().filter(o -> o.getKey().match(iri)).findAny(); return findAny.isPresent() ? findAny.get().getValue() : null; } finally { readLock.unlock(); } }
/** * Changes the URI of the specified ontology to the new URI. * * @param ontology The ontology whose URI is to be changed. * @param newIRI the new IRI * @return A list of changes, which when applied will change the URI of the specified ontology, * and also update the imports declarations in any ontologies which import the specified * ontology. */ public List<OWLOntologyChange> getChanges(OWLOntology ontology, IRI newIRI) { List<OWLOntologyChange> changes = new ArrayList<>(); changes.add(new SetOntologyID(ontology, new OWLOntologyID(optional(newIRI), ontology.getOntologyID().getVersionIRI()))); OWLImportsDeclaration owlImport = owlOntologyManager.getOWLDataFactory().getOWLImportsDeclaration(newIRI); IRI ontIRI = ontology.getOntologyID().getOntologyIRI().orElse(null); owlOntologyManager.ontologies().forEach(ont -> ont.importsDeclarations() .filter(decl -> decl.getIRI().equals(ontIRI)).forEach(decl -> { changes.add(new RemoveImport(ont, decl)); changes.add(new AddImport(ont, owlImport)); })); return changes; } }
private void addVersionIRIToOntologyHeader(OWLOntology ontology) { OWLOntologyID ontID = ontology.getOntologyID(); if (ontID.getVersionIRI().isPresent()) { addTriple(ontology, OWL_VERSION_IRI.getIRI(), ontID.getVersionIRI().get()); } }
protected void reservedForOntologyIRI(OWLOntologyID id) { if (id.isAnonymous()) { return; } Optional<IRI> oIRI = id.getOntologyIRI(); if (oIRI.isPresent() && oIRI.get().isReservedVocabulary()) { violations.add(new UseOfReservedVocabularyForOntologyIRI(getCurrentOntology())); } }
protected void reservedForVersionIRI(OWLOntologyID id) { if (id.isAnonymous()) { return; } Optional<IRI> vIRI = id.getVersionIRI(); if (vIRI.isPresent() && vIRI.get().isReservedVocabulary()) { violations.add(new UseOfReservedVocabularyForVersionIRI(getCurrentOntology())); } }
/** * @return the root of the default object insert in the ontology without namespace. * @since 2.5.1 */ default public IRI getRootIri() { return IRI.create(getOntology().getOntologyID().getOntologyIRI().get().getNamespace()); }
/** * Prepare a zip name for an ontology id; this method can be used as a Function for * setEntryPath. * * @param id ontology id * @return zip entry name for the ontology */ public String entryPath(OWLOntologyID id) { String string = id.getOntologyIRI().get().toString(); if (string.endsWith("/") || string.endsWith("#")) { string = XMLUtils.getNCNameSuffix(string.subSequence(0, string.length() - 1)); } return verifyNotNull(string); } }
protected IRI computeDocumentIRI(OWLOntologyID ontologyID) { IRI documentIRI = getDocumentIRIFromMappers(ontologyID); if (documentIRI == null) { if (!ontologyID.isAnonymous()) { documentIRI = ontologyID.getDefaultDocumentIRI().orElse(null); } else { documentIRI = IRI.generateDocumentIRI(); } } return documentIRI; }
/** * @param ontology ontology */ public UseOfReservedVocabularyForOntologyIRI(OWLOntology ontology) { super(ontology, null, ontology.getOntologyID().getOntologyIRI().get()); }
/** * @param iri the iri to check * @return true if the input iri matches the default document iri */ public boolean matchDocument(IRI iri) { return iri.equals(getDefaultDocumentIRI().orElse(null)); }
private void initializeImportedOntology(OWLOntology i) { //get name, get URI, add to the config Ontology ont = new Ontology(); ont.setNamespaceURI(i.getOntologyID().getOntologyIRI().get().toString()); ont.setName(i.getOntologyID().getOntologyIRI().get().getShortForm().replace("<", "<").replace(">", ">")); //added replacements so they will be shown in html mainOntologyMetadata.getImportedOntologies().add(ont); }
/** * @param ontology ontology * @param writer writer * @param format format */ public TurtleRenderer(OWLOntology ontology, Writer writer, OWLDocumentFormat format) { super(ontology, format, ontology.getOWLOntologyManager().getOntologyWriterConfiguration()); this.format = checkNotNull(format, "format cannot be null"); this.writer = new PrintWriter(writer); pm = new DefaultPrefixManager(); if (!ontology.isAnonymous()) { String ontologyIRIString = ontology.getOntologyID().getOntologyIRI().get().toString(); String defaultPrefix = ontologyIRIString; if (!ontologyIRIString.endsWith("/") && !ontologyIRIString.endsWith("#")) { defaultPrefix = ontologyIRIString + '#'; } pm.setDefaultPrefix(defaultPrefix); } if (format instanceof PrefixDocumentFormat) { PrefixDocumentFormat prefixFormat = (PrefixDocumentFormat) format; pm.copyPrefixesFrom(prefixFormat); pm.setPrefixComparator(prefixFormat.getPrefixComparator()); } base = ""; }
@Override public OWLOntology createOntology(IRI ontologyIRI, Stream<OWLOntology> ontologies, boolean copyLogicalAxiomsOnly) throws OWLOntologyCreationException { writeLock.lock(); try { if (contains(ontologyIRI)) { throw new OWLOntologyAlreadyExistsException( new OWLOntologyID(optional(ontologyIRI), emptyOptional())); } OWLOntology ont = createOntology(ontologyIRI); addAxioms(ont, ontologies.flatMap(o -> copyLogicalAxiomsOnly ? o.logicalAxioms() : o.axioms())); return ont; } finally { writeLock.unlock(); } }
@Override public boolean contains(OWLOntologyID id) { if (id.isAnonymous()) { return false; } readLock.lock(); try { if (ontologiesByID.containsKey(id)) { return true; } return ids().anyMatch(id::match); } finally { readLock.unlock(); } }