com.hp.hpl.jena.ontology
Interface OntProperty

All Superinterfaces:
FrontsNode, OntResource, Property, RDFNode, Resource
All Known Subinterfaces:
AnnotationProperty, DatatypeProperty, FunctionalProperty, InverseFunctionalProperty, ObjectProperty, SymmetricProperty, TransitiveProperty

public interface OntProperty
extends OntResource, Property

Interface encapsulating a property in an ontology. This is an extension to the standard Property interface, adding a collection of convenience methods for accessing the additional semantic features of properties in OWL, RDFS and DAML+OIL, such as domain, range, inverse, etc. Not all such capabilities exist in all supported ontology languages.

Version:
CVS $Id: OntProperty.java,v 1.3 2009-10-06 13:04:34 ian_dickinson Exp $
Author:
Ian Dickinson, HP Labs (email)

Method Summary
 void addDomain(Resource res)
          Add a resource representing the domain of this property.
 void addEquivalentProperty(Property prop)
          Add a property that is equivalent to this property.
 void addInverseOf(Property prop)
          Add a property that this property is the inverse of.
 void addRange(Resource res)
          Add a resource representing the range of this property.
 void addSubProperty(Property prop)
          Add a sub-property of this property.
 void addSuperProperty(Property prop)
          Add a super-property of this property.
 DatatypeProperty asDatatypeProperty()
          Answer a view of this property as a datatype property
 FunctionalProperty asFunctionalProperty()
          Answer a view of this property as a functional property
 InverseFunctionalProperty asInverseFunctionalProperty()
          Answer a view of this property as an inverse functional property
 ObjectProperty asObjectProperty()
          Answer a view of this property as an object property
 SymmetricProperty asSymmetricProperty()
          Answer a view of this property as a symmetric property
 TransitiveProperty asTransitiveProperty()
          Answer a view of this property as a transitive property
 DatatypeProperty convertToDatatypeProperty()
          Answer a facet of this property as a datatype property, adding additional information to the model if necessary.
 FunctionalProperty convertToFunctionalProperty()
          Answer a facet of this property as a functional property, adding additional information to the model if necessary.
 InverseFunctionalProperty convertToInverseFunctionalProperty()
          Answer a facet of this property as an inverse functional property, adding additional information to the model if necessary.
 ObjectProperty convertToObjectProperty()
          Answer a facet of this property as an object property, adding additional information to the model if necessary.
 SymmetricProperty convertToSymmetricProperty()
          Answer a facet of this property as a symmetric property, adding additional information to the model if necessary.
 TransitiveProperty convertToTransitiveProperty()
          Answer a facet of this property as a transitive property, adding additional information to the model if necessary.
 OntResource getDomain()
          Answer a resource that represents the domain class of this property.
 OntProperty getEquivalentProperty()
          Answer a property that is equivalent to this property.
 OntProperty getInverse()
          Answer the property that has declared itself to be the inverse of this property, if any such property is defined.
 OntProperty getInverseOf()
          Answer a property of which this property is the inverse, if known, or null if there is no such property.
 OntResource getRange()
          Answer a resource that represents the range class of this property.
 OntProperty getSubProperty()
          Answer a property that is the sub-property of this property.
 OntProperty getSuperProperty()
          Answer a property that is the super-property of this property.
 boolean hasDomain(Resource res)
          Answer true if the given resource a class specifying the domain of this property.
 boolean hasEquivalentProperty(Property prop)
          Answer true if the given property is equivalent to this property.
 boolean hasInverse()
          Answer true if there is at least one inverse property for this property.
 boolean hasRange(Resource res)
          Answer true if the given resource a class specifying the range of this property.
 boolean hasSubProperty(Property prop, boolean direct)
          Answer true if the given property is a sub-property of this property.
 boolean hasSuperProperty(Property prop, boolean direct)
          Answer true if the given property is a super-property of this property.
 boolean isDatatypeProperty()
          Answer true if this property is a datatype property
 boolean isFunctionalProperty()
          Answer true if this property is a functional property
 boolean isInverseFunctionalProperty()
          Answer true if this property is an inverse functional property
 boolean isInverseOf(Property prop)
          Answer true if this property is the inverse of the given property.
 boolean isObjectProperty()
          Answer true if this property is an object property
 boolean isSymmetricProperty()
          Answer true if this property is a symmetric property
 boolean isTransitiveProperty()
          Answer true if this property is a transitive property
 com.hp.hpl.jena.util.iterator.ExtendedIterator<? extends OntClass> listDeclaringClasses()
          Answer an iterator of all of the classes in this ontology, such that each returned class has this property as one of its properties in OntClass.listDeclaredProperties().
 com.hp.hpl.jena.util.iterator.ExtendedIterator<? extends OntClass> listDeclaringClasses(boolean direct)
          Answer an iterator of all of the classes in this ontology, such that each returned class has this property as one of its properties in OntClass.listDeclaredProperties(boolean).
 com.hp.hpl.jena.util.iterator.ExtendedIterator<? extends OntResource> listDomain()
          Answer an iterator over all of the declared domain classes of this property.
 com.hp.hpl.jena.util.iterator.ExtendedIterator<? extends OntProperty> listEquivalentProperties()
          Answer an iterator over all of the properties that are declared to be equivalent properties to this property.
 com.hp.hpl.jena.util.iterator.ExtendedIterator<? extends OntProperty> listInverse()
          Answer an iterator over the properties that are defined to be inverses of this property.
 com.hp.hpl.jena.util.iterator.ExtendedIterator<? extends OntProperty> listInverseOf()
          Answer an iterator over all of the properties that this property is declared to be the inverse of.
 com.hp.hpl.jena.util.iterator.ExtendedIterator<? extends OntResource> listRange()
          Answer an iterator over all of the declared range classes of this property.
 com.hp.hpl.jena.util.iterator.ExtendedIterator<Restriction> listReferringRestrictions()
          Answer an iterator over any restrictions that mention this property as the property that the restriction is adding some constraint to.
 com.hp.hpl.jena.util.iterator.ExtendedIterator<? extends OntProperty> listSubProperties()
          Answer an iterator over all of the properties that are declared to be sub-properties of this property.
 com.hp.hpl.jena.util.iterator.ExtendedIterator<? extends OntProperty> listSubProperties(boolean direct)
          Answer an iterator over all of the properties that are declared to be sub-properties of this property.
 com.hp.hpl.jena.util.iterator.ExtendedIterator<? extends OntProperty> listSuperProperties()
          Answer an iterator over all of the properties that are declared to be super-properties of this property.
 com.hp.hpl.jena.util.iterator.ExtendedIterator<? extends OntProperty> listSuperProperties(boolean direct)
          Answer an iterator over all of the properties that are declared to be super-properties of this property.
 void removeDomain(Resource cls)
          Remove the given class from the stated domain(s) of this property.
 void removeEquivalentProperty(Property prop)
          Remove the statement that this property and the given property are equivalent.
 void removeInverseProperty(Property prop)
          Remove the statement that this property is the inverse of the given property.
 void removeRange(Resource cls)
          Remove the given class from the stated range(s) of this property.
 void removeSubProperty(Property prop)
          Remove the given property from the sub-properties of this property.
 void removeSuperProperty(Property prop)
          Remove the given property from the super-properties of this property.
 void setDomain(Resource res)
          Assert that the given resource represents the class of individuals that form the domain of this property.
 void setEquivalentProperty(Property prop)
          Assert that the given property is equivalent to this property.
 void setInverseOf(Property prop)
          Assert that this property is the inverse of the given property.
 void setRange(Resource res)
          Assert that the given resource represents the class of individuals that form the range of this property.
 void setSubProperty(Property prop)
          Assert that this property is super-property of the given property.
 void setSuperProperty(Property prop)
          Assert that this property is sub-property of the given property.
 
