/** * Writes an IRI element for a given IRI. * * @param iri The IRI to be written as an element. If the IRI can be abbreviated then an * AbbreviatedIRI element will be written */ public void writeIRIElement(IRI iri) { String iriString = iri.toString(); if (iriString.startsWith(writer.getXMLBase())) { writeStartElement(IRI_ELEMENT); writeTextContent(iriMinusBase(iriString)); writeEndElement(); } else { String val = getIRIString(iri); if (!val.equals(iriString)) { writeStartElement(ABBREVIATED_IRI_ELEMENT); writer.writeTextContent(val); writeEndElement(); } else { writeStartElement(IRI_ELEMENT); writer.writeTextContent(val); writeEndElement(); } } }
@Override public void visit(OWLFacetRestriction node) { writer.writeStartElement(FACET_RESTRICTION); writer.writeFacetAttribute(node.getFacet()); node.getFacetValue().accept(this); writer.writeEndElement(); }
@Override public void visit(OWLClass ce) { writer.writeStartElement(CLASS); writer.writeIRIAttribute(ce.getIRI()); writer.writeEndElement(); }
@Override public void visit(OWLObjectUnionOf ce) { writer.writeStartElement(OBJECT_UNION_OF); render(ce.operands()); writer.writeEndElement(); }
@Override public void visit(OWLDataExactCardinality ce) { writer.writeStartElement(DATA_EXACT_CARDINALITY); writer.writeCardinalityAttribute(ce.getCardinality()); ce.getProperty().accept(this); if (ce.isQualified()) { ce.getFiller().accept(this); } writer.writeEndElement(); }
@Override public void visit(OWLLiteral node) { writer.writeStartElement(LITERAL); if (node.hasLang()) { writer.writeLangAttribute(node.getLang()); } else if (!node.isRDFPlainLiteral() && !OWL2Datatype.XSD_STRING.matches(node.getDatatype())) { writer.writeDatatypeAttribute(node.getDatatype()); } writer.writeTextContent(node.getLiteral()); writer.writeEndElement(); }
checkNotNull(format, "format cannot be null"); try { OWLXMLWriter w = new OWLXMLWriter(writer, ontology); w.startDocument(ontology); if (format instanceof PrefixDocumentFormat) { PrefixDocumentFormat fromPrefixFormat = (PrefixDocumentFormat) format; for (Map.Entry<String, String> e : map.entrySet()) { if (e.getValue() != null && !e.getValue().isEmpty()) { w.writePrefix(e.getKey(), e.getValue()); w.writePrefix("rdf:", Namespaces.RDF.toString()); w.writePrefix("rdfs:", Namespaces.RDFS.toString()); w.writePrefix("xsd:", Namespaces.XSD.toString()); w.writePrefix("owl:", Namespaces.OWL.toString()); w.writePrefix("rdf:", Namespaces.RDF.toString()); w.writePrefix("rdfs:", Namespaces.RDFS.toString()); w.writePrefix("xsd:", Namespaces.XSD.toString()); w.writePrefix("owl:", Namespaces.OWL.toString()); w.endDocument(); writer.flush(); } catch (OWLRuntimeException e) {
/** * @param iri iri */ public void writeIRIAttribute(IRI iri) { IRI attName = IRI_ATTRIBUTE.getIRI(); String value = iri.toString(); if (value.startsWith(writer.getXMLBase())) { writer.writeAttribute(attName, iriMinusBase(value)); } else { String val = getIRIString(iri); if (!val.equals(iri.toString())) { writer.writeAttribute(ABBREVIATED_IRI_ATTRIBUTE.getIRI(), val); } else { writer.writeAttribute(attName, val); } } }
public OWLXMLRenderer() { try { OWLOntology ont = OWLManager.createOWLOntologyManager().createOntology(IRI.create("http://dl-learner.org/ontology/")); sw = new StringWriter(); OWLXMLWriter oxw = new OWLXMLWriter(sw, ont); delegate = new OWLXMLObjectRenderer(oxw); } catch (OWLOntologyCreationException e) { e.printStackTrace(); } }
@Override public void visit(OWLDataMinCardinality ce) { writer.writeStartElement(DATA_MIN_CARDINALITY); writer.writeCardinalityAttribute(ce.getCardinality()); ce.getProperty().accept(this); if (ce.isQualified()) { ce.getFiller().accept(this); } writer.writeEndElement(); }
@Override public void visit(OWLLiteral node) { writer.writeStartElement(LITERAL); if (node.hasLang()) { writer.writeLangAttribute(node.getLang()); } else if (!node.isRDFPlainLiteral() && !OWL2Datatype.XSD_STRING.matches(node.getDatatype())) { writer.writeDatatypeAttribute(node.getDatatype()); } writer.writeTextContent(node.getLiteral()); writer.writeEndElement(); }
checkNotNull(format, "format cannot be null"); try { OWLXMLWriter w = new OWLXMLWriter(writer, ontology); w.startDocument(ontology); if (format instanceof PrefixDocumentFormat) { PrefixDocumentFormat fromPrefixFormat = (PrefixDocumentFormat) format; for (Map.Entry<String, String> e : map.entrySet()) { if (e.getValue() != null && !e.getValue().isEmpty()) { w.writePrefix(e.getKey(), e.getValue()); w.writePrefix("rdf:", Namespaces.RDF.toString()); w.writePrefix("rdfs:", Namespaces.RDFS.toString()); w.writePrefix("xsd:", Namespaces.XSD.toString()); w.writePrefix("owl:", Namespaces.OWL.toString()); w.writePrefix("rdf:", Namespaces.RDF.toString()); w.writePrefix("rdfs:", Namespaces.RDFS.toString()); w.writePrefix("xsd:", Namespaces.XSD.toString()); w.writePrefix("owl:", Namespaces.OWL.toString()); w.endDocument(); writer.flush(); } catch (OWLRuntimeException e) {
@Override public void visit(OWLObjectInverseOf property) { writer.writeStartElement(OBJECT_INVERSE_OF); property.getInverse().accept(this); writer.writeEndElement(); }
/** * @param iri iri */ public void writeIRIAttribute(IRI iri) { IRI attName = IRI_ATTRIBUTE.getIRI(); String value = iri.toString(); if (value.startsWith(writer.getXMLBase())) { writer.writeAttribute(attName, iriMinusBase(value)); } else { String val = getIRIString(iri); if (!val.equals(iri.toString())) { writer.writeAttribute(ABBREVIATED_IRI_ATTRIBUTE.getIRI(), val); } else { writer.writeAttribute(attName, val); } } }
/** * Converts an OWL API object to an OWL/XML syntax string. * * @param obj Input OWL object. * @return OWL/XML syntax string. */ public static String toOWLXMLSyntax(OWLObject obj) { StringWriter sw = new StringWriter(); try { OWLXMLWriter oxw = new OWLXMLWriter(sw, OWLManager.createOWLOntologyManager().createOntology(IRI.create("http://example.com/"))); OWLXMLObjectRenderer renderer = new OWLXMLObjectRenderer(oxw); obj.accept(renderer); } catch (OWLOntologyCreationException e) { e.printStackTrace(); } return sw.toString(); }
@Override public void visit(OWLAnnotationProperty property) { writer.writeStartElement(ANNOTATION_PROPERTY); writer.writeIRIAttribute(property.getIRI()); writer.writeEndElement(); }
@Override public void visit(OWLObjectMaxCardinality ce) { writer.writeStartElement(OBJECT_MAX_CARDINALITY); writer.writeCardinalityAttribute(ce.getCardinality()); ce.getProperty().accept(this); if (ce.isQualified()) { ce.getFiller().accept(this); } writer.writeEndElement(); }
@Override public void visit(OWLLiteral node) { writer.writeStartElement(LITERAL); if (node.hasLang()) { writer.writeLangAttribute(node.getLang()); } else if (!node.isRDFPlainLiteral() && !OWL2Datatype.XSD_STRING.matches(node.getDatatype())) { writer.writeDatatypeAttribute(node.getDatatype()); } writer.writeTextContent(node.getLiteral()); writer.writeEndElement(); }
/** * Writes an IRI element for a given IRI. * * @param iri The IRI to be written as an element. If the IRI can be abbreviated then an * AbbreviatedIRI element will be written */ public void writeIRIElement(IRI iri) { String iriString = iri.toString(); if (iriString.startsWith(writer.getXMLBase())) { writeStartElement(IRI_ELEMENT); writeTextContent(iriMinusBase(iriString)); writeEndElement(); } else { String val = getIRIString(iri); if (!val.equals(iriString)) { writeStartElement(ABBREVIATED_IRI_ELEMENT); writer.writeTextContent(val); writeEndElement(); } else { writeStartElement(IRI_ELEMENT); writer.writeTextContent(val); writeEndElement(); } } }
checkNotNull(format, "format cannot be null"); try { OWLXMLWriter w = new OWLXMLWriter(writer, ontology); w.startDocument(ontology); if (format instanceof PrefixDocumentFormat) { PrefixDocumentFormat fromPrefixFormat = (PrefixDocumentFormat) format; for (Map.Entry<String, String> e : map.entrySet()) { if (e.getValue() != null && !e.getValue().isEmpty()) { w.writePrefix(e.getKey(), e.getValue()); w.writePrefix("rdf:", Namespaces.RDF.toString()); w.writePrefix("rdfs:", Namespaces.RDFS.toString()); w.writePrefix("xsd:", Namespaces.XSD.toString()); w.writePrefix("owl:", Namespaces.OWL.toString()); w.writePrefix("rdf:", Namespaces.RDF.toString()); w.writePrefix("rdfs:", Namespaces.RDFS.toString()); w.writePrefix("xsd:", Namespaces.XSD.toString()); w.writePrefix("owl:", Namespaces.OWL.toString()); w.endDocument(); writer.flush(); } catch (OWLRuntimeException e) {