102解析器与106本体耦合,106本体与108数据库耦合;
106本体有一个或多个110对象类型和116属性类型
110对象类型实例化多个112对象
每一个对象有一个或多个属性
116属性类型实例化114A和114B属性
116属性类型有一个或多个118组件,组件有字符串、数字等
120基本类型(location)实例化116属性类型(home)
124 对象类型编辑器创建110对象类型
126属性类型编辑器创建116属性类型
在126属性类型编辑器创建116属性类型时,至少要用到一个122解析器编辑器
解析器定义规定102解析器如何提取100输入数据,确定输入数据的值是否可以分配给和解析器定义联系的属性类型116
100输入数据的101对象-属性映射决定,哪种110对象类型应该接收数据的行对象;哪种116属性类型应该接收列的属性字段
102解析器根据解析器定义解析100输入数据,生成103修改后数据
304输入数据的每一行可看作一个对象,每一列可看作一个对象的一个属性;
308根据一个输入的属性类型,选取解析器定义集;
310用多个解析器定义适配输入的字段;
320循环匹配其他属性类型和对象类型;
322属性类型匹配完成后,通过对象类型实例化对象;
324将对象实例存储到数据库
最后引用漆老师的一段解释:
Palantir动态本体通过解析器可以把各种格式的数据都集成到一个数据库中,从而很好地实现了异构数据的集成。为了达到这个目前,需要将动态本体的对象类型和属性类型定义完备,同时需要将解析器的正则表达式写好,否则很难使用。这也是Palantir的动态本体的缺陷所在。
参考:
动态本体palantir专利;
漆老师解释地址:https://zhuanlan.zhihu.com/p/30799669