Methods inherited from interface com.hp.hpl.jena.ontology.OntResource
addComment, addComment, addDifferentFrom, addIsDefinedBy, addLabel, addLabel, addRDFType, addSameAs, addSeeAlso, addVersionInfo, asAllDifferent, asAnnotationProperty, asClass, asDataRange, asIndividual, asOntology, asProperty, getCardinality, getComment, getDifferentFrom, getIsDefinedBy, getLabel, getOntModel, getProfile, getPropertyValue, getRDFType, getRDFType, getSameAs, getSeeAlso, getVersionInfo, hasComment, hasComment, hasLabel, hasLabel, hasRDFType, hasRDFType, hasRDFType, hasSeeAlso, hasVersionInfo, isAllDifferent, isAnnotationProperty, isClass, isDataRange, isDefinedBy, isDifferentFrom, isIndividual, isOntLanguageTerm, isOntology, isProperty, isSameAs, listComments, listDifferentFrom, listIsDefinedBy, listLabels, listPropertyValues, listRDFTypes, listSameAs, listSeeAlso, listVersionInfo, remove, removeComment, removeComment, removeDefinedBy, removeDifferentFrom, removeLabel, removeLabel, removeProperty, removeRDFType, removeSameAs, removeSeeAlso, removeVersionInfo, setComment, setDifferentFrom, setIsDefinedBy, setLabel, setPropertyValue, setRDFType, setSameAs, setSeeAlso, setVersionInfo
 
