From f8a4fa01ecbba1de4732ac7fae417553c881ba88 Mon Sep 17 00:00:00 2001 From: Todd Viegut Date: Thu, 24 Oct 2024 01:35:55 -0500 Subject: [PATCH] #170 --- .../langdale/profiles/ProfileSerializer.java | 180 +++--------------- .../au/com/langdale/xmi/CIMInterpreter.java | 142 ++------------ .../src/au/com/langdale/xmi/Translator.java | 1 - CIMUtil/src/au/com/langdale/xmi/UML.java | 18 -- 4 files changed, 38 insertions(+), 303 deletions(-) diff --git a/CIMUtil/src/au/com/langdale/profiles/ProfileSerializer.java b/CIMUtil/src/au/com/langdale/profiles/ProfileSerializer.java index 805dd0c..d681689 100644 --- a/CIMUtil/src/au/com/langdale/profiles/ProfileSerializer.java +++ b/CIMUtil/src/au/com/langdale/profiles/ProfileSerializer.java @@ -81,6 +81,8 @@ public class ProfileSerializer extends AbstractReader { private String copyrightMultiLine = ""; private String copyrightSingleLine = ""; // the next set of parameters are PlantUML specific + private String docRootClassesColor = ""; + private String docRootClassesFontColor = ""; private String concreteClassesColor = ""; private String concreteClassesFontColor = ""; private String abstractClassesColor = ""; @@ -109,14 +111,6 @@ public int compare(OntResource o1, OntResource o2) { return o1.getURI().compareTo(o2.getURI()); } }); - private TreeSet primitives = new TreeSet(new Comparator() { - @Override - public int compare(OntResource o1, OntResource o2) { - String str1 = o1.getString(UML.primitiveDataType); - String str2 = o2.getString(UML.primitiveDataType); - return str1.compareTo(str2); - } - }); /** * Construct a serializer for the given MessageModel. @@ -313,6 +307,8 @@ public void write(OutputStream ostream) throws TransformerException { ti.setParameter("copyright-single-line", copyrightSingleLine); // PlantUML diagram preferences for all PlantUML diagram builders... + ti.setParameter("docRootClassesColor", docRootClassesColor); + ti.setParameter("docRootClassesFontColor", docRootClassesFontColor); ti.setParameter("concreteClassesColor", concreteClassesColor); ti.setParameter("concreteClassesFontColor", concreteClassesFontColor); ti.setParameter("abstractClassesColor", abstractClassesColor); @@ -416,19 +412,13 @@ private void emit(CatalogNode node) throws SAXException { while (it.hasNext()) { emitCIMDatatype((OntResource) it.next()); } - - it = primitives.iterator(); - while (it.hasNext()) { - emitPrimitive((OntResource) it.next()); - } - elem.close(); } private void emit(EnvelopeNode node) throws SAXException { Element elem = new Element("Message", MESSAGE.NS); - elem.set("name", node.getName()); elem.set("hideInDiagrams", (isHidden(node.getSubject()) ? "true" : "false")); + elem.set("name", node.getName()); emitChildren(node); elem.close(); } @@ -487,27 +477,13 @@ private void emit(ElementNode node) throws SAXException { range = model.getOntModel().createResource(XSD.xstring.asNode()); if (range.hasProperty(UML.hasStereotype, UML.primitive) || range.getNameSpace().equals(xsd)) { elem = new Element("Simple"); - /** - * For backwards compatibility, rather than setting the "dataType" attribute - * to the <> type in the CIM (which is now specified as a property - * on the range which has historically specified the W3C XSD type such as: - * - * http://www.w3.org/2001/XMLSchema#float - * - * Given that we have numerous existing builders that produce profiles (e.g. - * XSD & JSON schemas) that are XSL transforms that would break if this were - * changed we have opted to go this route as an interim solution. When first - * class support for <> and <>s is introduced we will - * updated at that time to ensure this implementation is updated. - */ - elem.set("primitiveDataType", range.getString(UML.primitiveDataType)); - primitives.add(range); + elem.set("hideInDiagrams", (node.getSubject() != null && isHidden(node.getSubject()) ? "true" : "false")); } else { elem = new Element("Domain"); + elem.set("hideInDiagrams", (node.getSubject() != null && isHidden(node.getSubject()) ? "true" : "false")); elem.set("type", range.getLocalName()); deferred.add(range); } - elem.set("hideInDiagrams", (node.getSubject() != null && isHidden(node.getSubject()) ? "true" : "false")); elem.set("dataType", range.getURI()); elem.set("xstype", xstype(range)); emit(node, elem); @@ -599,78 +575,6 @@ private void emitInverse(ElementNode node, Element elem) throws SAXException { private void emit(ElementNode node, Element elem) throws SAXException { emit(node, elem, false); } - - private void emitValueUnitMultiplier(OntResource cimDatatype) throws SAXException { - if (cimDatatype == null) - return; - boolean hasMultiplier = cimDatatype.hasProperty(UML.hasMultiplier); - boolean hasUnits = cimDatatype.hasProperty(UML.hasUnits); - String valueDataType = cimDatatype.getString(UML.valueDataType, null); - String valuePrimitiveDataType = cimDatatype.getString(UML.valuePrimitiveDataType, null); - String unitDataType = cimDatatype.getString(UML.unitDataType, null); - String multiplierDataType = cimDatatype.getString(UML.multiplierDataType, null); - - /** Generate the CIMDatatype "value" attribute. */ - Element valueElement = new Element("Value"); - valueElement.set("baseClass", valuePrimitiveDataType); - valueElement.set("type", valuePrimitiveDataType.substring(valuePrimitiveDataType.lastIndexOf("#") + 1)); - valueElement.set("xstype", valueDataType.substring(valueDataType.lastIndexOf("#") + 1)); - valueElement.set("name", "value"); - valueElement.set("constant", ""); - valueElement.set("ea_guid", cimDatatype.getString(UML.valueEAGUID, null)); - valueElement.set("hideInDiagrams", "false"); - valueElement.set("baseProperty", cimDatatype.getURI() + ".value"); - valueElement.set("basePropertyClass", cimDatatype.getURI()); - valueElement.set("minOccurs", ProfileModel.cardString(0)); - valueElement.set("maxOccurs", ProfileModel.cardString(1, "1")); - // - Element valueAttrStereotype = new Element("Stereotype"); - valueAttrStereotype.set("label", UML.attribute.getLocalName()); - valueAttrStereotype.append(UML.attribute.getURI()); - valueAttrStereotype.close(); - // - valueElement.close(); - - /** Generate the CIMDatatype "unit" attribute. */ - Element unitElement = new Element("Unit"); - unitElement.set("baseClass", unitDataType); - unitElement.set("type", unitDataType.substring(unitDataType.lastIndexOf("#") + 1)); - unitElement.set("name", "unit"); - unitElement.set("constant", (hasUnits ? cimDatatype.getString(UML.hasUnits, null) : "none")); - unitElement.set("ea_guid", cimDatatype.getString(UML.unitEAGUID, null)); - unitElement.set("hideInDiagrams", "false"); - unitElement.set("baseProperty", cimDatatype.getURI() + ".unit"); - unitElement.set("basePropertyClass", cimDatatype.getURI()); - unitElement.set("minOccurs", ProfileModel.cardString(0)); - unitElement.set("maxOccurs", ProfileModel.cardString(1, "1")); - // - Element unitAttrStereotype = new Element("Stereotype"); - unitAttrStereotype.set("label", UML.attribute.getLocalName()); - unitAttrStereotype.append(UML.attribute.getURI()); - unitAttrStereotype.close(); - // - unitElement.close(); - - /** Generate the CIMDatatype "multiplier" attribute. */ - Element multiplierElement = new Element("Multiplier"); - multiplierElement.set("baseClass", multiplierDataType); - multiplierElement.set("type", multiplierDataType.substring(multiplierDataType.lastIndexOf("#") + 1)); - multiplierElement.set("name", "multiplier"); - multiplierElement.set("constant", (hasMultiplier ? cimDatatype.getString(UML.hasMultiplier, null) : "none")); - multiplierElement.set("ea_guid", cimDatatype.getString(UML.multiplierEAGUID, null)); - multiplierElement.set("hideInDiagrams", "false"); - multiplierElement.set("baseProperty", cimDatatype.getURI() + ".multiplier"); - multiplierElement.set("basePropertyClass", cimDatatype.getURI()); - multiplierElement.set("minOccurs", ProfileModel.cardString(0)); - multiplierElement.set("maxOccurs", ProfileModel.cardString(1, "1")); - // - Element multiplierAttrStereotype = new Element("Stereotype"); - multiplierAttrStereotype.set("label", UML.attribute.getLocalName()); - multiplierAttrStereotype.append(UML.attribute.getURI()); - multiplierAttrStereotype.close(); - // - multiplierElement.close(); - } private void emit(ElementNode node, Element elem, boolean includeInverseBaseClass) throws SAXException { elem.set("name", node.getName()); @@ -700,8 +604,8 @@ private void emit(ElementNode node, Element elem, boolean includeInverseBaseClas } private void emitChoice(ElementNode node, Element elem) throws SAXException { - elem.set("name", node.getName()); elem.set("hideInDiagrams", (node.getSubject() != null && isHidden(node.getSubject()) ? "true" : "false")); + elem.set("name", node.getName()); elem.set("baseProperty", node.getBaseProperty().getURI()); elem.set("minOccurs", ProfileModel.cardString(node.getMinCardinality())); elem.set("maxOccurs", ProfileModel.cardString(node.getMaxCardinality(), "unbounded")); @@ -844,8 +748,8 @@ else if (node.hasStereotype(UML.compound)) elem = new Element("CompoundType"); else elem = new Element("ComplexType"); - elem.set("name", node.getName()); elem.set("hideInDiagrams", (node.getSubject() != null && isHidden(node.getSubject()) ? "true" : "false")); + elem.set("name", node.getName()); if (node.getBaseClass().hasProperty(UML.id)) elem.set("ea_guid", node.getBaseClass().getString(UML.id)); elem.set("baseClass", node.getBaseClass().getURI()); @@ -864,8 +768,8 @@ else if (node.hasStereotype(UML.compound)) private void emit(MessageNode node) throws SAXException { Element elem = new Element("Root"); - elem.set("name", node.getName()); elem.set("hideInDiagrams", (node.getSubject() != null && isHidden(node.getSubject()) ? "true" : "false")); + elem.set("name", node.getName()); if (node.getBaseClass().hasProperty(UML.id)) elem.set("ea_guid", node.getBaseClass().getString(UML.id)); elem.set("baseClass", node.getBaseClass().getURI()); @@ -879,63 +783,17 @@ private void emit(MessageNode node) throws SAXException { private void emitCIMDatatype(OntResource type) throws SAXException { Element elem = new Element("SimpleType"); - + elem.set("hideInDiagrams", (type != null && isHidden(type) ? "true" : "false")); elem.set("dataType", type.getURI()); elem.set("name", type.getLocalName()); - if (type.hasProperty(UML.id)) elem.set("ea_guid", type.getString(UML.id)); - OntResource defin = type.getResource(RDFS.isDefinedBy); if (defin != null) { elem.set("package", defin.getLabel()); elem.set("packageURI", defin.getURI()); } elem.set("xstype", xstype(type)); - emitComment(type.getComment(null)); - emitStereotypes(type); - emitValueUnitMultiplier(type); - elem.close(); - } - - /** - * Some history on the below change introduced in 2.3.0. The context is that for the - * CIMTool implementation of CIM <> UML classes (e.g. Decimal, Boolean, Date, - * Float, Date, others...) the perspective was that the intent of those classes is that - * they were representative of XSD schema type primitives and therefor the original - * CIMTool design was to essentially remove them from the CIMTool *.OWL profile - * representation generated by CIMTool. For a more detailed understanding of how this - * is done refer to the CIMInterpreter.applyPrimitiveStereotype() method. The result of - * the model processing done there is ultimately used here in the ProfileSerializer class. - * - * The below method was introduced in 2.3.0 as a result of the evolution in thinking in - * how we are now representing the profiles. Today, in formats such as RDFS2020 and others - * we include CIM <> as actual RDF classes (such as in the CGMES RDFS profiles). - * However, to preserve backwards compatibility we have chosen (for the moment) not to update - * the core representation in CIMTool but rather to limit changes to only the generated - * XML internal profile representation produced by the this ProfileSerializer class. Thus, - * in 2.3.0 we have added the additional method below to generated entries in the XML - * internal format to include "Primitive" entries that can be used by XSLT transform - * builders to generate output such as RDFS2020 and equivalent. To change the core internal - * format at this point would break CIMTool's current instance data validation features. - */ - private void emitPrimitive(OntResource type) throws SAXException { - Element elem = new Element("PrimitiveType"); - - String dataType = type.getString(UML.primitiveDataType); - elem.set("dataType", dataType); - elem.set("name", dataType.substring(dataType.lastIndexOf("#") + 1)); - elem.set("hideInDiagrams", (isHidden(type) ? "true" : "false")); - - if (type.hasProperty(UML.id)) - elem.set("ea_guid", type.getString(UML.id)); - - OntResource definedBy = type.getResource(RDFS.isDefinedBy); - if (definedBy != null) { - elem.set("package", definedBy.getLabel()); - elem.set("packageURI", definedBy.getURI()); - } - elem.set("xstype", xstype(type)); emitComment(type.getComment(null)); emitStereotypes(type); @@ -961,6 +819,22 @@ public String getVersion() { public void setVersion(String version) { this.version = version; } + + public String getDocRootClassesColor() { + return docRootClassesColor; + } + + public void setDocRootClassesColor(String docRootClassesColor) { + this.docRootClassesColor = docRootClassesColor; + } + + public String getDocRootClassesFontColor() { + return docRootClassesFontColor; + } + + public void setDocRootClassesFontColor(String docRootClassesFontColor) { + this.docRootClassesFontColor = docRootClassesFontColor; + } public String getConcreteClassesColor() { return concreteClassesColor; diff --git a/CIMUtil/src/au/com/langdale/xmi/CIMInterpreter.java b/CIMUtil/src/au/com/langdale/xmi/CIMInterpreter.java index 0961af9..202f6fc 100644 --- a/CIMUtil/src/au/com/langdale/xmi/CIMInterpreter.java +++ b/CIMUtil/src/au/com/langdale/xmi/CIMInterpreter.java @@ -41,18 +41,6 @@ private OntModel postProcess(OntModel raw, String baseURI, boolean usePackageNam labelRoles(); System.out.println("Stage 1 XMI model size: " + getModel().size()); - - /** - ResIterator classes1 = raw.listSubjectsWithProperty(RDF.type, OWL2.Class); - TreeMap classMap1 = new TreeMap<>(); - classes1.forEachRemaining((c) -> { - if (((OntResource)c).getLabel() != null) - classMap1.put(((OntResource)c).getLabel(), (OntResource)c); - }); - classMap1.forEach((name, aClass) -> { - OntResource aParentPackage = aClass.getIsDefinedBy(); - System.out.println(String.format("1 - Class: %s; Package: %s", name, (aParentPackage != null ? aParentPackage.getLabel() : aParentPackage))); - }); */ Translator translator = new Translator(getModel(), baseURI, usePackageNames); translator.run(); @@ -60,21 +48,8 @@ private OntModel postProcess(OntModel raw, String baseURI, boolean usePackageNam System.out.println("Stage 3 XMI model size: " + getModel().size()); - /** - ResIterator classes3 = raw.listSubjectsWithProperty(RDF.type, OWL2.Class); - TreeMap classMap3 = new TreeMap<>(); - classes3.forEachRemaining((c) -> { - if (((OntResource)c).getLabel() != null) - classMap3.put(((OntResource)c).getLabel(), (OntResource)c); - }); - classMap3.forEach((name, aClass) -> { - OntResource aParentPackage = aClass.getIsDefinedBy(); - System.out.println(String.format("3 - Class: %s; Package: %s", name, (aParentPackage != null ? aParentPackage.getLabel() : aParentPackage))); - }); */ - propagateComments(); applyStereotypes(); - classifyAttributes(); removeUntyped(); // convertToSubClassOf("extensionMSITE"); @@ -82,18 +57,6 @@ private OntModel postProcess(OntModel raw, String baseURI, boolean usePackageNam System.out.println("Stage 4 XMI model size: " + getModel().size()); - /** - ResIterator classes4 = raw.listSubjectsWithProperty(RDF.type, OWL2.Class); - TreeMap classMap4 = new TreeMap<>(); - classes4.forEachRemaining((c) -> { - if (((OntResource)c).getLabel() != null) - classMap4.put(((OntResource)c).getLabel(), (OntResource)c); - }); - classMap4.forEach((name, aClass) -> { - OntResource aParentPackage = aClass.getIsDefinedBy(); - System.out.println(String.format("4 - Class: %s; Package: %s", name, (aParentPackage != null ? aParentPackage.getLabel() : aParentPackage))); - }); */ - return getModel(); } @@ -183,17 +146,10 @@ private void applyPrimitiveStereotype(Resource stereo, boolean interpret_value) private void applyPrimitiveStereotype(OntResource clss, boolean interpret_value) { OntResource truetype = null; - String unit = null; - String valueDataType = null; - String valuePrimitiveDataType = null; - String valueEAGUID = null; - String unitDataType = null; - String unitEAGUID = null; + String units = null; String multiplier = null; - String multiplierDataType = null; - String multiplierEAGUID = null; - // strip the classes properties, record the value, units, and multiplier information + // strip the classes properties, record the value and units information ResIterator it = model.listSubjectsBuffered(RDFS.domain, clss); while(it.hasNext()) { OntResource m = it.nextResource(); @@ -202,22 +158,12 @@ private void applyPrimitiveStereotype(OntResource clss, boolean interpret_value) String name = m.getLabel(); if(name != null) { // this is a CIM-style annotation to indicate the primitive datatype - if( name.equals("value")) { + if( name.equals("value")) truetype = m.getResource(RDFS.range); - valueDataType = m.getRange().getURI(); - valuePrimitiveDataType = m.getRange().getString(UML.primitiveDataType); - valueEAGUID = m.getString(UML.id); - } - if( name.equals("unit") || name.equals("units")) { - unit = m.getString(UML.hasInitialValue); - unitDataType = m.getRange().getURI(); - unitEAGUID = m.getString(UML.id); - } - if( name.equals("multiplier")) { + if( name.equals("unit") || name.equals("units")) + units = m.getString(UML.hasInitialValue); + if( name.equals("multiplier")) multiplier = m.getString(UML.hasInitialValue); - multiplierDataType = m.getRange().getURI(); - multiplierEAGUID = m.getString(UML.id); - } } } // remove spurious property attached to datatype @@ -226,86 +172,20 @@ private void applyPrimitiveStereotype(OntResource clss, boolean interpret_value) // for XML Schema datatypes remove all definitions if(clss.hasProperty(UML.hasStereotype, UML.primitive) || clss.getNameSpace().equals(XSD.getURI())){ - /** - * Some history on the below change introduced in 2.3.0. The context for the original - * implementation in 2010/2011 was that the implementation of CIM <> UML - * classes (e.g. Decimal, Integer, Boolean, Date, Float, DateTime, Month, etc.) - * was originally from the perspective that the intent in the UML was that the are - * representative of XSD schema types. Based on that assumption, the implementation - * resulted in the removing them as RDF Classes from the *.OWL profiles generated - * by CIMTool. This occurs via a two step process during the import of a CIM schema - * (i.e. an *.xmi, *.eap, *.qea, etc. file) into CIMTool. During the execution of the - * CIMInterpreter.postProcess() method the Translator class runs two passes as part - * if its translation processing. It is during "pass 2" that it does a rename in the - * Translator.renameResource(OntResource r, String l) method and renames/transforms the - * CIM <> class itself to it's XSD schema type. That translation leaves the - * OntResource looking like the following if you were to perform a OntResource.desribe(): - * - * http://www.w3.org/2001/XMLSchema#boolean - * http://langdale.com.au/2005/UML#hasStereotype = http://langdale.com.au/2005/UML#primitive - * http://www.w3.org/2000/01/rdf-schema#isDefinedBy = http://iec.ch/TC57/CIM100#Package_Domain - * http://langdale.com.au/2005/UML#id = "EAID_9F8964F1_6C32_465b_A83D_F5A201A291C3" - * http://www.w3.org/2000/01/rdf-schema#label = "Boolean" - * http://www.w3.org/2000/01/rdf-schema#comment = "A type with the value space "true" and "false"." - * - * Thus, the translation step was a preparatory step that essentially was completed in - * this method where the call to removeProperites(), commented out below, would remove - * the additional properties above. - * - * However, as things have evolved in the broader CIM community and as RDFS2020 and other - * representations have been introduced, those representations explicitly represent the - * CIM <> classes as RDF Classes in those newer formats (such as in the CGMES - * RDFS profiles). However, to preserve backwards compatibility we have chosen (for now) - * not to update the core representation but rather to limit changes to only the generated - * XML internal profile representation produced by the ProfileSerializer class. Thus by - * changing the below to remove only the RDF.type properties it filters it still "filters - * out" the <> classes from the core *.OWL profile (which only includes valid - * OntResources defined with a property of: - * - * http://www.w3.org/1999/02/22-rdf-syntax-ns#type = http://www.w3.org/2002/07/owl#Class - * - * Thus, the change below preserves the remaining 4 properties (for package name, comments, - * stereotypes, etc.) that we can use "downstream" when generating the XML internal profile - * used by the XSLT RDFS2020 builder (and others). for further details, refer to the - * ProfileSerializer.emitPrimitive() method on that class. - */ - //clss.removeProperties(); - clss.removeAll(RDF.type); - // - String localName = clss.getLocalName(); - FrontsNode xsdType = XSDTypeUtils.selectXSDType(localName); - if (xsdType != null) { - clss.addProperty(OWL.equivalentClass, xsdType); - } + clss.removeProperties(); } // for defined datatypes, establish an RDFS datatype else { clss.removeAll(RDF.type); clss.addProperty(RDF.type, RDFS.Datatype); - // - if( truetype != null && !clss.equals(truetype) ) + + if( truetype != null && ! clss.equals(truetype)) clss.addProperty( OWL.equivalentClass, truetype ); - if( valueDataType != null ) - clss.addProperty( UML.valueDataType, valueDataType); - if ( valuePrimitiveDataType != null) - clss.addProperty( UML.valuePrimitiveDataType, valuePrimitiveDataType); - if( valueEAGUID != null ) - clss.addProperty( UML.valueEAGUID, valueEAGUID); - // - if( unit != null ) - clss.addProperty( UML.hasUnits, unit); - if( unitDataType != null ) - clss.addProperty( UML.unitDataType, unitDataType); - if( unitEAGUID != null ) - clss.addProperty( UML.unitEAGUID, unitEAGUID); - // + if( units != null ) + clss.addProperty( UML.hasUnits, units); if( multiplier != null ) clss.addProperty( UML.hasMultiplier, multiplier); - if( multiplierDataType != null ) - clss.addProperty( UML.multiplierDataType, multiplierDataType); - if( multiplierEAGUID != null ) - clss.addProperty( UML.multiplierEAGUID, multiplierEAGUID); } } diff --git a/CIMUtil/src/au/com/langdale/xmi/Translator.java b/CIMUtil/src/au/com/langdale/xmi/Translator.java index 98d3a95..a7a5550 100644 --- a/CIMUtil/src/au/com/langdale/xmi/Translator.java +++ b/CIMUtil/src/au/com/langdale/xmi/Translator.java @@ -245,7 +245,6 @@ protected FrontsNode renameResource(OntResource r, String l) { FrontsNode x = XSDTypeUtils.selectXSDType(l); if (x != null) { OntResource resource = result.createResource(x.toString()); - resource.addProperty(UML.primitiveDataType, namespace + l); return resource; } } diff --git a/CIMUtil/src/au/com/langdale/xmi/UML.java b/CIMUtil/src/au/com/langdale/xmi/UML.java index 28eded9..a871055 100644 --- a/CIMUtil/src/au/com/langdale/xmi/UML.java +++ b/CIMUtil/src/au/com/langdale/xmi/UML.java @@ -94,19 +94,8 @@ public class UML { public final static Property hasInitialValue = ResourceFactory.createProperty(NS + "hasInitialValue"); // units and multiplier are not really a UML concepts, we infer these under CIM conventions - // these properties are included in order to allow for "flattened" CIMDatatypes meaning that - // the .OWL profile will not contain representations of these CIM classes that contain the - // value/unit/multiplier attributes. public final static Property hasUnits = ResourceFactory.createProperty(NS + "hasUnits"); public final static Property hasMultiplier = ResourceFactory.createProperty(NS + "hasMultiplier"); - public final static Property valueDataType = ResourceFactory.createProperty(NS + "valueDataType"); - public final static Property valuePrimitiveDataType = ResourceFactory.createProperty(NS + "valuePrimitiveDataType"); - public final static Property valueEAGUID = ResourceFactory.createProperty(NS + "valueEAGUID"); - public final static Property unitDataType = ResourceFactory.createProperty(NS + "unitDataType"); - public final static Property unitEAGUID = ResourceFactory.createProperty(NS + "unitEAGUID"); - public final static Property multiplierDataType = ResourceFactory.createProperty(NS + "multiplierDataType"); - public final static Property multiplierEAGUID = ResourceFactory.createProperty(NS + "multiplierEAGUID"); - public final static Property primitiveDataType = ResourceFactory.createProperty(NS + "primitiveDataType"); // tags we recognise that aid conversion to RDFS/OWL public final static Property baseuri = ResourceFactory.createProperty(NS + "baseuri"); @@ -173,13 +162,6 @@ public static void loadOntology( OntModel model ) { model.createAnnotationProperty(hasInitialValue.getURI()); model.createAnnotationProperty(hasUnits.getURI()); model.createAnnotationProperty(hasMultiplier.getURI()); - model.createAnnotationProperty(valueDataType.getURI()); - model.createAnnotationProperty(valueEAGUID.getURI()); - model.createAnnotationProperty(unitDataType.getURI()); - model.createAnnotationProperty(unitEAGUID.getURI()); - model.createAnnotationProperty(multiplierDataType.getURI()); - model.createAnnotationProperty(multiplierEAGUID.getURI()); - model.createAnnotationProperty(primitiveDataType.getURI()); model.createAnnotationProperty(id.getURI()); model.createAnnotationProperty(hasMaxCardinality.getURI()); model.createAnnotationProperty(hasMinCardinality.getURI());