The special symbol *nothing* has been introduced to block inheritance. If a parent has a slot with particular facets and fillers and if one of its children has a *nothing* in a particular facet (must be Sem only) for that same slot, then the slot won't be inherited from the parent. Since the local slot in the child has *nothing* as a filler, no instance of any OBJECT or EVENT or any number or literal will match this symbol. As such, no filler is acceptable to this slot and this slot will never be present in any instance of the child concept. This has the same effect as removing the slot from the child concept by blocking its inheritance from the parent concept.
There are two reasons why we need to block inheritance using *nothing*:
For example, all EVENTs take the agent slot except PASSIVE-COGNITIVE-EVENTs and INVOLUNTARY-PERCEPTUAL-EVENTs. We can put the agent slot (with a sem animal) in the root EVENT and put a sem *nothing* in PASSIVE-COGNITIVE-EVENT and INVOLUNTARY-PERCEPTUAL-EVENT. This will effectively block the agent slot in the subtrees rooted under these two EVENTs while all other EVENTs automatically have the agent slot.
Another example where we have used *nothing* is RUN. All CHANGE-LOCATIONs have a theme sem PHYSICAL-OBJECT except RUN because you don't run somebody else.
We have blocked the theme slot for RUN using a *nothing*.
In a sense, this mechanism is introducing the power of having default slots just like we have a Default facet in a slot. We can specify a slot for a class of concepts which acts like a default slot: it is present in every concept unless there is an explicit Sem *nothing* filler in it.
Kavi Mahesh