Methods inherited from interface com.hp.hpl.jena.rdf.model.Property
getLocalName, getNameSpace, getOrdinal, inModel, isProperty
 
Methods inherited from interface com.hp.hpl.jena.rdf.model.Resource
abort, addLiteral, addLiteral, addLiteral, addLiteral, addLiteral, addLiteral, addLiteral, addProperty, addProperty, addProperty, addProperty, begin, commit, equals, getId, getProperty, getPropertyResourceValue, getRequiredProperty, getURI, hasLiteral, hasLiteral, hasLiteral, hasLiteral, hasLiteral, hasLiteral, hasProperty, hasProperty, hasProperty, hasProperty, hasURI, listProperties, listProperties, removeAll, removeProperties, toString
 
Methods inherited from interface com.hp.hpl.jena.rdf.model.RDFNode
as, asLiteral, asResource, canAs, getModel, isAnon, isLiteral, isResource, isURIResource, visitWith
 
Methods inherited from interface com.hp.hpl.jena.graph.FrontsNode
asNode
 

Method Detail

setSuperProperty

void setSuperProperty(Property prop)

Assert that this property is sub-property of the given property. Any existing statements for subPropertyOf will be removed.

Parameters:
prop - The property that this property is a sub-property of
Throws:
OntProfileException - If the Profile.SUB_PROPERTY_OF() property is not supported in the current language profile.

addSuperProperty

void addSuperProperty(Property prop)

Add a super-property of this property.

Parameters:
prop - A property that is a super-property of this property.
Throws:
OntProfileException - If the Profile.SUB_PROPERTY_OF() property is not supported in the current language profile.

getSuperProperty

OntProperty getSuperProperty()

Answer a property that is the super-property of this property. If there is more than one such property, an arbitrary selection is made.

Returns:
A super-property of this property
Throws:
OntProfileException - If the Profile.SUB_PROPERTY_OF() property is not supported in the current language profile.

listSuperProperties

com.hp.hpl.jena.util.iterator.ExtendedIterator<? extends OntProperty> listSuperProperties()

Answer an iterator over all of the properties that are declared to be super-properties of this property. Each element of the iterator will be an OntProperty.

Returns:
An iterator over the super-properties of this property.
Throws:
OntProfileException - If the Profile.SUB_PROPERTY_OF() property is not supported in the current language profile.

listSuperProperties

com.hp.hpl.jena.util.iterator.ExtendedIterator<? extends OntProperty> listSuperProperties(boolean direct)

Answer an iterator over all of the properties that are declared to be super-properties of this property. Each element of the iterator will be an OntProperty.

Parameters:
direct - If true, only answer the directly adjacent properties in the property hierarchy: i.e. eliminate any property for which there is a longer route to reach that child under the super-property relation.
Returns:
An iterator over the super-properties of this property.
Throws:
OntProfileException - If the Profile.SUB_PROPERTY_OF() property is not supported in the current language profile.

hasSuperProperty

boolean hasSuperProperty(Property prop,
                         boolean direct)

Answer true if the given property is a super-property of this property.

Parameters:
prop - A property to test.
direct - If true, only consider the directly adjacent properties in the property hierarchy
Returns:
True if the given property is a super-property of this property.
Throws:
OntProfileException - If the Profile.SUB_PROPERTY_OF() property is not supported in the current language profile.

removeSuperProperty

void removeSuperProperty(Property prop)

Remove the given property from the super-properties of this property. If this statement is not true of the current model, nothing happens.

Parameters:
prop - A property to be removed from the super-properties of this property
Throws:
OntProfileException - If the Profile.SUB_PROPERTY_OF() property is not supported in the current language profile.

setSubProperty

void setSubProperty(Property prop)

Assert that this property is super-property of the given property. Any existing statements for subPropertyOf on prop will be removed.

