Closed VladimirAlexiev closed 8 months ago
This is something we noticed and we tried to fix :) I also tag @muricna who coordinates these works and has all the logs of these activities I am referring to.
These controversies on “inverse properties” emerge when properties are used in different places with different meanings. Hence, the semantic errors emerge.
This can be checked and dealt with in the context of ePO modelling context. This issue is transferred to EPO repository.
Currently in ePO version 4.0.2, the only owl:inverseOf properties that can be found in ePO_core are in ePO_core_restrictions.rdf. These are:
<rdf:Description rdf:about="http://data.europa.eu/a4g/ontology#hasBeneficialOwner">
<owl:inverseOf rdf:resource="http://data.europa.eu/a4g/ontology#isBeneficialOwnerOf"/>
and
<rdf:Description rdf:about="<http://data.europa.eu/a4g/ontology#isOwnedByAgent>">
<owl:inverseOf rdf:resource="<http://data.europa.eu/a4g/ontology#ownsSystem>"/>
Also, in ePO version 4.0.2, ePO_core does not include properties such as : epo:appliesTo, epo:isReferredToBy , epo:specifies , epo:applies, epo:isReferredToBy , epo:specifies, epo:applies.
Finally, the declarations below are no longer part of the ontology.
rdfs:domain [ a owl:Class ;
owl:unionOf ( epo:DesignContestRegimeTerm epo:SecurityClearanceTerm epo:FollowupContractTerm epo:FrameworkAgreementTerm epo:ReviewTerm epo:SelectionCriterion epo:ProcurementCriterionProperty epo:TenderLot epo:ContractTerm )
] ;
rdfs:range [ a owl:Class ;
owl:unionOf ( epo:Lot epo:Document epo:LotGroup <http://www.w3.org/ns/org#Site> epo:Winner )
] ;
This won't work because you are in effect declaring
epo:isReferredToBy , epo:specifies , epo:applies
to be equivalent props:You need some sort of "local inverse" (not present in OWL) or something equally complicated...
I guess someone quite contravened your UML Conventions with this prop because it's wildly polymorphic:
But still, that's no excuse to make broken inverses