Objects
-
struct CowlObject
The root pseudo-class.
-
CowlAny *cowl_retain(CowlAny *object)
Retains the specified object.
Note
You must release the returned object via
cowl_release()
.- Parameters:
object – The object.
- Returns:
Retained object.
-
CowlObjectType cowl_get_type(CowlAny *object)
Gets the type of the specified object.
- Parameters:
object – The object.
- Returns:
The type.
-
bool cowl_is_primitive(CowlAny *object)
Checks whether the specified object is a primitive.
- Parameters:
object – The object
- Returns:
True if the object is a primitive, false otherwise.
-
bool cowl_is_entity(CowlAny *object)
Checks whether the specified object is an entity.
- Parameters:
object – The object
- Returns:
True if the object is an entity, false otherwise.
-
bool cowl_is_axiom(CowlAny *object)
Checks whether the specified object is an axiom.
- Parameters:
object – The object
- Returns:
True if the object is an axiom, false otherwise.
-
bool cowl_is_cls_exp(CowlAny *object)
Checks whether the specified object is a class expression.
- Parameters:
object – The object
- Returns:
True if the object is a class expression, false otherwise.
-
bool cowl_is_obj_prop_exp(CowlAny *object)
Checks whether the specified object is an object property expression.
- Parameters:
object – The object
- Returns:
True if the object is an object property expression, false otherwise.
-
bool cowl_is_data_prop_exp(CowlAny *object)
Checks whether the specified object is a data property expression.
- Parameters:
object – The object
- Returns:
True if the object is a data property expression, false otherwise.
-
bool cowl_is_individual(CowlAny *object)
Checks whether the specified object is an individual.
- Parameters:
object – The object
- Returns:
True if the object is an individual, false otherwise.
-
bool cowl_is_data_range(CowlAny *object)
Checks whether the specified object is a data range.
- Parameters:
object – The object
- Returns:
True if the object is a data range, false otherwise.
-
CowlIRI *cowl_get_iri(CowlAny *object)
Returns the IRI of the object, if it is identified by one.
- Parameters:
object – The object.
- Returns:
IRI or NULL.
-
bool cowl_has_iri(CowlAny *object, CowlIRI *iri)
Checks if the object has the specified IRI.
- Parameters:
object – The object.
iri – The IRI.
- Returns:
True if the object has the specified IRI, false otherwise.
-
bool cowl_has_iri_string(CowlAny *object, UString iri_str)
Checks if the object has an IRI that matches the specified string.
- Parameters:
object – The object.
iri_str – IRI string.
- Returns:
True if the object has an IRI that matches the string, false otherwise.
-
CowlString *cowl_get_ns(CowlAny *object)
Returns the namespace of the object’s IRI.
- Parameters:
object – The object.
- Returns:
IRI namespace or NULL.
-
CowlString *cowl_get_rem(CowlAny *object)
Returns the remainder of the object’s IRI.
- Parameters:
object – The object.
- Returns:
IRI remainder or NULL.
-
CowlVector *cowl_get_annot(CowlAny *object)
Returns the object’s annotations.
- Parameters:
object – The object.
- Returns:
The annotations, or NULL if the object has no annotations.
-
CowlString *cowl_to_string(CowlAny *object)
Returns the string representation of the specified object.
Note
You must release the returned object via
cowl_release()
.- Parameters:
object – The object.
- Returns:
String representation, or NULL on error.
-
UString cowl_to_ustring(CowlAny *object)
Returns the string representation of the specified object.
Note
The returned object must be destroyed by calling
ustring_deinit()
.- Parameters:
object – The object.
- Returns:
String representation, or
ustring_null
on error.
-
CowlString *cowl_to_debug_string(CowlAny *object)
Returns a debug string representation of the specified object.
The debug string includes internal details such as the object’s address, type and reference count.
Note
You must release the returned object via
cowl_release()
.- Parameters:
object – The object.
- Returns:
String representation, or NULL on error.
-
UString cowl_to_debug_ustring(CowlAny *object)
Returns a debug string representation of the specified object.
The debug string includes internal details such as the object’s address, type and reference count.
Note
The returned object must be destroyed by calling
ustring_deinit()
.- Parameters:
object – The object.
- Returns:
String representation, or
ustring_null
on error.
-
bool cowl_equals(CowlAny *lhs, CowlAny *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.
-
bool cowl_is_reserved(CowlAny *object)
Checks whether the object is reserved, i.e.
if its IRI is in the reserved vocabulary.
- Parameters:
object – The object.
- Returns:
True if the object is reserved, false otherwise.
-
ulib_uint cowl_hash(CowlAny *object)
Hash function.
- Parameters:
object – The object.
- Returns:
The hash value.
-
bool cowl_has_primitive(CowlAny *object, CowlAnyPrimitive *primitive)
Checks whether the object references the specified primitive.
- Parameters:
object – The object.
primitive – The primitive.
- Returns:
True if the object references the primitive, false otherwise.
-
bool cowl_iterate_primitives(CowlAny *object, CowlPrimitiveFlags flags, CowlIterator *iter)
Iterates over the primitives referenced by the specified object.
- Parameters:
object – The object.
flags – Iteration flags.
iter – The iterator.
- Returns:
True if the iteration was completed, false if it was stopped.
-
void cowl_release_all(...)
Releases the specified objects.
- Parameters:
... – The objects.
Object types
-
enum CowlObjectType
Represents the type of
CowlObject
.Values:
-
enumerator COWL_OT_STRING
CowlString
- String.
-
enumerator COWL_OT_VECTOR
CowlVector
- Vector.
-
enumerator COWL_OT_LITERAL
CowlLiteral
- Literal.
-
enumerator COWL_OT_FACET_RESTR
CowlFacetRestr
- Facet restriction.
-
enumerator COWL_OT_ONTOLOGY
CowlOntology
- Ontology.
-
enumerator COWL_OT_MANAGER
CowlManager
- Ontology manager.
-
enumerator COWL_OT_SYM_TABLE
CowlSymTable
- Symbol table.
-
enumerator COWL_OT_ISTREAM
CowlIStream
- Ontology input stream.
-
enumerator COWL_OT_OSTREAM
CowlOStream
- Ontology output stream.
-
enumerator COWL_OT_ANNOTATION
CowlAnnotation
- Annotation.
-
enumerator COWL_OT_ANNOT_PROP
CowlAnnotProp
- Annotation property.
-
enumerator COWL_OT_A_DECL
CowlDeclAxiom
- Declaration.
-
enumerator COWL_OT_A_DATATYPE_DEF
CowlDatatypeDefAxiom
- Datatype definition.
-
enumerator COWL_OT_A_SUB_CLASS
CowlSubClsAxiom
- Subclass.
-
enumerator COWL_OT_A_EQUIV_CLASSES
CowlNAryClsAxiom
- Equivalent classes.
-
enumerator COWL_OT_A_DISJ_CLASSES
CowlNAryClsAxiom
- Disjoint classes.
-
enumerator COWL_OT_A_DISJ_UNION
CowlDisjUnionAxiom
- Disjoint union.
-
enumerator COWL_OT_A_CLASS_ASSERT
CowlClsAssertAxiom
- Class assertion.
-
enumerator COWL_OT_A_SAME_IND
CowlNAryIndAxiom
- Same individual.
-
enumerator COWL_OT_A_DIFF_IND
CowlNAryIndAxiom
- Different individuals.
-
enumerator COWL_OT_A_OBJ_PROP_ASSERT
CowlObjPropAssertAxiom
- Object property assertion.
-
enumerator COWL_OT_A_NEG_OBJ_PROP_ASSERT
CowlObjPropAssertAxiom
- Negative object property assertion.
-
enumerator COWL_OT_A_DATA_PROP_ASSERT
CowlDataPropAssertAxiom
- Data property assertion.
-
enumerator COWL_OT_A_NEG_DATA_PROP_ASSERT
CowlDataPropAssertAxiom
- Negative data property assertion.
-
enumerator COWL_OT_A_SUB_OBJ_PROP
CowlSubObjPropAxiom
- Object subproperty.
-
enumerator COWL_OT_A_INV_OBJ_PROP
CowlInvObjPropAxiom
- Inverse object properties.
-
enumerator COWL_OT_A_EQUIV_OBJ_PROP
CowlNAryObjPropAxiom
- Equivalent object properties.
-
enumerator COWL_OT_A_DISJ_OBJ_PROP
CowlNAryObjPropAxiom
- Disjoint object properties.
-
enumerator COWL_OT_A_FUNC_OBJ_PROP
CowlObjPropCharAxiom
- Functional object property.
-
enumerator COWL_OT_A_INV_FUNC_OBJ_PROP
CowlObjPropCharAxiom
- Inverse functional object property.
-
enumerator COWL_OT_A_SYMM_OBJ_PROP
CowlObjPropCharAxiom
- Symmetric object property.
-
enumerator COWL_OT_A_ASYMM_OBJ_PROP
CowlObjPropCharAxiom
- Asymmetric object property.
-
enumerator COWL_OT_A_TRANS_OBJ_PROP
CowlObjPropCharAxiom
- Transitive object property.
-
enumerator COWL_OT_A_REFL_OBJ_PROP
CowlObjPropCharAxiom
- Reflexive object property.
-
enumerator COWL_OT_A_IRREFL_OBJ_PROP
CowlObjPropCharAxiom
- Irreflexive object property.
-
enumerator COWL_OT_A_OBJ_PROP_DOMAIN
CowlObjPropCharAxiom
- Object property domain.
-
enumerator COWL_OT_A_OBJ_PROP_RANGE
CowlObjPropCharAxiom
- Object property range.
-
enumerator COWL_OT_A_SUB_DATA_PROP
CowlSubDataPropAxiom
- Data subproperty.
-
enumerator COWL_OT_A_EQUIV_DATA_PROP
CowlNAryDataPropAxiom
- Equivalent data properties.
-
enumerator COWL_OT_A_DISJ_DATA_PROP
CowlNAryDataPropAxiom
- Disjoint data properties.
-
enumerator COWL_OT_A_FUNC_DATA_PROP
CowlFuncDataPropAxiom
- Functional data property.
-
enumerator COWL_OT_A_DATA_PROP_DOMAIN
CowlDataPropDomainAxiom
- Data property domain.
-
enumerator COWL_OT_A_DATA_PROP_RANGE
CowlDataPropRangeAxiom
- Data property range.
-
enumerator COWL_OT_A_HAS_KEY
CowlHasKeyAxiom
- Has key.
-
enumerator COWL_OT_A_ANNOT_ASSERT
CowlAnnotAssertAxiom
- Annotation assertion.
-
enumerator COWL_OT_A_SUB_ANNOT_PROP
CowlSubAnnotPropAxiom
- Annotation subproperty.
-
enumerator COWL_OT_A_ANNOT_PROP_DOMAIN
CowlAnnotPropDomainAxiom
- Annotation property domain.
-
enumerator COWL_OT_A_ANNOT_PROP_RANGE
CowlAnnotPropRangeAxiom
- Annotation property range.
-
enumerator COWL_OT_CE_OBJ_SOME
CowlObjQuant
- “some values from” object property restriction.
-
enumerator COWL_OT_CE_OBJ_ALL
CowlObjQuant
- “all values from” object property restriction.
-
enumerator COWL_OT_CE_OBJ_MIN_CARD
CowlObjCard
- “minimum cardinality” object property restriction.
-
enumerator COWL_OT_CE_OBJ_MAX_CARD
CowlObjCard
- “maximum cardinality” object property restriction.
-
enumerator COWL_OT_CE_OBJ_EXACT_CARD
CowlObjCard
- “exact cardinality” object property restriction.
-
enumerator COWL_OT_CE_OBJ_HAS_VALUE
CowlObjHasValue
- “has value” object property restriction.
-
enumerator COWL_OT_CE_OBJ_HAS_SELF
CowlObjHasSelf
- “has self” object property restriction.
-
enumerator COWL_OT_CE_DATA_SOME
CowlDataQuant
- “some values from” data property restriction.
-
enumerator COWL_OT_CE_DATA_ALL
CowlDataQuant
- “all values from” data property restriction.
-
enumerator COWL_OT_CE_DATA_MIN_CARD
CowlDataCard
- “min cardinality” data property restriction.
-
enumerator COWL_OT_CE_DATA_MAX_CARD
CowlDataCard
- “max cardinality” data property restriction.
-
enumerator COWL_OT_CE_DATA_EXACT_CARD
CowlDataCard
- “exact cardinality” data property restriction.
-
enumerator COWL_OT_CE_DATA_HAS_VALUE
CowlDataHasValue
- “has value” data property restriction.
-
enumerator COWL_OT_CE_OBJ_INTERSECT
CowlNAryBool
- Intersection of class expressions.
-
enumerator COWL_OT_CE_OBJ_UNION
CowlNAryBool
- Union of class expressions.
-
enumerator COWL_OT_CE_OBJ_COMPL
CowlObjCompl
- Complement of a class expression.
-
enumerator COWL_OT_CE_OBJ_ONE_OF
CowlObjOneOf
- Enumeration of individuals.
-
enumerator COWL_OT_DPE_DATA_PROP
CowlDataProp
- Data property.
-
enumerator COWL_OT_DR_DATATYPE
CowlDatatype
- Datatype.
-
enumerator COWL_OT_DR_DATATYPE_RESTR
CowlDatatypeRestr
- Datatype restriction.
-
enumerator COWL_OT_DR_DATA_INTERSECT
CowlNAryData
- Intersection of data ranges.
-
enumerator COWL_OT_DR_DATA_UNION
CowlNAryData
- Union of data ranges.
-
enumerator COWL_OT_DR_DATA_COMPL
CowlDataCompl
- Complement of data ranges.
-
enumerator COWL_OT_DR_DATA_ONE_OF
CowlDataOneOf
- Enumeration of literals.
-
enumerator COWL_OT_I_ANONYMOUS
CowlAnonInd
- Anonymous individual.
-
enumerator COWL_OT_I_NAMED
CowlNamedInd
- Named individual.
-
enumerator COWL_OT_OPE_OBJ_PROP
CowlObjProp
- Object property.
-
enumerator COWL_OT_OPE_INV_OBJ_PROP
CowlInvObjProp
- Inverse object property.
-
enumerator COWL_OT_COUNT
Number of enum values.
-
enumerator COWL_OT_FIRST
First enum value.
-
enumerator COWL_OT_FIRST_A
First axiom type.
-
enumerator COWL_OT_LAST_A
Last axiom type.
-
enumerator COWL_OT_FIRST_CE
First class expression type.
-
enumerator COWL_OT_LAST_CE
Last class expression type.
-
enumerator COWL_OT_FIRST_OPE
First object property expression type.
-
enumerator COWL_OT_LAST_OPE
Last object property expression type.
-
enumerator COWL_OT_FIRST_I
First individual type.
-
enumerator COWL_OT_LAST_I
Last individual type.
-
enumerator COWL_OT_FIRST_DR
First data range type.
-
enumerator COWL_OT_LAST_DR
Last data range type.
-
enumerator COWL_OT_STRING
-
UString cowl_object_type_to_ustring(CowlObjectType type)
Returns a human-readable string representation of the specified object type.
Note
You must not modify or free the returned string.
- Parameters:
type – Object type.
- Returns:
String representation, or NULL on error.
-
CowlString *cowl_object_type_to_string(CowlObjectType type)
Returns a human-readable string representation of the specified object type.
Note
You must release the returned object via
cowl_release()
.- Parameters:
type – Object type.
- Returns:
String representation, or NULL on error.
-
CowlObjectType cowl_object_type_from_string(UString string)
Returns the object type given its string representation.
- Parameters:
string – String representation.
- Returns:
Object type, or an invalid object type (>=
COWL_OT_COUNT
) on error.
Placeholder types
These types are used throughout the API anywhere any pseudo-subclass of the specified type is accepted. Note that they are just a hint to the programmer, as they are not enforced at runtime. Passing incompatible objects is undefined behavior.
-
typedef void CowlAny
Placeholder for any
CowlObject
.
-
typedef void CowlAnyAnnotValue
Placeholder for any
CowlAnnotValue
.
-
typedef void CowlAnyClsExp
Placeholder for any
CowlClsExp
.
-
typedef void CowlAnyDataPropExp
Placeholder for any
CowlDataPropExp
.
-
typedef void CowlAnyDataRange
Placeholder for any
CowlDataRange
.
-
typedef void CowlAnyEntity
Placeholder for any
CowlEntity
.
-
typedef void CowlAnyIndividual
Placeholder for any
CowlIndividual
.
-
typedef void CowlAnyPrimitive
Placeholder for any
CowlPrimitive
.
-
typedef void CowlAnyObjPropExp
Placeholder for any
CowlObjPropExp
.