Description
Currently gen-owl translates PVs to classes. This is very convenient because we can take advantage of constructs like like UnionOf to represent an enumeration. It is also the default case since often PVs are classes taken from ontologies
But this is not always the case.
- authors may want to follow the Rector partition model e.g. for LOW MEDIUM HIGH
- the PVs may represent actual individuals. E.g an enum
HomePlanet
with PVs for{Earth, Venus, ...}
- the PVs may be other OWL constructs like ObjectProperty, Datatype, even Ontology
- the author may prefer to be non-committal
IF the user decides that ALL the members of a PV are individuals then we can take advantage of the OWL AnyOf
construct
IF the PV is a mix of classes AND inviduals, it's impossible to have a single OWL definition of the enum in OWL-DL, unless we pun. But punning creates a lot of confusion.
Of course some users may not care about having an enum definition. It may be sufficient to simply use annotation properties to link an enum to PVs, as we do for gen-rdf
This PR is to gather feedback from the community on preferred mappings for PVs in OWL translations