Keys

struct CowlHasKeyAxiom : public CowlAxiom

Represents a HasKey axiom in the OWL 2 specification.

Public Static Functions

static inline CowlHasKeyAxiom *cowl_has_key_axiom(CowlAnyClsExp *cls_exp, CowlVector *obj_props, CowlVector *data_props, CowlVector *annot)

Returns a retained ‘has key’ axiom.

Parameters
  • cls_exp – The class expression, instances of which this axiom acts as the key for.

  • obj_props – Object property expressions that make up the key.

  • data_props – Data property expressions that make up the key.

  • annot – [optional] The annotations.

Returns

Retained axiom, or NULL on error.

static inline CowlHasKeyAxiom *cowl_has_key_axiom_retain(CowlHasKeyAxiom *axiom)

Retains the specified axiom.

Parameters

axiom – The axiom.

Returns

Retained axiom.

static inline void cowl_has_key_axiom_release(CowlHasKeyAxiom *axiom)

Releases the specified axiom.

Parameters

axiom – The axiom.

static inline CowlClsExp *cowl_has_key_axiom_get_cls_exp(CowlHasKeyAxiom *axiom)

Gets the class expression, instances of which this axiom acts as the key for.

Parameters

axiom – The axiom.

Returns

The class expression.

static inline CowlVector *cowl_has_key_axiom_get_obj_props(CowlHasKeyAxiom *axiom)

Gets the set of object property expressions that make up the key.

Parameters

axiom – The axiom.

Returns

The object property expressions.

static inline CowlVector *cowl_has_key_axiom_get_data_props(CowlHasKeyAxiom *axiom)

Gets the set of data property expressions that make up the key.

Parameters

axiom – The axiom.

Returns

The data property expressions.

static inline CowlVector *cowl_has_key_axiom_get_annot(CowlHasKeyAxiom *axiom)

Gets the annotations of the specified axiom.

Parameters

axiom – The axiom.

Returns

The annotations.

static inline CowlString *cowl_has_key_axiom_to_string(CowlHasKeyAxiom *axiom)

Returns the string representation of the specified axiom.

Note

The returned string is retained, so you are responsible for releasing it.

Parameters

axiom – The axiom.

Returns

String representation, or NULL on error.

static inline bool cowl_has_key_axiom_equals(CowlHasKeyAxiom *lhs, CowlHasKeyAxiom *rhs)

Equality function.

Parameters
  • lhs – LHS of the equality relation.

  • rhs – RHS of the equality relation.

Returns

True if the equality relation holds, false otherwise.

static inline ulib_uint cowl_has_key_axiom_hash(CowlHasKeyAxiom *axiom)

Hash function.

Parameters

axiom – The axiom.

Returns

The hash value.

static inline bool cowl_has_key_axiom_iterate_primitives(CowlHasKeyAxiom *axiom, CowlPrimitiveFlags flags, CowlIterator *iter)

Iterates over the primitives referenced by the specified axiom.

Parameters
  • axiom – The axiom.

  • flags – Iteration flags.

  • iter – The iterator.

Returns

True if the iteration was completed, false if it was stopped.