Parameters:
prop - The property that is a sub-property of this property
Throws:
OntProfileException - If the Profile.SUB_PROPERTY_OF() property is not supported in the current language profile.

addSubProperty

void addSubProperty(Property prop)

Add a sub-property of this property.

Parameters:
prop - A property that is a sub-property of this property.
Throws:
OntProfileException - If the Profile.SUB_PROPERTY_OF() property is not supported in the current language profile.

getSubProperty

OntProperty getSubProperty()

Answer a property that is the sub-property of this property. If there is more than one such property, an arbitrary selection is made.

Returns:
A sub-property of this property
Throws:
OntProfileException - If the Profile.SUB_PROPERTY_OF() property is not supported in the current language profile.

listSubProperties

com.hp.hpl.jena.util.iterator.ExtendedIterator<? extends OntProperty> listSubProperties()

Answer an iterator over all of the properties that are declared to be sub-properties of this property. Each element of the iterator will be an OntProperty.

Returns:
An iterator over the sub-properties of this property.
Throws:
OntProfileException - If the Profile.SUB_PROPERTY_OF() property is not supported in the current language profile.

listSubProperties

com.hp.hpl.jena.util.iterator.ExtendedIterator<? extends OntProperty> listSubProperties(boolean direct)

Answer an iterator over all of the properties that are declared to be sub-properties of this property. Each element of the iterator will be an OntProperty.

Parameters:
direct - If true, only answer the directly adjacent properties in the property hierarchy: i.e. eliminate any property for which there is a longer route to reach that child under the sub-property relation.
Returns:
An iterator over the sub-properties of this property.
Throws:
OntProfileException - If the Profile.SUB_PROPERTY_OF() property is not supported in the current language profile.

hasSubProperty

boolean hasSubProperty(Property prop,
                       boolean direct)

Answer true if the given property is a sub-property of this property.

Parameters:
prop - A property to test.
direct - If true, only consider the directly adjacent properties in the property hierarchy
Returns:
True if the given property is a sub-property of this property.
Throws:
OntProfileException - If the Profile.SUB_PROPERTY_OF() property is not supported in the current language profile.

removeSubProperty

void removeSubProperty(Property prop)

Remove the given property from the sub-properties of this property. If this statement is not true of the current model, nothing happens.

Parameters:
prop - A property to be removed from the sub-properties of this property
Throws:
OntProfileException - If the Profile.SUB_PROPERTY_OF() property is not supported in the current language profile.

setDomain

void setDomain(Resource res)

Assert that the given resource represents the class of individuals that form the domain of this property. Any existing domain statements for this property are removed.

Parameters:
res - The resource that represents the domain class for this property.
Throws:
OntProfileException - If the Profile.DOMAIN() property is not supported in the current language profile.

addDomain

void addDomain(Resource res)

Add a resource representing the domain of this property.

Parameters:
res - A resource that represents a domain class for this property.
Throws:
OntProfileException - If the Profile.DOMAIN() property is not supported in the current language profile.

getDomain

OntResource getDomain()

Answer a resource that represents the domain class of this property. If there is more than one such resource, an arbitrary selection is made.

Returns:
An resource representing the class that forms the domain of this property
Throws:
OntProfileException - If the Profile.DOMAIN() property is not supported in the current language profile.

listDomain

com.hp.hpl.jena.util.iterator.ExtendedIterator<? extends OntResource> listDomain()

Answer an iterator over all of the declared domain classes of this property. Each element of the iterator will be an OntResource.

Returns:
An iterator over the classes that form the domain of this property.
Throws:
OntProfileException - If the Profile.DOMAIN() property is not supported in the current language profile.

hasDomain

boolean hasDomain(Resource res)

Answer true if the given resource a class specifying the domain of this property.

Parameters:
res - A resource representing a class
Returns:
True if the given resource is one of the domain classes of this property.
Throws:
OntProfileException - If the Profile.DOMAIN() property is not supported in the current language profile.

removeDomain

void removeDomain(Resource cls)

Remove the given class from the stated domain(s) of this property. If this statement is not true of the current model, nothing happens.

Parameters:
cls - A class to be removed from the declared domain(s) of this property
Throws:
OntProfileException - If the Profile.DOMAIN() property is not supported in the current language profile.

setRange

void setRange(Resource res)

