Information 
What's New
About Fido
Web Services
Tutorials
Developer Info
Download
Online Demo
 Other Links 
Source and project information at:

SourceForge Logo

For questions, email:
Chad Dionis

 Fido Database Design 

Verb Constraints

A Verb in the VerbList contains zero to many constraints. The Verb class object contains a list of these constraints.

A constraint is defined as:

  1. A part of speech (subject, direct object, or indirect object)
  2. The constraint (must have, cannot have, less than, greater than, has attribute, does not have attribute)
  3. A link type from the LinkTypeList
  4. The name of an Noun class or instance
Using the above, a possible constraint for the verb throw would be: Direct Object (thing being thrown) less than WEIGHT 10. Saying, the direct object (the thing being thrown) must have a WEIGHT link to a number less than 10.

Constraints can also be called Preconditions, because the system will check each constraint before executing the verb instruction. For example, in order to delete a file, a precondition is the file must exist.

Attributes are adjectives. If a constraint specifies the POS must have a certaint attribute, the link type field is not used. Each noun class will have links to other nouns (using links from the link type list) and a list of attributes, which are adjectives.

Initially, in analyzing ellipsis, the following sequence:

  1. Did you see the clerk in the store?
  2. Yes
  3. The toaster oven?
This posed a different problem than just looking at which subtrees different objects are in. Because a clerk cannot fit inside of a toaster oven, the following ellipsis is incorrect:
  1. Did you see the clerk in the store?
  2. Yes
  3. Did you see the clerk in the toaster oven?
We need to build a system of actions that can be tested. For instance, for the above example, an action in would require that the object being put could fit into the container. The phrase the object being put can fit into the container is a constraint. A constraint would be linked to an action, such as putting something [in, into, or inside] something else. Further examples would be: on (above), below (under), move (the subject moves some object from one point to another)...

An example constraint would be in (also, into and inside)

Two objects, one (A) being put into another (B). So (B) is the receiving object. This is the case for (A) and (B) being physical objects. This would not cover sentences like Put an idea in his head.

  1. (A) and (B) must be physical objects.
  2. (A) must be smaller than (B), such as total volume.
  3. (B) must have a hole inside large enough for (A) or be expandable
  4. (B) must have an opening to the cavity. The opening must be big enough to let (A) through, and be of the same shape. (A) may not be the same shape, but then (A) shape must be morphable.
  5. (B) must not already have something in the cavity, or the space left over must be large enough to allow (A) in also.
  6. The cavity in (B) must be accessible. (The hole cannot be on the bottom of a large heavy object)
  7. (A) must be able to be moved by the subject of the sentence.
Every verb will have constraints. This will enable the system to know that in the physical world, a string may pull an item, but cannot push an item. This is because a string is not ridged.

Last modified: February 03 2003 15:25:15
© 2002 Fido Development Team