Modified lines:  None
Added line:  None
Removed line:  None
Generated by diff2html
© Yves Bailly, MandrakeSoft S.A. 2001
diff2html is licensed under the GNU GPL.

  support-v2.1/foundations.lisp       support-v2.2/foundations.lisp
  80 lines
3300 bytes
Last modified : Wed Jun 29 13:32:25 2005

      80 lines
3300 bytes
Last modified : Wed Jun 29 13:33:51 2005

1 ;;; Mode: Lisp; Package: ocml     1 ;;; Mode: Lisp; Package: ocml
2     2
3 ;;; The Open University     3 ;;; The Open University
4     4
5 (in-package "OCML")     5 (in-package "OCML")
6     6
7 (in-ontology akt-support-ontology)     7 (in-ontology akt-support-ontology)
8     8
9 ;;;A very simple top-level. We define something called THING, which     9 ;;;A very simple top-level. We define something called THING, which
10 ;;;is the top-level concept in the ontology. We then distinguish two basic     10 ;;;is the top-level concept in the ontology. We then distinguish two basic
11 ;;;types of 'things': TANGIBLE-THING, something that has some physicality,     11 ;;;types of 'things': TANGIBLE-THING, something that has some physicality,
12 ;;;and INTANGIBLE-THING, something which has not. We use a very open definition     12 ;;;and INTANGIBLE-THING, something which has not. We use a very open definition
13 ;;;of being tangible: obviusly a physical object is tangible, but also a sub-atomic     13 ;;;of being tangible: obviusly a physical object is tangible, but also a sub-atomic
14 ;;;particle is tangible, even if some of them are very tricky (you do not see them)     14 ;;;particle is tangible, even if some of them are very tricky (you do not see them)
15 ;;;you only see the trace they leave behind. Also a piece of software will be     15 ;;;you only see the trace they leave behind. Also a piece of software will be
16 ;;;considered a tangible thing, it is something that you can see on a floppy disk.     16 ;;;considered a tangible thing, it is something that you can see on a floppy disk.
17 ;;;In contrast an algorithm will be an intangible, although the file that contains     17 ;;;In contrast an algorithm will be an intangible, although the file that contains
18 ;;;its implementation will be a tangible thing.     18 ;;;its implementation will be a tangible thing.
19     19
20 ;;;This is a stop-gap top level. Over the course of teh project we may want to extend this     20 ;;;This is a stop-gap top level. Over the course of teh project we may want to extend this
21 ;;;and link to existing top levels (SUO, HPKB, CYC, Sowa, Guarino, etc.)     21 ;;;and link to existing top levels (SUO, HPKB, CYC, Sowa, Guarino, etc.)
22     22
23     23
24 (def-class THING ()     24 (def-class THING ()
25   "This is the top-level concept in the AKT reference ontology"     25   "This is the top-level concept in the AKT reference ontology"
26   ((has-pretty-name :type string     26   ((has-pretty-name :type string
27                     :max-cardinality 1     27                     :max-cardinality 1
28                     :documentation "A human readable name")     28                     :documentation "A human readable name")
29    (has-variant-name :type string     29    (has-variant-name :type string
30                      :documentation "Other variants of the human readable name")))     30                      :documentation "Other variants of the human readable name")))
31     31
32     32
33 (def-class INTANGIBLE-THING (thing)     33 (def-class INTANGIBLE-THING (thing)
34   "This comes from HPKB upper level.     34   "This comes from HPKB upper level.
35    The collection of things that are not physical -- are not made     35    The collection of things that are not physical -- are not made
36    of, or encoded in, matter. Every Collection is an Intangible (even if its     36    of, or encoded in, matter. Every Collection is an Intangible (even if its
37    instances are tangible), and so are some Individuals.     37    instances are tangible), and so are some Individuals.
38    Caution: do not confuse `tangibility' with `perceivability' -- humans can perceive     38    Caution: do not confuse `tangibility' with `perceivability' -- humans can perceive
39    light even though it's intangible--at least in a sense.")     39    light even though it's intangible--at least in a sense.")
40     40
41 (def-class TEMPORAL-THING (thing)     41 (def-class TEMPORAL-THING (thing)
42   "Like in Cyc, this is something which has a temporal extent."     42   "Like in Cyc, this is something which has a temporal extent."
43   ((has-time-interval :type time-interval)))     43   ((has-time-interval :type time-interval)))
44     44
45 (def-class TANGIBLE-THING (temporal-thing)     45 (def-class TANGIBLE-THING (temporal-thing)
46   "Something which is not intangible, something which is physical, made of matter.     46   "Something which is not intangible, something which is physical, made of matter.
47    It does not matter whether things are real of imaginary. Therefore we consider     47    It does not matter whether things are real of imaginary. Therefore we consider
48    Mickey Mouse's car and a hippogriff as tangible things")     48    Mickey Mouse's car and a hippogriff as tangible things")
49     49
50 (def-axiom TANGIBLE-AND-INTANGIBLE-THINGS-ARE-DISJOINT     50 (def-axiom TANGIBLE-AND-INTANGIBLE-THINGS-ARE-DISJOINT
51   (subclass-partition thing (set-of Tangible-Thing Intangible-thing)))     51   (subclass-partition thing (set-of Tangible-Thing Intangible-thing)))
52     52
53 (def-class INDIVIDUAL (Thing) ?x     53 (def-class INDIVIDUAL (Thing) ?x
54   "Something which is not a set."     54   "Something which is not a set."
55   :iff-def (not (set ?x))     55   :iff-def (not (set ?x))
56     56
57   ;;;the definitions below are effective ways to prove whether     57   ;;;the definitions below are effective ways to prove whether
58   ;;;somebody is an individual in OCML     58   ;;;somebody is an individual in OCML
59   :prove-by (or     59   :prove-by (or
60              (and (variable-bound ?x)     60              (and (variable-bound ?x)
61                   (not (set ?x)))     61                   (not (set ?x)))
62              (= ?x nil))     62              (= ?x nil))
63   :no-proofs-by (:iff-def))     63   :no-proofs-by (:iff-def))
64     64
65 (def-class QUANTITY (Individual Intangible-thing)     65 (def-class QUANTITY (Individual Intangible-thing)
66   "From SUO: Any specification of how many or how much of something there is.     66   "From SUO: Any specification of how many or how much of something there is.
67    Accordingly, there are two subclasses of Quantity: Number (how many)     67    Accordingly, there are two subclasses of Quantity: Number (how many)
68    and Physical-Quantity (how much).")     68    and Physical-Quantity (how much).")
69     69
70 (def-class PHYSICAL-QUANTITY (quantity)     70 (def-class PHYSICAL-QUANTITY (quantity)
71  "SUO: Physical Quantities are distinguished from Numbers by the     71  "SUO: Physical Quantities are distinguished from Numbers by the
72   fact that the former are associated with a dimension of measurement."     72   fact that the former are associated with a dimension of measurement."
73   ((has-unit-of-measure :type unit-of-measure)     73   ((has-unit-of-measure :type unit-of-measure)
74    (has-magnitude :type number)))     74    (has-magnitude :type number)))
75     75
76     76
77 (def-class UNIT-OF-MEASURE (Intangible-thing)     77 (def-class UNIT-OF-MEASURE (Intangible-thing)
78   "Any kind of unit of measure, metre, dollar, kilogram, etc..")     78   "Any kind of unit of measure, metre, dollar, kilogram, etc..")
79     79
80     80

Generated by diff2html on Wed Jun 29 13:48:54 2005
Command-line:
./diff2html support-v2.1/foundations.lisp support-v2.2/foundations.lisp