Frame Knowledge Representation 

Consider the example first discussed in Semantics Nets (Section 6.2.1):

 

Person

 

                                isa:                        Mammal

 

                                Cardinality:                          tex2html_wrap_inline7166

 

Adult-Male

 

                               isa:                          Person

 

                                Cardinality:                          tex2html_wrap_inline7166

 

Rugby-Player

 

                                isa:                         Adult-Male

 

                                Cardinality:                          tex2html_wrap_inline7166

 

                                Height:

 

                                              Weight:

 

                                Position:

 

                                Team:

 

                                              Team-Colours:

 

Back

 

                                isa:                        Rugby-Player

 

                                Cardinality:                          tex2html_wrap_inline7166

 

                                Tries:

 

Mike-Hall

 

                                instance:                               Back

 

                                Height:                  6-0

 

                                Position:                               Centre

 

                                Team:                    Cardiff-RFC

 

                                Team-Colours:                      Black/Blue

 

Rugby-Team

 

                                isa:                         Team

 

                                Cardinality:                          tex2html_wrap_inline7166

 

                                Team-size:                            15

 

                                Coach:

 

  figure789
Figure: A simple frame system

Here the frames Person, Adult-Male, Rugby-Player and Rugby-Team are all classes and the frames Robert-Howley and Cardiff-RFC are instances.

Note

DISTINCTION BETWEN SETS AND INSTANCES

It is important that this distinction is clearly understood.

Cardiff-RFC can be thought of as a set of players or as an instance of a Rugby-Team.

If Cardiff-RFC were a class then

Instead we make it a subclass of Rugby-Player and this allows the players to inherit the correct properties enabling us to let the Cardiff-RFC to inherit information about teams.

This means that Cardiff-RFC is an instance of Rugby-Team.

BUT There is a problem here:

This is why we need to view Cardiff-RFC as a subset of one class players and an instance of teams. We seem to have a CATCH 22. SolutionMetaClasses

A metaclass is a special class whose elements are themselves classes.

Now consider our rugby teams as:

  figure837
Figure: A Metaclass frame system

The basic metaclass is Class, and this allows us to

Inheritance of default values occurs when one element or class is an instance of a class.

 

Slots as Objects

How can we to represent the following properties in frames?

A slot is a relation that maps from its domain of classes to its range of values.

A relation is a set of ordered pairs so one relation is a subset of another.

Since slot is a set the set of all slots can be represent by a metaclass called Slot, say.

Consider the following:

 

SLOT

 

                                isa:                         Class

 

                                instance:                              Class

 

                                domain:

 

                                range:

 

                                range-constraint:

 

                                definition:

 

                                default:

 

                                to-compute:

 

                                single-valued:

 

Coach

 

                                instance:                               SLOT

 

                                domain:                                Rugby-Team

 

                                range:                    Person

 

                               range-constraint:                                tex2html_wrap_inline7290 (experience x.manager)

 

                                default:

 

                                single-valued:                       TRUE

 

 

Colour

 

                                instance:                               SLOT

 

                                domain:                                Physical-Object

 

                                range:                    Colour-Set

 

                                single-valued:                       FALSE

 

Team-Colours

 

                                instance:                               SLOT

 

                                isa:                         Colour

 

                                domain:                                team-player

 

                                range:                    Colour-Set

 

                                range-constraint:                                not Pink

 

                                single-valued:                       FALSE

 

Position

 

                                instance:                               SLOT

 

                                domain:                                Rugby-Player

 

                                range:                    { Back, Forward, Reserve }

 

                                to-compute:                          tex2html_wrap_inline7290 x.position

 

                               single-valued:                       TRUE

 

NOTE the following: