模式检查

初始化服务器时,将读取模式文件并检查其一致性和正确性。

如果检查失败,那么服务器将无法初始化并发出错误消息。 在任何动态模式更改期间,还会检查生成的模式是否一致和正确。 如果检查失败,那么将返回错误,并且更改将失败。 有些检查是语法的一部分。 例如,一个属性类型最多可以有一个超类型,或者一个对象类可以有任意数量的超类。

将检查以下项以查找属性类型:
  • 两种不同的属性类型不能具有相同的名称或 OID。
  • 属性类型的继承层次结构不具有循环。
  • 还必须定义属性类型的超类型,尽管其定义可能在稍后显示,也可能在单独的文件中显示。
  • 如果属性类型是另一个属性类型的子类型,那么它们都具有相同的 USAGE
  • 所有属性类型都有一个直接定义或继承的语法。
  • 只能将操作属性标记为 NO-USER-MODIFICATION
将针对对象类检查以下项:
  • 两个不同的对象类不能具有相同的名称或 OID。
  • 对象类的继承层次结构不具有循环。
  • 对象类的超类也必须定义,尽管它的定义可能稍后出现或出现在单独的文件中。
  • 还必须定义对象类的 MUSTMAY 属性类型,尽管其定义可能出现在稍后或单独的文件中。
  • 每个结构对象类都是顶部的直接或间接子类。
  • 如果抽象对象类具有超类,那么这些超类也必须是抽象的。