/// <summary>
 /// Checks if the given aProperty can be set equivalentPropertyOf the given bProperty;<br/>
 /// Does not accept property chain definitions, for OWL2-DL decidability preservation.
 /// </summary>
 internal static bool CheckEquivalentPropertyCompatibility(RDFOntologyPropertyModel propertyModel, RDFOntologyObjectProperty aProperty, RDFOntologyObjectProperty bProperty)
 => !propertyModel.CheckIsSubPropertyOf(aProperty, bProperty) &&
 !propertyModel.CheckIsSuperPropertyOf(aProperty, bProperty) &&
 !propertyModel.CheckIsPropertyDisjointWith(aProperty, bProperty) &&
 //OWL2-DL decidability
 !propertyModel.CheckIsPropertyChain(aProperty) &&
 !propertyModel.CheckIsPropertyChain(bProperty);
 /// <summary>
 /// Checks if the given aproperty can be set equivalentpropertyof the given bproperty
 /// </summary>
 internal static Boolean CheckEquivalentPropertyCompatibility(RDFOntologyPropertyModel propertyModel,
                                                              RDFOntologyDatatypeProperty aProperty,
                                                              RDFOntologyDatatypeProperty bProperty)
 {
     return(!propertyModel.CheckIsSubPropertyOf(aProperty, bProperty) &&
            !propertyModel.CheckIsSuperPropertyOf(aProperty, bProperty));
 }
 /// <summary>
 /// Checks if the given aProperty can be set equivalentPropertyOf the given bProperty
 /// </summary>
 internal static bool CheckEquivalentPropertyCompatibility(RDFOntologyPropertyModel propertyModel, RDFOntologyDatatypeProperty aProperty, RDFOntologyDatatypeProperty bProperty)
 => !propertyModel.CheckIsSubPropertyOf(aProperty, bProperty) &&
 !propertyModel.CheckIsSuperPropertyOf(aProperty, bProperty) &&
 !propertyModel.CheckIsPropertyDisjointWith(aProperty, bProperty);
 /// <summary>
 /// Checks if the given aProperty can be set inverseOf the given bProperty
 /// </summary>
 internal static bool CheckInverseOfPropertyCompatibility(RDFOntologyPropertyModel propertyModel, RDFOntologyObjectProperty aProperty, RDFOntologyObjectProperty bProperty)
 => !propertyModel.CheckIsSubPropertyOf(aProperty, bProperty) &&
 !propertyModel.CheckIsSuperPropertyOf(aProperty, bProperty) &&
 !propertyModel.CheckIsEquivalentPropertyOf(aProperty, bProperty);