So to clarify, calls to the Q restriction methods unavoidably result in exceptions in all OntModelSpec cases?
On 1/18/2020 8:53 AM, Dave Reynolds wrote: > Yes, that's right. > > The Jena OWL API doesn't support OWL 2, only OWL 1. > > While OWL 1 had plain cardinality restrictions, among others, > qualified cardinatlity restrictions didn't come in until OWL 2. You > would have to create the corresponding triples using the RDF API. > > Dave > > On 18/01/2020 08:44, Lorenz Buehmann wrote: >> I'd say none of the profiles does support it given that it would be >> beyond OWL DL, OWL Lite and RDFS and part of OWL 2. >> >> Source code also indicates this [1]. >> >> Not sure if this was ever added to Jena, Dave or Andy know for sure >> better than me. At least the docs [2] would be confusing if this feature >> isn't available via Ontology API. >> >> >> [1] >> https://github.com/apache/jena/blob/master/jena-core/src/main/java/org/apache/jena/ontology/impl/OWLProfile.java#L166-L172 >> >> >> [2] >> https://jena.apache.org/documentation/ontology/#restriction-class-expressions >> >> >> On 18.01.20 03:07, Steve Vestal wrote: >>> I am trying to create an OntModel that contains a >>> CardinalityQRestriction. If the OntModel is an OWL_MEM model, then I >>> get the exception "Attempted to use language construct CARDINALITY_Q >>> that is not supported in the current language profile: OWL Full." >>> If I >>> create the OntModel as an RDFS_MEM model, I get the exception >>> "Attempted >>> to use language construct ONTOLOGY that is not supported in the current >>> language profile: RDFS." What model configuration is needed to for >>> cardinality Q restrictions? >>> >>> My impression from the OntModel API is that the W3C OWL cardinality >>> restrictions map to the OntModel cardinality Q restrictions, except >>> maybe the Q restrictions also impose universal quantification as >>> well as >>> cardinality restrictions. Is that so? How would theOWL standard >>> cardinality restriction ObjectMinCardinality(nonNegativeInteger >>> ObjectPropertyExpression ClassExpression) be entered? >>> >>>
