@prefix : . @prefix log: . @prefix owl: . @prefix rdf: . @prefix rdfs: . @prefix xsd: . :Namea owl:Class; rdfs:comment "This is My Name. There are many like it, but this one is mine."; rdfs:label "My Name"; rdfs:seeAlso ; # You have two choices for expressing cardinality constraints, class local and global. # Global cardinality constraints only work for maxCardinality=0 and are expressed # by declaring the property in question to be of type owl:FunctionalProperty # All other cardinality constraints are on a per class basis, and commonly expressed # as below. rdfs:subClassOf[a owl:Restriction; owl:cardinality "1"^^xsd:nonNegativeInteger; owl:onProperty <#first> ], [a owl:Restriction; owl:cardinality "1"^^xsd:nonNegativeInteger; owl:onProperty <#last> ] . :firsta owl:DatatypeProperty; rdfs:domain :Name; rdfs:label "First"; rdfs:range xsd:string . :lasta owl:DatatypeProperty; rdfs:domain :Name; rdfs:label "Last"; rdfs:range xsd:string .