框架的构成包括以下四点组成:
1、名字
框架具有唯一的名字,它提供一个标志,可为任何常量。
2、描述
描述是框架的主体,由任意有限数目的槽组成。这些槽是数据和过程的组合模块,用于描述对象的性质(属性)或连接不同的其它框架。每个槽包含槽的名字和槽的值。一个框架中的每个槽具有唯一的名字,它局限于框架。因而不同的框架可以包含相同的槽名。每个槽有一个值侧面(存放属性值),它可具有一个或多个值,也可以是默认值。默认值是在缺乏更具体的知识时被假定的一个值。有些情况,根据对象的类型可知它必须具有某种特征,但不知道该特征的具体值,又不能设默认值。
3、约束
约束是每个槽可包含一组有关约束条件,如约束槽值的类型、数量等。这些约束可用若干侧面表示。一种侧面表示槽值的最少和最多个数;一种侧面描述槽值的类型和取值范围;例如一个人的年龄必须是整型数字。另一种侧面是附加过程:如果加入过程(if—added)、如果删除过程(if—deleted)、如果需要过程(if—needed),它们描述对象的行为特征,用于控制槽值的存储和检索。
4、关系
关系表达框架对象之间的知识关联,包括:等级关系、语义相似关系、语义相关关系等静态关联,还有框架之间的互操作等动态关联。每个框架可以有一个或多个父辈结点,通过父—子链表达等级关系。框架中槽的值也可以是连接其它框架的链值。因此,框架可以通过槽的值相互关联,还可以使用规则相互动态连接。当一个系统中的各个不同框架共享同一个槽时,这个槽可以把从不同角度收集来的信息相互协调起来。
一个框架的基本结构由框架名、关系、槽、槽值及槽的约束条件与附加过程所组成。框架的一般描述形式如下:
《框架名》
《关系》
《槽名1》《值1》《约束1》《过程l》
《槽名2》《值2》《约束2》《过程2》
……
《槽名n》《值n》《约束n》《过程n》。
例如:一个描述“大学教师”的框架:
框架名——大学教师
类属——职业:<教师>
槽名——学位:(学士,硕士,博士)
缺省:硕士
槽名——专业:<学科专业>
槽名——职称:(助教,讲师,副教授,教授)
缺省:讲师
槽名——外语:
侧面名——语种:(英,法,日,俄)
默认值:英
侧面名——水平:(优,良,中,差)
默认值:良