Assert that the given resource represents the class of individuals that form the range of this property. Any existing range statements for this property are first removed. Therefore, if the property is known not to have a range declaration, it is more efficient to use addRange(com.hp.hpl.jena.rdf.model.Resource) since no removal step is necessary. See addRange(com.hp.hpl.jena.rdf.model.Resource) for additional usage notes on the value of res.

Parameters:
res - The resource that represents the range class for this property.
Throws:
OntProfileException - If the Profile.RANGE() property is not supported in the current language profile.

addRange

void addRange(Resource res)

Add a resource representing the range of this property. The resource denotes the class or datatype that objects of statements using this property as predicate should belong to. For datatype properties, XML Schema Datatype names are pre-declared as resources in the XSD vocabulary class. For object properties, the resource should be represent the range class. Note that OntClass is a Java sub-class of Resource, so OntClass objects can be passed directly.

Parameters:
res - A resource that represents a range class for this property.
Throws:
OntProfileException - If the Profile.RANGE() property is not supported in the current language profile.

getRange

OntResource getRange()

Answer a resource that represents the range class of this property. If there is more than one such resource, an arbitrary selection is made.

Returns:
An resource representing the class that forms the range of this property
Throws:
OntProfileException - If the Profile.RANGE() property is not supported in the current language profile.

listRange

com.hp.hpl.jena.util.iterator.ExtendedIterator<? extends OntResource> listRange()

Answer an iterator over all of the declared range classes of this property. Each element of the iterator will be an OntResource.

Returns:
An iterator over the classes that form the range of this property.
Throws:
OntProfileException - If the Profile.RANGE() property is not supported in the current language profile.

hasRange

boolean hasRange(Resource res)

Answer true if the given resource a class specifying the range of this property.

Parameters:
res - A resource representing a class
Returns:
True if the given resource is one of the range classes of this property.
Throws:
OntProfileException - If the Profile.RANGE() property is not supported in the current language profile.

removeRange

void removeRange(Resource cls)

Remove the given class from the stated range(s) of this property. If this statement is not true of the current model, nothing happens.

Parameters:
cls - A class to be removed from the declared range(s) of this property
Throws:
OntProfileException - If the Profile.RANGE() property is not supported in the current language profile.

setEquivalentProperty

void setEquivalentProperty(Property prop)

Assert that the given property is equivalent to this property. Any existing statements for equivalentProperty will be removed.

Parameters:
prop - The property that this property is a equivalent to.
Throws:
OntProfileException - If the Profile.EQUIVALENT_PROPERTY() property is not supported in the current language profile.

addEquivalentProperty

void addEquivalentProperty(Property prop)

Add a property that is equivalent to this property.

Parameters:
prop - A property that is equivalent to this property.
Throws:
OntProfileException - If the Profile.EQUIVALENT_PROPERTY() property is not supported in the current language profile.

getEquivalentProperty

OntProperty getEquivalentProperty()

Answer a property that is equivalent to this property. If there is more than one such property, an arbitrary selection is made.

Returns:
A property equivalent to this property
Throws:
OntProfileException - If the Profile.EQUIVALENT_PROPERTY() property is not supported in the current language profile.

listEquivalentProperties

com.hp.hpl.jena.util.iterator.ExtendedIterator<? extends OntProperty> listEquivalentProperties()

Answer an iterator over all of the properties that are declared to be equivalent properties to this property. Each element of the iterator will be an OntProperty.

Returns:
An iterator over the properties equivalent to this property.
Throws:
OntProfileException - If the Profile.EQUIVALENT_PROPERTY() property is not supported in the current language profile.

hasEquivalentProperty

boolean hasEquivalentProperty(Property prop)

Answer true if the given property is equivalent to this property.

Parameters:
prop - A property to test for
Returns:
True if the given property is equivalent to this property.
Throws:
OntProfileException - If the Profile.EQUIVALENT_PROPERTY() property is not supported in the current language profile.

removeEquivalentProperty

void removeEquivalentProperty(Property prop)

Remove the statement that this property and the given property are equivalent. If this statement is not true of the current model, nothing happens.

Parameters:
prop - A property that may be declared to be equivalent to this property
Throws:
OntProfileException - If the Profile.EQUIVALENT_PROPERTY() property is not supported in the current language profile.

setInverseOf

void setInverseOf(Property prop)

Assert that this property is the inverse of the given property. Any existing statements for inverseOf will be removed.

Parameters:
prop - The property that this property is a inverse to.
Throws:
OntProfileException - If the Profile.INVERSE_OF() property is not supported in the current language profile.

