Skip to content

Commit fd7ee38

Browse files
Still testing
1 parent 0ce01b9 commit fd7ee38

File tree

5 files changed

+20
-13
lines changed

5 files changed

+20
-13
lines changed

src/main/resources/logback.xml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@
1111
<!-- org.uml2semantics.TSVReader.scala -->
1212
<logger name="parseClasses" level="error" />
1313
<logger name="parseAttributes" level="error" />
14+
<logger name="parseEnumerations" level="trace" />
15+
<logger name="parseEnumerationValues" level="trace" />
1416

1517
<!-- org.uml2semantics.model.UMLClassDiagram.scala -->
1618
<logger name="org.uml2semantics.model.UMLClassCurie" level="error" />
@@ -24,8 +26,10 @@
2426
<logger name="org.uml2semantics.model.UMLMultiplicity" level="error" />
2527
<logger name="org.uml2semantics.model.UMLClassIdentity" level="error" />
2628
<logger name="org.uml2semantics.model.UMLClassAttributeType" level="error" />
29+
<logger name="org.uml2semantics.model.UMLEnumeration" level="trace" />
2730
<logger name="org.uml2semantics.model.UMLClassDiagram" level="error" />
2831

32+
2933
<!-- org.uml2semantics.model.XMLDataType.scala -->
3034
<logger name="org.uml2semantics.model.SupportedDataType" level="error" />
3135

