![]() |
|
|
| Home | Resources | Buyer's Guide | FAQs | Newsletter | Tech Jobs | |
|
DAML Reference 5.8. daml:Restriction
something is in the class R if it satisfies the attached restrictions, and vice versa. 5.8.1. Syntaxdaml:Restriction is a property restriction which is a special kind of class-expressions. It implicitly defines an anonymous class, namely, the class of all objects that satisfy the restriction on their properties. daml:Restriction contains:
5.9. daml:Thing
The most general (object) class in DAML. This is equal to the union of any class and its complement. 5.10. daml:TransitiveProperty
daml:TransitiveProperty is a daml:ObjectProperty that is transitively applied. If Mr. John Smith is a member of the Boulder Nordic Club (BNC) and the BNC is a member of the American Cross Country Skiers (ACCS), then Mr. Smith is also a meber of the ACCS. 5.11. daml:UnambiguousProperty
a daml:UnambiguousProperty is a property that has only one possible subject per object; it is an injective property. For example, if Mr.Smith position in the race is first, and there was tie in the race, then the person who came in first place in the race is Mr. Smith and nobody else. 5.12. daml:UniqueProperty
daml:UniqueProperty is a property that has only one possible value, it is a short-cut for a property with a daml:maxCardinality of 1. Example: Mount Everest is the highest peak on Earth. No other mountain is the highest peak. 5.13. daml:cardinality
daml:cardinality determine the exact number of possible values for a given property. For instance, a daml:UniqueProperty is like a property with a daml:cardinality equal to 1. 5.14. daml:cardinalityQ
daml:cardinalityQ is like daml:cardinality except that it specifies the rdf:type of the possible values of the property. Example, not only is there a single highest peak on Earth, but that peak must be natural, i.e. of rdf:type Mountain. Something of another type would be considered the highest structure and not the highest peak. 5.15. daml:complementOf
daml:complementOf is a property that specifies that if something is an instance of X, and Y is the daml:complement of X, then Y cannot be an instance of X. 5.15.1. Syntaxdaml:complementOf contains a single class-expressions and defines the class that consists of exactly all objects that do not belong to the class-expressions. It is analogous to logical negation but restricted to objects only. 5.16. daml:differentIndividualFrom
daml:differentIndividualFrom property means that an instance of a class is specifically not the same as some other instance. 5.17. daml:disjointUnionOf
daml:disjointUnionOf property means that a class contains all the disjoint instances of the specified classes. For instance our class #Product is made of all the instances of #CurrentProduct, #DiscontinuedProduct, and #UnreleasedProduct, but no product can be an instance of more than one of the three latter classes. 5.17.1. Syntaxdaml:disjointUnionOf contains a list of class-expressions. 5.18. daml:disjointWith
The daml:disjointWith property states that all the instances of the class will not be instances of the class it is disjoint with. In our previous example, we could have said that <rdf:Description rdf:about="#CurrentProduct">
<daml:disjointWith rdf:resource="#DiscontinuedProduct"
</rdf:Description>
5.18.1. Syntaxdaml:disjointWith contains a class-expression, it means that no instances of the class-expression are common to the subject. 5.19. daml:equivalentTo
daml:equivalentTo means that X is equivalent to Y, therefore it can be replaced by it. 5.19.1. Syntaxdaml:equivalentTo has the same semantics as the daml:sameClassAs property when it is applied to a class. 5.20. daml:first
daml:first represents the first element of a daml:List. 5.21. daml:hasClass
5.21.1. Syntaxdaml:hasClass property contains a class-expression or a datatype reference and defines the class of all objects for which at least one value of the property is a member of the class-expressions or datatype. 5.22. daml:hasClassQ
The daml:hasClassQ property is used for specifying class restriction with daml:cardinalityQ constraints. Which means that not only must there be at least one of the values of the property with the given class (as with daml:hasClass), but the number of such properties must also meet the given cardinality rules. So, for instance, if we wish to make a rule that a BasketballTeam has 5 StartingPlayers, we can do so using a daml:hasClassQ of StartingPlayer and a daml:cardinalityQ of 5. |
|
| |
| Contact Us | Our Mission | Privacy Policy | Advertise With Us | Site Help | |
| Copyright © 2002 O'Reilly & Associates, Inc. | |