addInverseOf

void addInverseOf(Property prop)

Add a property that this property is the inverse of.

Parameters:
prop - A property that is the inverse of this property.
Throws:
OntProfileException - If the Profile.INVERSE_OF() property is not supported in the current language profile.

getInverseOf

OntProperty getInverseOf()

Answer a property of which this property is the inverse, if known, or null if there is no such property. If there is more than one such property, an arbitrary selection is made.

Note that this method is slightly different to getInverse(). See the Javadoc on getInverse() for a detailed explanation.

Returns:
A property which this property is the inverse of, or null.
Throws:
OntProfileException - If the Profile.INVERSE_OF() property is not supported in the current language profile.

listInverseOf

com.hp.hpl.jena.util.iterator.ExtendedIterator<? extends OntProperty> listInverseOf()

Answer an iterator over all of the properties that this property is declared to be the inverse of. Each element of the iterator will be an OntProperty.

Returns:
An iterator over the properties inverse to this property.
Throws:
OntProfileException - If the Profile.INVERSE_OF() property is not supported in the current language profile.

isInverseOf

boolean isInverseOf(Property prop)

Answer true if this property is the inverse of the given property.

Parameters:
prop - A property to test for
Returns:
True if the this property is the inverse of the the given property.
Throws:
OntProfileException - If the Profile.INVERSE_OF() property is not supported in the current language profile.

removeInverseProperty

void removeInverseProperty(Property prop)

Remove the statement that this property is the inverse of the given property. If this statement is not true of the current model, nothing happens.

Parameters:
prop - A property that may be declared to be inverse to this property
Throws:
OntProfileException - If the Profile.INVERSE_OF() property is not supported in the current language profile.

asFunctionalProperty

FunctionalProperty asFunctionalProperty()

Answer a view of this property as a functional property

Returns:
This property, but viewed as a FunctionalProperty node
Throws:
ConversionException - if the resource cannot be converted to a functional property given the language profile and the current state of the underlying model.

asDatatypeProperty

DatatypeProperty asDatatypeProperty()

Answer a view of this property as a datatype property

Specified by:
asDatatypeProperty in interface OntResource
Returns:
This property, but viewed as a DatatypeProperty node
Throws:
ConversionException - if the resource cannot be converted to a datatype property given the language profile and the current state of the underlying model.

asObjectProperty

ObjectProperty asObjectProperty()

Answer a view of this property as an object property

Specified by:
asObjectProperty in interface OntResource
Returns:
This property, but viewed as an ObjectProperty node
Throws:
ConversionException - if the resource cannot be converted to an object property given the language profile and the current state of the underlying model.

asTransitiveProperty

TransitiveProperty asTransitiveProperty()

Answer a view of this property as a transitive property

Returns:
This property, but viewed as a TransitiveProperty node
Throws:
ConversionException - if the resource cannot be converted to a transitive property given the language profile and the current state of the underlying model.

asInverseFunctionalProperty

InverseFunctionalProperty asInverseFunctionalProperty()

Answer a view of this property as an inverse functional property

Returns:
This property, but viewed as an InverseFunctionalProperty node
Throws:
ConversionException - if the resource cannot be converted to an inverse functional property given the language profile and the current state of the underlying model.

asSymmetricProperty

SymmetricProperty asSymmetricProperty()

Answer a view of this property as a symmetric property

Returns:
This property, but viewed as a SymmetricProperty node
Throws:
ConversionException - if the resource cannot be converted to a symmetric property given the language profile and the current state of the underlying model.

convertToFunctionalProperty

FunctionalProperty convertToFunctionalProperty()

Answer a facet of this property as a functional property, adding additional information to the model if necessary.

Returns:
This property, but converted to a FunctionalProperty facet

convertToDatatypeProperty

DatatypeProperty convertToDatatypeProperty()

Answer a facet of this property as a datatype property, adding additional information to the model if necessary.

Returns:
This property, but converted to a DatatypeProperty facet

convertToObjectProperty

ObjectProperty convertToObjectProperty()

Answer a facet of this property as an object property, adding additional information to the model if necessary.

Returns:
This property, but converted to an ObjectProperty facet

convertToTransitiveProperty

TransitiveProperty convertToTransitiveProperty()

Answer a facet of this property as a transitive property, adding additional information to the model if necessary.

Returns:
This property, but converted to a TransitiveProperty facet

convertToInverseFunctionalProperty

