These examples below originate from Structural Specification and Functional-Style Syntax (revision 12000) (2008-08-29 07:44). The latest version of this specification is http://www.w3.org/2007/OWL/wiki/Syntax.
The examples are sorted by the axiom to better reveal the irregularities in the English expressions.
The irregularities are:
Each instance of a:Child is an instance of a:Person. a:Child is a subclass of a:Person. Girls are children. Each man is a person. A mongrel is a type of dog.
Other comments:
SymmetricProperty( a:friend ) == The property a:friend is symmetric.
In the table, the 3rd column shows how the axiom could be expressed in Attempto Controlled English (ACE).
OWL | English | ACE |
AsymmetricProperty( a:parentOf ) | The property a:parentOf is asymmetric. | If X is a parent of Y then Y is not a parent of X. |
ClassAssertion( AllValuesFrom( a:hasPet UnionOf( OneOf( a:Brian ) ComplementOf( a:Dog ))) a:Peter) | Each pet of a:Peter is either a:Brian or it is not a dog. | Every pet of Peter is Brian or is not a dog. |
ClassAssertion( ComplementOf( a:Girl ) a:Stewie ) | a:Stewie is not a girl. | |
ClassAssertion( MaxCardinality( 1 a:hasDaughter ) a:Peter ) | a:Peter has at most one daughter. | |
ClassAssertion( MaxCardinality( 1 a:hasPet ) a:Peter ) | a:Peter has at most one pet. | |
ClassAssertion( MaxCardinality( 1 a:hasPet ) a:Peter ) | a:Peter has at most one thing as a pet. | |
ClassAssertion( SomeValuesFrom( a:marriedTo IntersectionOf( a:Man HasValue( a:hasSSN "123-45-6789" ) )) a:Lois) | a:Lois is married to someone who is a a:Man and whose social security number is "123-45-6789". | |
ClassAssertion( a:Baby a:Stewie ) | a:Stewie is a baby. | |
ClassAssertion( a:Boy a:Stewie ) | a:Stewie is a boy. | |
ClassAssertion( a:Boy a:Stewie ) | a:Stewie is a boy. | |
ClassAssertion( a:CanTalk a:Brian ) | a:Brian can talk. | |
ClassAssertion( a:Child a:Chris ) | a:Chris is a child. | |
ClassAssertion( a:Child a:Stewie ) | a:Stewie is a child. | |
ClassAssertion( a:Dog a:Brian ) | a:Brian is a a:Dog. | |
ClassAssertion( a:Dog a:Brian ) | a:Brian is a dog. | |
ClassAssertion( a:Dog a:Brian ) | a:Brian is a dog. | |
ClassAssertion( a:Dog a:Brian ) | a:Brian is a dog. | |
ClassAssertion( a:Dog a:Brian ) | a:Brian is a dog. | |
ClassAssertion( a:GriffinFamily a:Brian ) | a:Brian is a member of the Griffin Family. | |
ClassAssertion( a:GriffinFamily a:Chris ) | a:Chris is a member of the Griffin Family. | |
ClassAssertion( a:GriffinFamily a:Lois ) | a:Lois is a member of the Griffin Family. | |
ClassAssertion( a:GriffinFamily a:Meg ) | a:Meg is a member of the Griffin Family. | |
ClassAssertion( a:GriffinFamily a:Peter ) | a:Peter is a member of the Griffin Family. | |
ClassAssertion( a:GriffinFamily a:Stewie ) | a:Stewie is a member of the Griffin Family. | |
ClassAssertion( a:Man a:Chris ) | a:Chris is a man. | |
ClassAssertion( a:Man a:Chris ) | a:Chris is a man. | |
ClassAssertion( a:Man a:Peter ) | a:Peter is a man. | |
ClassAssertion( a:Man a:Stewie ) | a:Stewie is a man. | |
ClassAssertion( a:Man a:Stewie ) | a:Stewie is a man. | |
ClassAssertion( a:MongrelOwner a:Peter ) | a:Peter is a mongrel owner. | |
ClassAssertion( a:Person a:Peter ) | a:Peter is a person. | Peter is a person. |
ClassAssertion( a:Person a:Peter ) | a:Peter is an instance of a:Person. | |
ClassAssertion( a:Person a:Peter ) | a:Peter is an instance of a:Person. | |
ClassAssertion( a:Person a:Peter ) | a:Peter is an instance of a:Person. | |
ClassAssertion( a:Person a:Peter_Griffin ) | a:Peter_Griffin is an instance of a:Person. | |
ClassAssertion( a:Woman a:Lois ) | a:Lois is a woman. | |
ClassAssertion( a:Woman a:Lois ) | a:Lois is a woman. | |
DifferentIndividuals( a:Chris a:Stewie ) | a:Chris and a:Stewie are different from each other. | Chris is not Stewie. |
DifferentIndividuals( a:Peter a:Meg a:Chris a:Stewie ) | All of these individuals are different from each other. | |
DifferentIndividuals( a:Peter a:Meg a:Megan ) | a:Peter, a:Meg, and a:Megan are all different from each other. | |
DifferentIndividuals( a:Quagmire a:Peter a:Lois a:Stewie a:Meg a:Chris a:Brian ) | All these individuals are different from each other. | |
DisjointClasses( a:Boy a:Girl ) | Nothing can be both a boy and a girl. | No boy is a girl. |
DisjointClasses( a:Man a:Woman ) | No object can be both a man and a woman. | |
DisjointProperties( a:hasFather a:hasMother ) | Fatherhood is disjoint with motherhood. | If X has-father Y then it is false that X has-mother Y. |
DisjointProperties( a:hasName a:hasAddress ) | The values for a name are different from the values for an address. | |
DisjointUnion( a:Child a:Boy a:Girl ) | a:Child is a disjoint union of a:Boy and a:Girl. | |
EquivalentClasses( a:Boy IntersectionOf( a:Child a:Man ) ) | A boy is a male child. | Every boy is a child and is a man. Everybody who is a child and who is a man is a boy. |
EquivalentClasses( a:DogOwner SomeValuesFrom( a:hasPet a:Dog ) ) | A dog owner has a pet that is a dog. | |
EquivalentClasses( a:GriffinFamily OneOf( a:Peter a:Lois a:Stewie a:Meg a:Chris a:Brian )) | The Griffin family consists exactly of Peter, Lois, Stewie, Meg, and Brian. | |
EquivalentClasses( a:MongrelOwner SomeValuesFrom( a:hasPet a:Mongrel ) ) | A mongrel owner has a pet that is a mongrel. | |
EquivalentProperties( a:hasBrother a:hasMaleSibling ) | a:hasBrother and a:hasMaleSibling are synonyms. | |
EquivalentProperties( a:hasName a:seLlama ) | a:hasBrother and a:seLlama (in Spanish) are synonyms. | |
FunctionalProperty( a:hasAge ) | Each person can have at most one age. | |
FunctionalProperty( a:hasFather ) | Each person can have at most one father. | |
FunctionalProperty( a:hasName ) | Each object can have at most one name. | |
FunctionalProperty( a:hasName ) | Each object can have at most one name. | |
FunctionalProperty( a:hasZIP ) | Each object can have at most one ZIP code. | |
FunctionalProperty( a:numberOfChildren ) | An individual can have only one value for a:numberOfChildren. | |
InverseFunctionalProperty( a:fatherOf ) | Each person can have at most one father. | |
InverseProperties( a:hasFather a:fatherOf ) | The object properties a:hasFather and a:fatherOf are inverse to each other. | |
IrreflexiveProperty( a:marriedTo ) | Nobody can be married to themself. | |
KeyFor( a:hasSSN a:Person ) | Each person is uniquely identified by their social security number. | |
KeyFor( a:hasSSN a:Person ) | Each person is uniquely identified by their social security number. | |
NegativePropertyAssertion( a:hasAge a:Meg 5^^xsd:integer ) | a:Meg is not five years old. | |
NegativePropertyAssertion( a:hasSon a:Peter a:Meg ) | a:Meg is not a son of a:Peter. | |
PropertyAssertion( a:Meg a:numberOfChildren "+0"^^xsd:float ) | The value of a:numberOfChildren for a:Meg is +0. | |
PropertyAssertion( a:Meg a:numberOfChildren "-0"^^xsd:float ) | The value of a:numberOfChildren for a:Meg is -0. | |
PropertyAssertion( a:ancestorOf a:Carter a:Lois ) | a:Carter is an ancestor of a:Lois. | |
PropertyAssertion( a:ancestorOf a:Lois a:Meg ) | a:Lois is an ancestor of a:Meg. | |
PropertyAssertion( a:city _:1 a:Quahog ) | The object represented by the anonymous individual _:1 is related to individual a:Quahog by the property a:city. | |
PropertyAssertion( a:fatherOf a:Peter a:Chris ) | a:Peter is a father of a:Chris. | Peter is a father of Chris. |
PropertyAssertion( a:fatherOf a:Peter a:Chris ) | a:Peter is the father of a:Chris. | |
PropertyAssertion( a:fatherOf a:Peter a:Chris ) | a:Peter is the father of a:Chris. | |
PropertyAssertion( a:fatherOf a:Peter a:Meg ) | a:Peter is a father of a:Meg. | |
PropertyAssertion( a:fatherOf a:Peter a:Stewie ) | a:Peter is a father of a:Stewie. | |
PropertyAssertion( a:fatherOf a:Peter a:Stewie ) | a:Peter is the father of a:Stewie. | |
PropertyAssertion( a:fatherOf a:Peter a:Stewie ) | a:Peter is the father of a:Stewie. | |
PropertyAssertion( a:fatherOf a:Peter a:Stewie ) | a:Peter is the father of a:Stewie. | |
PropertyAssertion( a:fatherOf a:Peter a:Stewie ) | a:Peter is the father of a:Stewie. | |
PropertyAssertion( a:fatherOf a:Peter a:Stewie ) | a:Peter is the father of a:Stewie. | |
PropertyAssertion( a:fatherOf a:Peter_Griffin a:Stewie ) | a:Peter_Griffin is the father of a:Stewie. | |
PropertyAssertion( a:friend a:Peter a:Brian ) | a:Brian is a friend of a:Peter. | |
PropertyAssertion( a:hasAddress a:Peter "Quahog, Rhode Island" ) | a:Peter has address "Quahog, Rhode Island". | Peter's address is "Quahog, Rhode Island". |
PropertyAssertion( a:hasAge a:Meg "17"^^xsd:integer ) | a:Meg has age seventeen. | Meg's age is 17. |
PropertyAssertion( a:hasAge a:Meg "17"^^xsd:integer ) | a:Meg is seventeen. | |
PropertyAssertion( a:hasAge a:Meg 17^^xsd:integer ) | a:Meg is 17 years old. | |
PropertyAssertion( a:hasAge a:Meg 17^^xsd:integer ) | a:Meg is 17 years old. | |
PropertyAssertion( a:hasBrother a:Chris a:Stewie ) | a:Chris has a brother a:Stewie. | |
PropertyAssertion( a:hasBrother a:Meg a:Stewie ) | a:Meg has a brother a:Stewie. | |
PropertyAssertion( a:hasDaughter a:Peter a:Meg ) | a:Meg is a daughter of a:Peter. | |
PropertyAssertion( a:hasDaughter a:Peter a:Megan ) | a:Megan is a daughter of a:Peter. | |
PropertyAssertion( a:hasDog a:Peter a:Brian ) | a:Peter has a:Brian as a dog. | |
PropertyAssertion( a:hasDog a:Peter a:Brian ) | a:Peter has a:Brian as a dog. | |
PropertyAssertion( a:hasDog a:Peter a:Brian ) | a:Peter has a:Brian as a dog. | |
PropertyAssertion( a:hasDog a:Peter a:Brian ) | a:Peter has dog a:Brian. | |
PropertyAssertion( a:hasFather a:Stewie a:Peter ) | a:Peter is the father of a:Stewie. | |
PropertyAssertion( a:hasFather a:Stewie a:Peter ) | a:Stewie has father a:Peter. | |
PropertyAssertion( a:hasFather a:Stewie a:Peter ) | a:Stewie has father a:Peter. | |
PropertyAssertion( a:hasFather a:Stewie a:Peter_Griffin ) | a:Stewie has father a:Peter_Griffin. | |
PropertyAssertion( a:hasFirstName a:Peter "Peter" ) | a:Peter has first name "Peter". | |
PropertyAssertion( a:hasMaleSibling a:Stewie a:Chris ) | a:Stewie has male sibling a:Chris. | |
PropertyAssertion( a:hasMother a:Stewie a:Lois ) | a:Lois is the mother of a:Stewie. | |
PropertyAssertion( a:hasMother a:Stewie a:Lois ) | a:Lois is the mother of a:Stewie. | |
PropertyAssertion( a:hasName a:Brian "Brian" ) | a:Brian is called "Brian". | |
PropertyAssertion( a:hasName a:Chris "Chris" ) | a:Chris has name "Chris". | |
PropertyAssertion( a:hasName a:Meg "Meg" ) | a:Meg is called "Meg". | |
PropertyAssertion( a:hasName a:Meg "Megan" ) | a:Meg is called "Megan". | |
PropertyAssertion( a:hasName a:Peter "Peter" ) | a:Peter has name "Peter". | |
PropertyAssertion( a:hasName a:Peter "Peter" ) | a:Peter has name "Peter". | |
PropertyAssertion( a:hasName a:Peter "Peter" ) | a:Peter has name "Peter". | |
PropertyAssertion( a:hasPet a:Peter a:Brian ) | a:Peter has a:Brian as a pet. | |
PropertyAssertion( a:hasPet a:Peter a:Brian ) | a:Peter has a:Brian as a pet. | |
PropertyAssertion( a:hasPet a:Peter a:Brian ) | a:Peter has a:Brian as a pet. | |
PropertyAssertion( a:hasSSN a:Peter "123-45-6789" ) | a:Peter has the social security number "123-45-6789". | |
PropertyAssertion( a:hasSSN a:Peter "123-45-6789" ) | a:Peter has the social security number "123-45-6789". | |
PropertyAssertion( a:hasSSN a:Peter_Griffin "123-45-6789" ) | a:Peter_Griffin has the social security number "123-45-6789". | |
PropertyAssertion( a:hasSister a:Lois a:Carol ) | a:Carol is a sister of a:Lois. | |
PropertyAssertion( a:likes a:Peter a:Peter ) | a:Peter likes himself. | |
PropertyAssertion( a:livesAt a:Peter _:1 ) | a:Peter lives at some address, represented using the anonymous individual _:1. | |
PropertyAssertion( a:name a:Peter "Peter Griffin" ) | The a:name of a:Peter is "Peter Griffin". | |
PropertyAssertion( a:parentOf a:Peter a:Chris ) | a:Peter is a parent of a:Chris. | |
PropertyAssertion( a:parentOf a:Peter a:Stewie ) | a:Peter is a parent of a:Stewie. | |
PropertyAssertion( a:seLlama a:Chris "Chris Griffin" ) | a:Chris has name "Chris Griffin". | |
PropertyAssertion( a:state _:1 a:RI ) | The object represented by the anonymous individual _:1 related to individual a:RI (representing the state of Rhode Island) by the property a:state. | |
PropertyAssertion( a:zipCode _:a1 "02903"^^xsd:integer ) | The ZIP code of _:a1 is the integer 02903. | |
PropertyDomain( a:hasDog a:Person ) | The domain of a:hasDog is a:Person. | Everybody who has a dog is a person. |
PropertyDomain( a:hasName a:Person ) | The domain of a:hasName is a:Person. | |
PropertyRange( a:hasAge xsd:integer ) | The range of the a:hasAge property is xsd:integer. | |
PropertyRange( a:hasDog a:Dog ) | The range of a:hasDog is a:Dog. | Everything that is a dog of something is a dog. |
PropertyRange( a:hasName xsd:string ) | The range of a:hasDog is a:Dog. | |
ReflexiveProperty( a:knows ) | Everybody knows themself. | |
SameIndividual( a:Meg a:Megan ) | a:Meg and a:Megan are synonyms. | Meg is Megan. |
SubClassOf( SomeValuesFrom( a:hasAge DatatypeRestriction( xsd:integer minInclusive 13^^xsd:integer maxInclusive 19^^xsd:integer)) a:Teenager) | Teenagers are older than 13 and younger than 19 (both inclusive). | |
SubClassOf( SomeValuesFrom( a:hasChild a:Child ) a:Parent ) | If some object has a child, then this object is a parent. | Everybody whose child is a child is a parent. |
SubClassOf( SomeValuesFrom( a:hasDog owl:Thing ) a:DogOwner ) | Things having a dog are dog owners. | Everybody whose dog is something is a dog-owner. |
SubClassOf( a:Baby a:Child ) | Each instance of a:Baby is an instance of a:Child. | Every baby is a child. |
SubClassOf( a:Boy a:Child ) | Boys are children. | |
SubClassOf( a:Child a:Person ) | Each instance of a:Child is an instance of a:Person. | |
SubClassOf( a:Child a:Person ) | a:Child is a subclass of a:Person. | |
SubClassOf( a:Dog a:Mammal ) | Dogs are mammals. | |
SubClassOf( a:Girl a:Child ) | Girls are children. | |
SubClassOf( a:Man a:Person ) | Each man is a person. | |
SubClassOf( a:Mongrel a:Dog ) | A mongrel is a type of dog. | |
SubClassOf( a:PersonWithChild SomeValuesFrom( a:hasChild UnionOf( a:Boy a:Girl ) )) | A person that has a child has either at least one boy or a girl. | Every person-with-child has a child that is a boy or that is a girl. |
SubPropertyOf( PropertyChain( a:hasMother a:hasSister ) a:hasAunt ) | If x is connected by a:hasMother with y, and y is connected by a:hasSister with z, then x is connected by a:hasAunt with z; that is, an aunt z of x is a sister x's mother. | |
SubPropertyOf( a:hasDog a:hasPet ) | Having a dog is a kind of having a pet. | If X has-dog Y then X has-pet Y. |
SubPropertyOf( a:hasFirstName a:hasName ) | Having a first name is a kind of having a name. | |
SymmetricProperty( a:friend ) | The property a:friend is symmetric. | If X is a friend of Y then Y is a friend of X. |
TransitiveProperty( a:ancestorOf ) | The property a:ancestorOf is transitive. | If X is an ancestor of something that is an ancestor of Y then X is an ancestor of Y. |