src/main/scala/org/uml2semantics/model/UMLClassDiagram.scala

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -601,7 +601,7 @@ case class UMLClassAttribute(attributeIdentity: UMLClassAttributeIdentity,
601601

602602
case class UMLEnumerationDefinition(definition: String = "")
603603

604-
case class UMLEnumeration(enumeratonIdentity: UMLEnumerationIdentity,
604+
case class UMLEnumeration(enumerationIdentity: UMLEnumerationIdentity,
605605
definition: UMLEnumerationDefinition = UMLEnumerationDefinition())
606606
extends UMLClassDiagramElement
607607

@@ -613,6 +613,7 @@ object UMLEnumeration:
613613
mutable.HashMap[UMLEnumerationIdentity, mutable.Set[UMLEnumerationValueIdentity]]()
614614

615615
def cache(enumerationIdentity: UMLEnumerationIdentity, enumerationValueIdentity: UMLEnumerationValueIdentity): UMLEnumerationIRI =
616+
logger.debug(s"enumerationIdentity=$enumerationIdentity, enumerationValueIdentity=$enumerationValueIdentity ${Code.source}")
616617
val enumerationValues: mutable.Set[UMLEnumerationValueIdentity] =
617618
enumerationsWithEnumerationValues.getOrElse(enumerationIdentity, mutable.HashSet[UMLEnumerationValueIdentity]())
618619
enumerationValues += enumerationValueIdentity

src/main/scala/org/uml2semantics/owl/UML2OWLWriter.scala

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -59,11 +59,11 @@ class UML2OWLWriter(val umlClassDiagram: UMLClassDiagram):
5959
private def createAndAnnotateOWLClass(umlEnumeration: UMLEnumeration,
6060
errorMessages: mutable.Seq[String]): OWLClass =
6161
logger.debug(s"createAndAnnotateOWLEnumeration: umlEnumeration=$umlEnumeration, errorMessages=$errorMessages ${Code.source}")
62-
val owlClass = dataFactory.getOWLClass(umlEnumeration.enumeratonIdentity.enumerationIRI.iri)
62+
val owlClass = dataFactory.getOWLClass(umlEnumeration.enumerationIdentity.enumerationIRI.iri)
6363
if manager.addAxiom(ontology, dataFactory.getOWLSubClassOfAxiom(owlClass, dataFactory.getOWLThing)) != SUCCESSFULLY then
6464
errorMessages :+ s"Could not add axiom ${owlClass.getIRI} subClassOf owl:Thing"
6565
createDefinitionAnnotation(owlClass, umlEnumeration.definition.definition, errorMessages)
66-
createLabelAnnotation(owlClass, umlEnumeration.enumeratonIdentity.enumerationLabel, errorMessages)
66+
createLabelAnnotation(owlClass, umlEnumeration.enumerationIdentity.enumerationLabel, errorMessages)
6767
owlClass
6868

6969
/**
@@ -377,7 +377,7 @@ class UML2OWLWriter(val umlClassDiagram: UMLClassDiagram):
377377
val owlClass = createAndAnnotateOWLClass(umlEnumeration, errorMessages)
378378
if manager.addAxiom(ontology, dataFactory.getOWLSubClassOfAxiom(owlClass, dataFactory.getOWLThing)) != SUCCESSFULLY then
379379
errorMessages :+ s"Could not add axiom ${owlClass.getIRI} subClassOf owl:Thing"
380-
val umlEnumerationValueIdentitiesOption = UMLEnumeration.find(umlEnumeration.enumeratonIdentity)
380+
val umlEnumerationValueIdentitiesOption = UMLEnumeration.find(umlEnumeration.enumerationIdentity)
381381
if umlEnumerationValueIdentitiesOption.isDefined then
382382
val individuals: mutable.Set[OWLIndividual] = new mutable.HashSet[OWLIndividual]()
383383
umlEnumerationValueIdentitiesOption.get.foreach(v => {

src/main/scala/org/uml2semantics/reader/TSVReader.scala

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ enum EnumerationValuesHeader:
2323

2424
def parseClasses(maybeTsvFile: Option[File], ontologyPrefix: PrefixNamespace): UMLClasses =
2525
import ClassesHeader.*
26-
val logger = Logger("TsvReader: parseClasses")
26+
val logger = Logger("parseClasses")
2727
logger.info("Start")
2828
implicit object TsvFormat extends TSVFormat {}
2929

@@ -108,7 +108,7 @@ end parseAttributes
108108

109109
def parseEnumerations(maybeTsvFile: Option[File], ontologyPrefix: PrefixNamespace): UMLEnumerations =
110110
import EnumerationsHeader.*
111-
val logger = Logger("TsvReader: parseEnumerations")
111+
val logger = Logger("parseEnumerations")
112112
logger.info("Start")
113113
implicit object TsvFormat extends TSVFormat {}
114114

@@ -139,18 +139,18 @@ def parseEnumerations(maybeTsvFile: Option[File], ontologyPrefix: PrefixNamespac
139139
reader.close()
140140

141141
val umlEnumerationByNamedElement = umlEnumerations.map(
142-
umlEnumeration => (umlEnumeration.enumeratonIdentity.enumerationNamedElement, umlEnumeration)).toMap
142+
umlEnumeration => (umlEnumeration.enumerationIdentity.enumerationNamedElement, umlEnumeration)).toMap
143143
logger.trace(s"umlEnumerationByNamedElement = $umlEnumerationByNamedElement")
144144
logger.info("Done")
145145
UMLEnumerations(umlEnumerationByNamedElement)
146146
end parseEnumerations
147147

148148
def parseEnumerationValues(maybeTsvFile: Option[File], ontologyPrefix: PrefixNamespace): UMLEnumerationValues =
149149
import EnumerationValuesHeader.*
150-
val logger = Logger("TsvReader: parseEnumerationValues")
150+
val logger = Logger("parseEnumerationValues")
151151
implicit object TsvFormat extends TSVFormat {}
152152

153-
if maybeTsvFile.isDefined then
153+
if maybeTsvFile.isDefined then {
154154
val reader = CSVReader.open(maybeTsvFile.get)
155155
val umlEnumerationValues = mutable.Set[UMLEnumerationValue]()
156156

@@ -160,30 +160,32 @@ def parseEnumerationValues(maybeTsvFile: Option[File], ontologyPrefix: PrefixNam
160160

161161
val enumerationIdentityOption = UMLEnumerationIdentity.findEnumerationNamedElement(
162162
m(EnumerationValuesHeader.EnumerationName.toString))
163-
logger.trace(s"enumerationNamedElement = $enumerationIdentityOption")
163+
logger.trace(s"--------------- enumerationIdentityOption = $enumerationIdentityOption")
164164
if enumerationIdentityOption.isDefined then
165165
val enumerationIdentity = enumerationIdentityOption.get
166166
val curieOption: Option[Curie] = if m(Curie.toString).contains(":") then
167167
Some(org.uml2semantics.model.Curie(m(Curie.toString)))
168168
else
169169
None
170-
171170
val enumerationValueIdentity = UMLEnumerationValueIdentity(enumerationIdentity.enumerationNamedElement,
172171
UMLEnumerationValueName(m(Name.toString)),
173172
UMLEnumerationValueCurie(curieOption),
174173
ontologyPrefix
175174
)
175+
logger.trace(s"enumerationValueIdentity = $enumerationValueIdentity")
176176
val umlEnumerationValue = UMLEnumerationValue(enumerationValueIdentity,
177177
UMLEnumerationValueDefinition(m(Definition.toString))
178178
)
179+
logger.trace(s"About to cache enumerationIdentity=$enumerationIdentity and enumerationValueIdentity=$enumerationValueIdentity")
179180
UMLEnumeration.cache(enumerationIdentity, enumerationValueIdentity)
180181
umlEnumerationValues += umlEnumerationValue
181-
})
182+
})
182183
reader.close()
183184
val umlEnumerationValuesById = umlEnumerationValues.map(umlEnumerationValue => (umlEnumerationValue.valueIdentity.valueNamedElement, umlEnumerationValue)).toMap
184185
logger.trace(s"umlEnumerationValuesById = $umlEnumerationValuesById")
185186
logger.info("Done")
186187
UMLEnumerationValues(umlEnumerationValuesById)
188+
}
187189
else
188190
UMLEnumerationValues(scala.collection.immutable.HashMap[UMLEnumerationValueNamedElement, UMLEnumerationValue]())
189191
end parseEnumerationValues
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
EnumerationName Curie Name Definition
22
emp:SalarySchedule emp:Daily Employee gets paid at the end of each day
3-
SalarySchedule Weekly Employee gets paid at the end of each week on a Friday
3+
PaymentSchedule Weekly Employee gets paid at the end of each week on a Friday
44
emp:SalarySchedule emp:Monthly Employee gets paid at the last day of the month

0 commit comments

Comments
 (0)