InverseFunctionalProperty convertToInverseFunctionalProperty()

Answer a facet of this property as an inverse functional property, adding additional information to the model if necessary.

Returns:
This property, but converted to an InverseFunctionalProperty facet

convertToSymmetricProperty

SymmetricProperty convertToSymmetricProperty()

Answer a facet of this property as a symmetric property, adding additional information to the model if necessary.

Returns:
This property, but converted to a SymmetricProperty facet

isFunctionalProperty

boolean isFunctionalProperty()

Answer true if this property is a functional property

Returns:
True if this this property has an rdf:type that defines it as a functional property.

isDatatypeProperty

boolean isDatatypeProperty()

Answer true if this property is a datatype property

Specified by:
isDatatypeProperty in interface OntResource
Returns:
True if this this property has an rdf:type that defines it as a datatype property.

isObjectProperty

boolean isObjectProperty()

Answer true if this property is an object property

Specified by:
isObjectProperty in interface OntResource
Returns:
True if this this property has an rdf:type that defines it as an object property.

isTransitiveProperty

boolean isTransitiveProperty()

Answer true if this property is a transitive property

Returns:
True if this this property has an rdf:type that defines it as a transitive property.

isInverseFunctionalProperty

boolean isInverseFunctionalProperty()

Answer true if this property is an inverse functional property

Returns:
True if this this property has an rdf:type that defines it as an inverse functional property.

isSymmetricProperty

boolean isSymmetricProperty()

Answer true if this property is a symmetric property

Returns:
True if this this property has an rdf:type that defines it as a symmetric property.

getInverse

OntProperty getInverse()

Answer the property that has declared itself to be the inverse of this property, if any such property is defined. If no such property is defined, return null. If more than one inverse is defined, return an arbitrary selection.

Note that this method is slightly different from getInverseOf(). Suppose that we have:

 :p an owl:ObjectProperty.
 :q an owl:ObjectProperty.
 :p owl:inverseOf :q.
 

Then, getInverse() called on the OntProperty corresponding to q will return p, since q declares itself to be p's inverse. However, unless an OWL reasoner is used, calling getInverse() on p will return null. Conversely, absent a reasoner, getInverseOf() on p will return q, but will return null when called on q. In the presence of an OWL reasoner, getInverse() and getInverseOf() are equivalent, since owl:inverseOf is a symmetric property.

Returns:
The property that is the inverse of this property, or null.

listInverse

com.hp.hpl.jena.util.iterator.ExtendedIterator<? extends OntProperty> listInverse()

Answer an iterator over the properties that are defined to be inverses of this property.

Returns:
An iterator over the properties that declare themselves the inverseOf this property.

hasInverse

boolean hasInverse()

Answer true if there is at least one inverse property for this property.

Returns:
True if property has an inverse.

listDeclaringClasses

com.hp.hpl.jena.util.iterator.ExtendedIterator<? extends OntClass> listDeclaringClasses()

Answer an iterator of all of the classes in this ontology, such that each returned class has this property as one of its properties in OntClass.listDeclaredProperties(). This simulates a frame-like view of properties and classes; for more details see the RDF frames how-to.

Returns:
An iterator of the classes having this property as one of their declared properties

listDeclaringClasses

com.hp.hpl.jena.util.iterator.ExtendedIterator<? extends OntClass> listDeclaringClasses(boolean direct)

Answer an iterator of all of the classes in this ontology, such that each returned class has this property as one of its properties in OntClass.listDeclaredProperties(boolean). This simulates a frame-like view of properties and classes; for more details see the RDF frames how-to.

Parameters:
direct - If true, use only direct associations between classes and properties
Returns:
An iterator of the classes having this property as one of their declared properties

listReferringRestrictions

com.hp.hpl.jena.util.iterator.ExtendedIterator<Restriction> listReferringRestrictions()

Answer an iterator over any restrictions that mention this property as the property that the restriction is adding some constraint to. For example:

<owl:Restriction>
     <owl:onProperty rdf:resource="#childOf" />
     <owl:hasValue rdf:resource="#ian" />
 </owl:Restriction>

Note that any such restrictions do not affect the global semantics of this property itself. Restrictions define new class expressions, and the property constraints are local to that class expression. This method is provided as a convenience to assist callers to navigate the relationships in the model.

Returns:
An iterator whose values are the restrictions from the local model that reference this property.


Licenced under the Apache License, Version 2.0