Class OntClassImpl
- java.lang.Object
-
- org.apache.jena.enhanced.Polymorphic<RDFNode>
-
- org.apache.jena.enhanced.EnhNode
-
- org.apache.jena.rdf.model.impl.ResourceImpl
-
- org.apache.jena.ontology.impl.OntResourceImpl
-
- org.apache.jena.ontology.impl.OntClassImpl
-
- All Implemented Interfaces:
FrontsNode
,OntClass
,OntResource
,RDFNode
,Resource
- Direct Known Subclasses:
BooleanClassDescriptionImpl
,ComplementClassImpl
,EnumeratedClassImpl
,RestrictionImpl
public class OntClassImpl extends OntResourceImpl implements OntClass
Implementation of the ontology abstraction representing ontology classes.
-
-
Field Summary
Fields Modifier and Type Field Description static Implementation
factory
A factory for generating OntClass facets from nodes in enhanced graphs.-
Fields inherited from class org.apache.jena.ontology.impl.OntResourceImpl
KNOWN_LANGUAGES
-
Fields inherited from class org.apache.jena.rdf.model.impl.ResourceImpl
rdfNodeFactory
-
-
Constructor Summary
Constructors Constructor Description OntClassImpl(Node n, EnhGraph g)
Construct an ontology class node represented by the given node in the given graph.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addDisjointWith(Resource cls)
Add a class that this class is disjoint with.void
addEquivalentClass(Resource cls)
Add a class that is equivalent to this class.void
addSubClass(Resource cls)
Add a sub-class of this class.void
addSuperClass(Resource cls)
Add a super-class of this class.ComplementClass
asComplementClass()
Answer a view of this class as a complement classEnumeratedClass
asEnumeratedClass()
Answer a view of this class as an enumerated classIntersectionClass
asIntersectionClass()
Answer a view of this class as an intersection classRestriction
asRestriction()
Answer a view of this class as a restriction class expressionUnionClass
asUnionClass()
Answer a view of this class as a union classComplementClass
convertToComplementClass(Resource cls)
Answer a view of this class as an complement of the given class.EnumeratedClass
convertToEnumeratedClass(RDFList individuals)
Answer a view of this class as an enumeration of the given individuals.IntersectionClass
convertToIntersectionClass(RDFList classes)
Answer a view of this class as an intersection of the given classes.Restriction
convertToRestriction(Property prop)
Answer a view of this class as an restriction on the given property.UnionClass
convertToUnionClass(RDFList classes)
Answer a view of this class as a union of the given classes.Individual
createIndividual()
Answer a new individual that has this class as itsrdf:type
Individual
createIndividual(java.lang.String uri)
Answer a new individual that has this class as itsrdf:type
void
dropIndividual(Resource individual)
Remove the given individual from the set of instances that are members of this class.OntClass
getDisjointWith()
Answer a class with which this class is disjoint.OntClass
getEquivalentClass()
Answer a class that is equivalent to this class.OntClass
getSubClass()
Answer a class that is the sub-class of this class.OntClass
getSuperClass()
Answer a class that is the super-class of this class.boolean
hasDeclaredProperty(Property p, boolean direct)
Answer true if the given property is one of the declared properties of this class.boolean
hasEquivalentClass(Resource cls)
Answer true if the given class is equivalent to this class.boolean
hasSubClass()
Answer true if this class has any sub-class in the model.boolean
hasSubClass(Resource cls)
Answer true if the given class is a sub-class of this class.boolean
hasSubClass(Resource cls, boolean direct)
Answer true if the given class is a sub-class of this class.boolean
hasSuperClass()
Answer true if this class has any super-class in the model.boolean
hasSuperClass(Resource cls)
Answer true if the given class is a super-class of this class.boolean
hasSuperClass(Resource cls, boolean direct)
Answer true if the given class is a super-class of this class.boolean
isComplementClass()
Answer true if this class is a complement class expressionboolean
isDisjointWith(Resource cls)
Answer true if this class is disjoint with the given class.boolean
isEnumeratedClass()
Answer true if this class is an enumerated class expressionboolean
isHierarchyRoot()
Answer true if this class is one of the roots of the class hierarchy.boolean
isIntersectionClass()
Answer true if this class is an intersection class expressionboolean
isRestriction()
Answer true if this class is a property restrictionboolean
isUnionClass()
Answer true if this class is a union class expressionExtendedIterator<OntProperty>
listDeclaredProperties()
Equivalent to callinglistDeclaredProperties(boolean)
with default valuedirect = false
.ExtendedIterator<OntProperty>
listDeclaredProperties(boolean direct)
Return an iterator over the properties associated with a frame-like view of this class.ExtendedIterator<OntClass>
listDisjointWith()
Answer an iterator over all of the classes that this class is declared to be disjoint with.ExtendedIterator<OntClass>
listEquivalentClasses()
Answer an iterator over all of the classes that are declared to be equivalent classes to this class.ExtendedIterator<Individual>
listInstances()
Answer an iterator over the individuals in the model that have this class among their types.ExtendedIterator<Individual>
listInstances(boolean direct)
Answer an iterator over the individuals in the model that have this class among their types, optionally excluding sub-classes of this class.ExtendedIterator<OntClass>
listSubClasses()
Answer an iterator over all of the classes that are declared to be sub-classes of this class.ExtendedIterator<OntClass>
listSubClasses(boolean direct)
Answer an iterator over the classes that are declared to be sub-classes of this class.ExtendedIterator<OntClass>
listSuperClasses()
Answer an iterator over all of the classes that are declared to be super-classes of this class.ExtendedIterator<OntClass>
listSuperClasses(boolean direct)
Answer an iterator over all of the classes that are declared to be super-classes of this class.void
removeDisjointWith(Resource cls)
Remove the statement that this class and the given class are disjoint.void
removeEquivalentClass(Resource cls)
Remove the statement that this class and the given class are equivalent.void
removeSubClass(Resource cls)
Remove the given class from the sub-classes of this class.void
removeSuperClass(Resource cls)
Remove the given class from the super-classes of this class.void
setDisjointWith(Resource cls)
Assert that this class is disjoint with the given class.void
setEquivalentClass(Resource cls)
Assert that the given class is equivalent to this class.void
setSubClass(Resource cls)
Assert that this class is super-class of the given class.void
setSuperClass(Resource cls)
Assert that this class is sub-class of the given class.-
Methods inherited from class org.apache.jena.ontology.impl.OntResourceImpl
addComment, addComment, addDifferentFrom, addIsDefinedBy, addLabel, addLabel, addRDFType, addSameAs, addSeeAlso, addVersionInfo, asAllDifferent, asAnnotationProperty, asClass, asDataRange, asDatatypeProperty, asIndividual, asObjectProperty, 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, isDatatypeProperty, isDefinedBy, isDifferentFrom, isIndividual, isObjectProperty, 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 class org.apache.jena.rdf.model.impl.ResourceImpl
abort, addLiteral, addLiteral, addLiteral, addLiteral, addLiteral, addLiteral, addLiteral, addProperty, addProperty, addProperty, addProperty, addProperty, addProperty, addProperty, asLiteral, asResource, begin, commit, getId, getLocalName, getModel, getNameSpace, getProperty, getProperty, getPropertyResourceValue, getRequiredProperty, getRequiredProperty, getStmtTerm, getURI, hasLiteral, hasLiteral, hasLiteral, hasLiteral, hasLiteral, hasLiteral, hasProperty, hasProperty, hasProperty, hasProperty, hasURI, inModel, listProperties, listProperties, listProperties, removeAll, removeProperties, toString, visitWith
-
Methods inherited from class org.apache.jena.enhanced.EnhNode
as, asNode, canAs, equals, getGraph, hashCode, isAnon, isLiteral, isResource, isStmtResource, isURIResource, isValid, viewAs
-
Methods inherited from class org.apache.jena.enhanced.Polymorphic
addView, supports
-
Methods inherited from interface org.apache.jena.graph.FrontsNode
asNode
-
Methods inherited from interface org.apache.jena.ontology.OntResource
addComment, addComment, addDifferentFrom, addIsDefinedBy, addLabel, addLabel, addRDFType, addSameAs, addSeeAlso, addVersionInfo, asAllDifferent, asAnnotationProperty, asClass, asDataRange, asDatatypeProperty, asIndividual, asObjectProperty, 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, isDatatypeProperty, isDefinedBy, isDifferentFrom, isIndividual, isObjectProperty, 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 org.apache.jena.rdf.model.RDFNode
as, asLiteral, asResource, canAs, getModel, isAnon, isLiteral, isResource, isStmtResource, isURIResource, visitWith
-
Methods inherited from interface org.apache.jena.rdf.model.Resource
abort, addLiteral, addLiteral, addLiteral, addLiteral, addLiteral, addLiteral, addLiteral, addProperty, addProperty, addProperty, addProperty, begin, commit, equals, getId, getLocalName, getNameSpace, getProperty, getProperty, getPropertyResourceValue, getRequiredProperty, getRequiredProperty, getStmtTerm, getURI, hasLiteral, hasLiteral, hasLiteral, hasLiteral, hasLiteral, hasLiteral, hasProperty, hasProperty, hasProperty, hasProperty, hasURI, inModel, listProperties, listProperties, listProperties, removeAll, removeProperties, toString
-
-
-
-
Field Detail
-
factory
public static Implementation factory
A factory for generating OntClass facets from nodes in enhanced graphs. Note: should not be invoked directly by user code: useas()
instead.
-
-
Method Detail
-
setSuperClass
public void setSuperClass(Resource cls)
Assert that this class is sub-class of the given class. Any existing statements for
subClassOf
will be removed.- Specified by:
setSuperClass
in interfaceOntClass
- Parameters:
cls
- The class that this class is a sub-class of- Throws:
ProfileException
- If theProfile.SUB_CLASS_OF()
property is not supported in the current language profile.
-
addSuperClass
public void addSuperClass(Resource cls)
Add a super-class of this class.
- Specified by:
addSuperClass
in interfaceOntClass
- Parameters:
cls
- A class that is a super-class of this class.- Throws:
ProfileException
- If theProfile.SUB_CLASS_OF()
property is not supported in the current language profile.
-
getSuperClass
public OntClass getSuperClass()
Answer a class that is the super-class of this class. If there is more than one such class, an arbitrary selection is made.
- Specified by:
getSuperClass
in interfaceOntClass
- Returns:
- A super-class of this class
- Throws:
ProfileException
- If theProfile.SUB_CLASS_OF()
property is not supported in the current language profile.
-
listSuperClasses
public ExtendedIterator<OntClass> listSuperClasses()
Answer an iterator over all of the classes that are declared to be super-classes of this class. Each element of the iterator will be an
OntClass
.- Specified by:
listSuperClasses
in interfaceOntClass
- Returns:
- An iterator over the super-classes of this class.
- Throws:
ProfileException
- If theProfile.SUB_CLASS_OF()
property is not supported in the current language profile.
-
listSuperClasses
public ExtendedIterator<OntClass> listSuperClasses(boolean direct)
Answer an iterator over all of the classes that are declared to be super-classes of this class. Each element of the iterator will be an
OntClass
. SeelistSubClasses( boolean )
for a full explanation of the direct parameter.- Specified by:
listSuperClasses
in interfaceOntClass
- Parameters:
direct
- If true, only answer the direcly adjacent classes in the super-class relation: i.e. eliminate any class for which there is a longer route to reach that child under the super-class relation.- Returns:
- an iterator over the resources representing this class's sub-classes.
- Throws:
ProfileException
- If theProfile.SUB_CLASS_OF()
property is not supported in the current language profile.
-
hasSuperClass
public boolean hasSuperClass(Resource cls)
Answer true if the given class is a super-class of this class.
- Specified by:
hasSuperClass
in interfaceOntClass
- Parameters:
cls
- A class to test.- Returns:
- True if the given class is a super-class of this class.
- Throws:
ProfileException
- If theProfile.SUB_CLASS_OF()
property is not supported in the current language profile.
-
hasSuperClass
public boolean hasSuperClass()
Answer true if this class has any super-class in the model. Note that when using a reasoner, all OWL classes have owl:Thing as a super-class.
- Specified by:
hasSuperClass
in interfaceOntClass
- Returns:
- True if this class has any known super-class.
- Throws:
ProfileException
- If theProfile.SUB_CLASS_OF()
property is not supported in the current language profile.
-
hasSuperClass
public boolean hasSuperClass(Resource cls, boolean direct)
Answer true if the given class is a super-class of this class. See
listSubClasses( boolean )
for a full explanation of the direct parameter.- Specified by:
hasSuperClass
in interfaceOntClass
- Parameters:
cls
- A class to test.direct
- If true, only search the classes that are directly adjacent to this class in the class hierarchy.- Returns:
- True if the given class is a super-class of this class.
- Throws:
ProfileException
- If theProfile.SUB_CLASS_OF()
property is not supported in the current language profile.
-
removeSuperClass
public void removeSuperClass(Resource cls)
Remove the given class from the super-classes of this class. If this statement is not true of the current model, nothing happens.
- Specified by:
removeSuperClass
in interfaceOntClass
- Parameters:
cls
- A class to be removed from the super-classes of this class- Throws:
ProfileException
- If theProfile.SUB_CLASS_OF()
class is not supported in the current language profile.
-
setSubClass
public void setSubClass(Resource cls)
Assert that this class is super-class of the given class. Any existing statements for
subClassOf
onprop
will be removed.- Specified by:
setSubClass
in interfaceOntClass
- Parameters:
cls
- The class that is a sub-class of this class- Throws:
ProfileException
- If theProfile.SUB_CLASS_OF()
property is not supported in the current language profile.
-
addSubClass
public void addSubClass(Resource cls)
Add a sub-class of this class.
- Specified by:
addSubClass
in interfaceOntClass
- Parameters:
cls
- A class that is a sub-class of this class.- Throws:
ProfileException
- If theProfile.SUB_CLASS_OF()
property is not supported in the current language profile.
-
getSubClass
public OntClass getSubClass()
Answer a class that is the sub-class of this class. If there is more than one such class, an arbitrary selection is made. If there is no such class, return null.
- Specified by:
getSubClass
in interfaceOntClass
- Returns:
- A sub-class of this class or null
- Throws:
ProfileException
- If theProfile.SUB_CLASS_OF()
property is not supported in the current language profile.
-
listSubClasses
public ExtendedIterator<OntClass> listSubClasses()
Answer an iterator over all of the classes that are declared to be sub-classes of this class. Each element of the iterator will be an
OntClass
.- Specified by:
listSubClasses
in interfaceOntClass
- Returns:
- An iterator over the sub-classes of this class.
- Throws:
ProfileException
- If theProfile.SUB_CLASS_OF()
property is not supported in the current language profile.
-
listSubClasses
public ExtendedIterator<OntClass> listSubClasses(boolean direct)
Answer an iterator over the classes that are declared to be sub-classes of this class. Each element of the iterator will be an
OntClass
. The distinguishing extra parameter for this method is the flagdirect
that allows some selectivity over the classes that appear in the iterator. Consider the following scenario:
(so A has two sub-classes, B and C, and C has sub-class D). In a raw model, with no inference support, listing the sub-classes of A will answer B and C. In an inferencing model,:B rdfs:subClassOf :A. :C rdfs:subClassOf :A. :D rdfs:subClassof :C.
rdfs:subClassOf
is known to be transitive, so the sub-classes iterator will include D. Thedirect
sub-classes are those members of the closure of the subClassOf relation, restricted to classes that cannot be reached by a longer route, i.e. the ones that are directly adjacent to the given root. Thus, the direct sub-classes of A are B and C only, and not D - even in an inferencing graph. Note that this is not the same as the entailments from the raw graph. Suppose we add to this example:
Now, in the raw graph, A has sub-class C. But the direct sub-classes of A remain B and C, since there is a longer path A-C-D that means that D is not a direct sub-class of A. The assertion in the raw graph that A has sub-class D is essentially redundant, since this can be inferred from the closure of the graph.:D rdfs:subClassof :A.
Note: This is a change from the behaviour of Jena 1, which took a parameter
closed
to compute the closure over transitivity and equivalence of sub-classes. The closure capability in Jena2 is determined by the inference engine that is wrapped with the ontology model. The direct parameter is provided to allow, for exmaple, a level-by-level traversal of the class hierarchy, starting at some given root.- Specified by:
listSubClasses
in interfaceOntClass
- Parameters:
direct
- If true, only answer the direcly adjacent classes in the sub-class relation: i.e. eliminate any class for which there is a longer route to reach that child under the sub-class relation.- Returns:
- an iterator over the resources representing this class's sub-classes
- Throws:
ProfileException
- If theProfile.SUB_CLASS_OF()
property is not supported in the current language profile.
-
hasSubClass
public boolean hasSubClass(Resource cls)
Answer true if the given class is a sub-class of this class.
- Specified by:
hasSubClass
in interfaceOntClass
- Parameters:
cls
- A class to test.- Returns:
- True if the given class is a sub-class of this class.
- Throws:
ProfileException
- If theProfile.SUB_CLASS_OF()
property is not supported in the current language profile.
-
hasSubClass
public boolean hasSubClass()
Answer true if this class has any sub-class in the model. Note that when using a reasoner, all OWL classes have owl:Nothing as a sub-class.
- Specified by:
hasSubClass
in interfaceOntClass
- Returns:
- True if this class has any known sub-class.
- Throws:
ProfileException
- If theProfile.SUB_CLASS_OF()
property is not supported in the current language profile.
-
hasSubClass
public boolean hasSubClass(Resource cls, boolean direct)
Answer true if the given class is a sub-class of this class. See
listSubClasses( boolean )
for a full explanation of the direct parameter.- Specified by:
hasSubClass
in interfaceOntClass
- Parameters:
cls
- A class to test.direct
- If true, only search the classes that are directly adjacent to this class in the class hierarchy.- Returns:
- True if the given class is a sub-class of this class.
- Throws:
ProfileException
- If theProfile.SUB_CLASS_OF()
property is not supported in the current language profile.
-
removeSubClass
public void removeSubClass(Resource cls)
Remove the given class from the sub-classes of this class. If this statement is not true of the current model, nothing happens.
- Specified by:
removeSubClass
in interfaceOntClass
- Parameters:
cls
- A class to be removed from the sub-classes of this class- Throws:
ProfileException
- If theProfile.SUB_CLASS_OF()
class is not supported in the current language profile.
-
setEquivalentClass
public void setEquivalentClass(Resource cls)
Assert that the given class is equivalent to this class. Any existing statements for
equivalentClass
will be removed.- Specified by:
setEquivalentClass
in interfaceOntClass
- Parameters:
cls
- The class that this class is a equivalent to.- Throws:
ProfileException
- If theProfile.EQUIVALENT_CLASS()
property is not supported in the current language profile.
-
addEquivalentClass
public void addEquivalentClass(Resource cls)
Add a class that is equivalent to this class.
- Specified by:
addEquivalentClass
in interfaceOntClass
- Parameters:
cls
- A class that is equivalent to this class.- Throws:
ProfileException
- If theProfile.EQUIVALENT_CLASS()
property is not supported in the current language profile.
-
getEquivalentClass
public OntClass getEquivalentClass()
Answer a class that is equivalent to this class. If there is more than one such class, an arbitrary selection is made.
- Specified by:
getEquivalentClass
in interfaceOntClass
- Returns:
- A class equivalent to this class
- Throws:
ProfileException
- If theProfile.EQUIVALENT_CLASS()
property is not supported in the current language profile.
-
listEquivalentClasses
public ExtendedIterator<OntClass> listEquivalentClasses()
Answer an iterator over all of the classes that are declared to be equivalent classes to this class. Each element of the iterator will be an
OntClass
.- Specified by:
listEquivalentClasses
in interfaceOntClass
- Returns:
- An iterator over the classes equivalent to this class.
- Throws:
ProfileException
- If theProfile.EQUIVALENT_CLASS()
property is not supported in the current language profile.
-
hasEquivalentClass
public boolean hasEquivalentClass(Resource cls)
Answer true if the given class is equivalent to this class.
- Specified by:
hasEquivalentClass
in interfaceOntClass
- Parameters:
cls
- A class to test for- Returns:
- True if the given property is equivalent to this class.
- Throws:
ProfileException
- If theProfile.EQUIVALENT_CLASS()
property is not supported in the current language profile.
-
removeEquivalentClass
public void removeEquivalentClass(Resource cls)
Remove the statement that this class and the given class are equivalent. If this statement is not true of the current model, nothing happens.
- Specified by:
removeEquivalentClass
in interfaceOntClass
- Parameters:
cls
- A class that may be declared to be equivalent to this class, and which is no longer equivalent- Throws:
ProfileException
- If theProfile.EQUIVALENT_CLASS()
property is not supported in the current language profile.
-
setDisjointWith
public void setDisjointWith(Resource cls)
Assert that this class is disjoint with the given class. Any existing statements for
disjointWith
will be removed.- Specified by:
setDisjointWith
in interfaceOntClass
- Parameters:
cls
- The property that this class is disjoint with.- Throws:
ProfileException
- If theProfile.DISJOINT_WITH()
property is not supported in the current language profile.
-
addDisjointWith
public void addDisjointWith(Resource cls)
Add a class that this class is disjoint with.
- Specified by:
addDisjointWith
in interfaceOntClass
- Parameters:
cls
- A class that has no instances in common with this class.- Throws:
ProfileException
- If theProfile.DISJOINT_WITH()
property is not supported in the current language profile.
-
getDisjointWith
public OntClass getDisjointWith()
Answer a class with which this class is disjoint. If there is more than one such class, an arbitrary selection is made.
- Specified by:
getDisjointWith
in interfaceOntClass
- Returns:
- A class disjoint with this class
- Throws:
ProfileException
- If theProfile.DISJOINT_WITH()
property is not supported in the current language profile.
-
listDisjointWith
public ExtendedIterator<OntClass> listDisjointWith()
Answer an iterator over all of the classes that this class is declared to be disjoint with. Each element of the iterator will be an
OntClass
.- Specified by:
listDisjointWith
in interfaceOntClass
- Returns:
- An iterator over the classes disjoint with this class.
- Throws:
ProfileException
- If theProfile.DISJOINT_WITH()
property is not supported in the current language profile.
-
isDisjointWith
public boolean isDisjointWith(Resource cls)
Answer true if this class is disjoint with the given class.
- Specified by:
isDisjointWith
in interfaceOntClass
- Parameters:
cls
- A class to test- Returns:
- True if the this class is disjoint with the the given class.
- Throws:
ProfileException
- If theProfile.DISJOINT_WITH()
property is not supported in the current language profile.
-
removeDisjointWith
public void removeDisjointWith(Resource cls)
Remove the statement that this class and the given class are disjoint. If this statement is not true of the current model, nothing happens.
- Specified by:
removeDisjointWith
in interfaceOntClass
- Parameters:
cls
- A class that may be declared to be disjoint with this class, and which is no longer disjoint- Throws:
ProfileException
- If theProfile.DISJOINT_WITH()
property is not supported in the current language profile.
-
listDeclaredProperties
public ExtendedIterator<OntProperty> listDeclaredProperties()
Equivalent to callinglistDeclaredProperties(boolean)
with default valuedirect = false
.- Specified by:
listDeclaredProperties
in interfaceOntClass
-
listDeclaredProperties
public ExtendedIterator<OntProperty> listDeclaredProperties(boolean direct)
Return an iterator over the properties associated with a frame-like view of this class. This captures an intuitive notion of the properties of a class. This can be useful in presenting an ontology class in a user interface, for example by automatically constructing a form to instantiate instances of the class. The properties in the frame-like view of the class are determined by comparing the domain of properties in this class's
OntModel
with the class itself. See: Presenting RDF as frames for more details.Note that many cases of determining whether a property is associated with a class depends on RDFS or OWL reasoning. This method may therefore return complete results only in models that have an attached reasoner.
- Specified by:
listDeclaredProperties
in interfaceOntClass
- Parameters:
direct
- Iftrue
, restrict the properties returned to those directly associated with this class. Iffalse
, the properties of super-classes of this class will not be listed among the declared properties of this class.- Returns:
- An iteration of the properties that are associated with this class by their domain.
-
hasDeclaredProperty
public boolean hasDeclaredProperty(Property p, boolean direct)
Answer true if the given property is one of the declared properties of this class. For details, see
listDeclaredProperties(boolean)
.- Specified by:
hasDeclaredProperty
in interfaceOntClass
- Parameters:
p
- A property to testdirect
- If true, only direct associations between classes and properties are considered- Returns:
- True if
p
is one of the declared properties of this class
-
listInstances
public ExtendedIterator<Individual> listInstances()
Answer an iterator over the individuals in the model that have this class among their types.
- Specified by:
listInstances
in interfaceOntClass
- Returns:
- An iterator over those instances that have this class as one of the classes to which they belong
-
listInstances
public ExtendedIterator<Individual> listInstances(boolean direct)
Answer an iterator over the individuals in the model that have this class among their types, optionally excluding sub-classes of this class.
- Specified by:
listInstances
in interfaceOntClass
- Parameters:
direct
- If true, only direct instances are counted (i.e. not instances of sub-classes of this class)- Returns:
- An iterator over those instances that have this class as one of the classes to which they belong
-
createIndividual
public Individual createIndividual()
Answer a new individual that has this class as its
rdf:type
- Specified by:
createIndividual
in interfaceOntClass
- Returns:
- A new anonymous individual that is an instance of this class
-
createIndividual
public Individual createIndividual(java.lang.String uri)
Answer a new individual that has this class as its
rdf:type
- Specified by:
createIndividual
in interfaceOntClass
- Parameters:
uri
- The URI of the new individual- Returns:
- A new named individual that is an instance of this class
-
dropIndividual
public void dropIndividual(Resource individual)
Remove the given individual from the set of instances that are members of this class. This is effectively equivalent to the
Individual.removeOntClass(org.apache.jena.rdf.model.Resource)
method, but invoked via the class resource rather than via the individual resource.- Specified by:
dropIndividual
in interfaceOntClass
- Parameters:
individual
- A resource denoting an individual that is no longer to be a member of this class
-
isHierarchyRoot
public boolean isHierarchyRoot()
Answer true if this class is one of the roots of the class hierarchy. This will be true if either (i) this class has
owl:Thing
as a direct super-class, or (ii) it has no declared super-classes (including anonymous class expressions).- Specified by:
isHierarchyRoot
in interfaceOntClass
- Returns:
- True if this class is the root of the class hierarchy in the model it is attached to
-
asEnumeratedClass
public EnumeratedClass asEnumeratedClass()
Answer a view of this class as an enumerated class
- Specified by:
asEnumeratedClass
in interfaceOntClass
- Returns:
- This class, but viewed as an EnumeratedClass node
- Throws:
ConversionException
- if the class cannot be converted to an enumerated class given the lanuage profile and the current state of the underlying model.
-
asUnionClass
public UnionClass asUnionClass()
Answer a view of this class as a union class
- Specified by:
asUnionClass
in interfaceOntClass
- Returns:
- This class, but viewed as a UnionClass node
- Throws:
ConversionException
- if the class cannot be converted to a union class given the lanuage profile and the current state of the underlying model.
-
asIntersectionClass
public IntersectionClass asIntersectionClass()
Answer a view of this class as an intersection class
- Specified by:
asIntersectionClass
in interfaceOntClass
- Returns:
- This class, but viewed as an IntersectionClass node
- Throws:
ConversionException
- if the class cannot be converted to an intersection class given the lanuage profile and the current state of the underlying model.
-
asComplementClass
public ComplementClass asComplementClass()
Answer a view of this class as a complement class
- Specified by:
asComplementClass
in interfaceOntClass
- Returns:
- This class, but viewed as a ComplementClass node
- Throws:
ConversionException
- if the class cannot be converted to a complement class given the lanuage profile and the current state of the underlying model.
-
asRestriction
public Restriction asRestriction()
Answer a view of this class as a restriction class expression
- Specified by:
asRestriction
in interfaceOntClass
- Returns:
- This class, but viewed as a Restriction node
- Throws:
ConversionException
- if the class cannot be converted to a restriction given the lanuage profile and the current state of the underlying model.
-
isEnumeratedClass
public boolean isEnumeratedClass()
Answer true if this class is an enumerated class expression
- Specified by:
isEnumeratedClass
in interfaceOntClass
- Returns:
- True if this is an enumerated class expression
-
isUnionClass
public boolean isUnionClass()
Answer true if this class is a union class expression
- Specified by:
isUnionClass
in interfaceOntClass
- Returns:
- True if this is a union class expression
-
isIntersectionClass
public boolean isIntersectionClass()
Answer true if this class is an intersection class expression
- Specified by:
isIntersectionClass
in interfaceOntClass
- Returns:
- True if this is an intersection class expression
-
isComplementClass
public boolean isComplementClass()
Answer true if this class is a complement class expression
- Specified by:
isComplementClass
in interfaceOntClass
- Returns:
- True if this is a complement class expression
-
isRestriction
public boolean isRestriction()
Answer true if this class is a property restriction
- Specified by:
isRestriction
in interfaceOntClass
- Returns:
- True if this is a restriction
-
convertToEnumeratedClass
public EnumeratedClass convertToEnumeratedClass(RDFList individuals)
Answer a view of this class as an enumeration of the given individuals.
- Specified by:
convertToEnumeratedClass
in interfaceOntClass
- Parameters:
individuals
- A list of the individuals that will comprise the permitted values of this class converted to an enumeration- Returns:
- This ontology class, converted to an enumeration of the given individuals
-
convertToIntersectionClass
public IntersectionClass convertToIntersectionClass(RDFList classes)
Answer a view of this class as an intersection of the given classes.
- Specified by:
convertToIntersectionClass
in interfaceOntClass
- Parameters:
classes
- A list of the classes that will comprise the operands of the intersection- Returns:
- This ontology class, converted to an intersection of the given classes
-
convertToUnionClass
public UnionClass convertToUnionClass(RDFList classes)
Answer a view of this class as a union of the given classes.
- Specified by:
convertToUnionClass
in interfaceOntClass
- Parameters:
classes
- A list of the classes that will comprise the operands of the union- Returns:
- This ontology class, converted to an union of the given classes
-
convertToComplementClass
public ComplementClass convertToComplementClass(Resource cls)
Answer a view of this class as an complement of the given class.
- Specified by:
convertToComplementClass
in interfaceOntClass
- Parameters:
cls
- An ontology classs that will be operand of the complement- Returns:
- This ontology class, converted to an complement of the given class
-
convertToRestriction
public Restriction convertToRestriction(Property prop)
Answer a view of this class as an restriction on the given property.
- Specified by:
convertToRestriction
in interfaceOntClass
- Parameters:
prop
- A property this is the subject of a property restriction class expression- Returns:
- This ontology class, converted to a restriction on the given property
-
-