VDB 构建器
VDB Builder 一词指在发布给定业务对象时用于构建 (或填充) Info*Engine VDB 的一组 ESI Open API。调用这些 API 会生成表示正在导出的数据的 Info*Engine 集合。生成的 I*E 集合将使用 Info*Engine 的转 XML API 转换为 XML 形式,以包含在 ESI 响应消息中。
下图显示了 Windchill ESI 服务感兴趣的对象。
VDB 包含零个或多个组对象。
Info*Engine API 转 XML 使用以下规则将 VDB 转换为 XML:
• VDB 用于创建 XML 文档片段。片段的根元素始终为 <COLLECTION>。
• 每个组对象都会生成一个 XML 元素,作为根元素的直接子项。XML 元素将以组对象的类“名称”属性值命名。
• 组对象将按照添加到 VDB 的顺序显示在 XML 文档中。
• 每个 Info*Engine 元素对象都会创建一个 XML 元素,作为包含 Info*Engine 元素对象的组对象的 XML 元素直接子项。
• Info*Engine 对象允许您设置元数据信息。如果元素对象元数据名称 com.infoengine.xml.esi 具有值,则该值是为表示 Info*Engine 元素对象的 XML 元素指定的名称。如果未设置元数据值,则 XML 元素始终为 <INSTANCE>。
• 每个 Att 对象可具有零个或多个值。每个值都会使 XML 元素添加为描述 Info*Engine 元素对象的 XML 元素的直接子项。att 值的 XML 元素与 Att 对象的名称属性同名。
Windchill ESI VDB 构建器是一组相互协作的类,用于支持 ESI 构建难以构建的复杂 VDB 结构。
下面是您可能决定要自定义的一些内容:
• 对作为自变量传递到 VdbBuilder 实施的各种 addElement() 方法的对象应用筛选逻辑
• 提供附加处理以修改传递到 VdbBuilder 实施的各种 addElement() 方法的值
要进行此类自定义,可通过创建 VdbBuilderImpl 的子类并改写所需方法。无需使用 Windchill Information Modeler 对子类进行模型化。