1.一种基于图数据库的建筑设计规范知识图谱构建方法,其特征在于,具体按照如下步骤实施:步骤1,抽取待处理存储规范中的全部实体,构建规范语义存储实体集合Entity_Set1{E1,E2,E3,…};步骤2,对步骤1所得实体集合Entity_Set1{E1,E2,…,E3}进行聚类去重操作,得到去重后的实体集合Entity_Set3;步骤3,建立普通节点表格文件,以“Name”为第一列首行单元格值,以“单位”为第二列首行单元格值,以“:LABEL”为第三列首行单元格值,以“:ID”为第四列首行单元格值,然后将实体集合Entity_Set3中各实体Ei填入普通节点表格文件中,i=1,2,3……;步骤4,建立特殊节点表格文件,分别以“Name”,“:LABEL”,“:ID”为首行第一至三列单元格值;步骤5,建立节点关系表格文件,分别以“:START_ID”,“:END_ID”,“Start”,“End”,“Flag”,“IDD”,“:TYPE”为首行第一至七列单元格值,节点关系表中从第二行起,各行依次分别存储一条实体关系,每增加一则关系,便为该关系所在行“IDD”列单元格填入An,其中,n为已存储关系数;步骤6,针对具体规范条文,将步骤5建立的节点关系表首行紧后一列单元格值设置为该规范条文编号,对于具有二级编号的规范条文,则将各二级条文分作一列;步骤7,分析梳理当前规范条文中各实体间谓词关系,分别在普通节点表格文件中查找本规范条文中有关实体Ei所对应“:ID”列单元格值,记为Ei_ID,i=1,2,3……;步骤8,依次对规范中各规范条文按照步骤6进行表达与存储;步骤9,将普通节点表格文件、特殊节点表格文件、节点关系表格文件采用UTF-8编码方式,以.CSV文件格式进行存储,以便导入Neo4j数据库;步骤10,借助Neo4j-import工具,将上述.CSV文件依照普通节点表,特殊节点表,节点关系表的顺序,按照Neo4j数据批量导入格式,依次导入Neo4j数据库,从而完成建筑设计所涵盖规范语义信息的图结构存储与表达。
2.根据权利要求1所述的一种基于图数据库的建筑设计规范知识图谱构建方法,其特征在于,所述步骤2具体为:步骤2.1,将语义表达相近的实体进行聚类,统一抽象为相应实体,得到实体集合Entity_Set2;步骤2.2,去除实体集合Entity_Set2中的重复实体,得到实体集合Entity_Set3。
3.根据权利要求1所述的一种基于图数据库的建筑设计规范知识图谱构建方法,其特征在于,所述步骤3中将实体集合Entity_Set3中各实体Ei填入普通节点表格文件中具体为:步骤3.1,将实体集合Entity_Set3中各实体Ei依次作为普通节点表格第一列第i+1行单元格值,i=1,2,3……;步骤3.2,若实体Ei为带有单位的数字实体,则仅将数字实体作为第一列第i+1行单元格值,将其计量单位保存于第二列同行单元格;步骤3.3,依次以所处理规范中涉及实体Ei的规范条文编号为第i+1行单元格值,若实体Ei涉及多条规范,则各规范编号间以“;”分隔;步骤3.4,将第四列第i+1行单元格值设置为i,i=1,2,3……,直至i等于实体集合Entity_Set3中实体总数。
4.根据权利要求1所述的一种基于图数据库的建筑设计规范知识图谱构建方法,其特征在于,所述步骤7具体为:步骤7.1,若某实体Ei与自身存在一元谓词关系,则将实体Ei所对应Ei_ID分别填入“:START_ID”和“:END_ID”所在列紧后行空白单元格,记所处行数为y,以该一元谓词关系为第y行“:TYPE”列单元格值;步骤7.2,若该一元谓词关系同时包含约束程度关系,则将约束程度词填入第y行当前处理规范条文编号所在列单元格,否则该单元格以“ ”填充;步骤7.3,若该规范条文中存在某实体Ej到该一元谓词整体间的二元谓词关系,则按照如下操作步骤进行:步骤7.3.1,若特殊节点表格文件中已存在“:LABEL”列某单元格值为“简单节点”及当前规范条文编号,则仅需记该单元格所在行“:ID”列单元格值为Ori_ID;步骤7.3.2,若特殊节点表格文件中不存在“:LABEL”列某单元格值为“简单节点”及本规范条文编号,则按照步骤7.3.3至步骤7.3.5进行;步骤7.3.3,为特殊节点表“Name”列紧后一行空白单元格填入“ ”占位;步骤7.3.4,将“简单节点”及当前规范条文编号填入同行“:LABEL”列单元格,其间以“;”分隔;步骤7.3.5,将同行“:ID”列单元格值设置为当前普通节点数与特殊节点数之和,记为Ori_ID;步骤7.3.6,将实体Ej所对应Ej_ID填入节点关系表中“:START_ID”列紧后一行空白单元格,记行号为y;步骤7.3.7,将该一元谓词关系所包含实体Ei所对应Ei_ID填入第y行“:END_ID”列单元格;步骤7.3.8,以该二元谓词关系为第y行“:TYPE”列单元格值;步骤7.3.9,若该二元谓词关系同时存在约束程度关系,则将约束程度词作为第y行当前规范编号列单元格值;若不存在约束程度关系,则该单元格以“ ”占位;步骤7.3.10,将Ori_ID填入第y+1行“:START_ID”列单元格;步骤7.3.11,将Ei_ID填入第y+1行“:END_ID”列单元格;步骤7.3.12,以“简单边”为第y+1行“:TYPE”列单元格值;步骤7.3.13,以该一元谓词关系所在行“IDD”列单元格值为第y+1行“Start”列单元格值;步骤7.3.14,以第y行“IDD”列单元格值为第y+1行“End”列单元格值;步骤7.4,若该规范条文存在某实体Ei到另一实体Ej间的二元谓词关系,则将实体Ei所对应Ei_ID填入“:START_ID”所在列紧后行空白单元格,记所处行数为y,将实体Ej所对应Ej_ID填入第y行“:END_ID”列单元格,以该二元谓词关系为同行“:TYPE”列单元格值;步骤7.5,若该二元谓词关系同时包含约束程度关系,则将约束程度词填入第y行当前处理规范条文编号所在列单元格,否则该单元格以“ ”填充;步骤7.6,若该规范条文中某三个实体Ei、Ej、Ek间存在三元谓词关系Tri,则按照如下操作进行:步骤7.6.1,若特殊节点表格文件中已存在“Name”列某单元格值为该三元谓词关系,则仅需为此单元格同行“:LABEL”列添加本规范条文编号,与原单元格值采用“;”分隔,并记同行“:ID”列单元格值为Tri_ID;步骤7.6.2,若特殊节点表格文件中不存在“Name”列某单元格值为该三元谓词关系,则按照步骤7.6.3至步骤7.6.5进行;步骤7.6.3,为特殊节点表“Name”列紧后一行空白单元格填入该三元谓词关系;步骤7.6.4,将“复杂节点”及当前规范条文编号填入同行“:LABEL”列单元格,其间以“;”分隔;步骤7.6.5,将同行“:ID”列单元格值设置为当前普通节点数与特殊节点数之和,记为Tri_ID;步骤7.6.6,将实体Ei、Ej、Ek所对应Ei_ID、Ej_ID、Ek_ID分别填入节点关系表格文件中“:START_ID”列紧后一行空白单元格,将Tri_ID填入此三行中各行“:END_ID”列单元格;步骤7.6.7,以该三元谓词关系为此三行中各行“:TYPE”列单元格值;步骤7.6.8,依据实体Ei、Ej和Ek在该三元谓词关系中语义逻辑顺序,设置此三行中各行当前规范条文编号所在列单元格值为Seq,Seq=1,2,3;步骤7.7,若该规范条文中某实体Ei与某三元谓词Trj整体间存在二元谓词关系,则按照以下步骤进行:步骤7.7.1,依据该二元谓词关系中实体Ei和三元谓词Trj的语义逻辑次序,将节点关系表中“:START_ID”列紧后一行空白单元格值设置为Ei_ID或Trj_ID,以标记关系引出节点,将同行“:END_ID”列单元格值设置为另一值,以标记关系指向节点;步骤7.7.2,以该二元谓词关系为同行“:TYPE”列单元格值;步骤7.7.3,若该二元谓词关系同时存在约束程度关系,则将约束程度词作为第y行当前规范编号列单元格值;若不存在约束程度关系,则该单元格以“ ”占位;步骤7.8,若当前规范实体集合Entity_Set3中某实体Ei,其存在到本规范中一个以上实体间的二元谓词关系,且此多个实体间或实体所处简单句间存在“且”或“或”的语义逻辑关系,则进行其间二元谓词关系存储后,按照如下步骤进行其间语义逻辑关系的表示:步骤7.8.1,若特殊节点表格文件中已存在“:LABEL”列某单元格值为“选择节点”及当前规范条文编号,则仅需记该单元格所在行“:ID”列单元格值为Dri_ID;步骤7.8.2,若特殊节点表格文件中不存在“:LABEL”列某单元格值为“选择节点”及本规范条文编号,则按照步骤7.8.3至步骤7.8.5进行;步骤7.8.3,为特殊节点表“Name”列紧后一行空白单元格填入“ ”占位;步骤7.8.4,将“选择节点”及当前规范条文编号填入同行“:LABEL”列单元格,其间以“;”分隔;步骤7.8.5,将同行“:ID”列单元格值设置为当前普通节点数与特殊节点数之和,记为Dri_ID;步骤7.8.6,将Dri_ID作为节点关系表格文件中“:START_ID”列紧后一行空白单元格值,记所处行数为y;步骤7.8.7,将Ei_ID填入第y行“:END_ID”列单元格;步骤7.8.8,在实体关系表中依次查找当前规范条文中由Ei_ID作为“:START_ID”列单元格值,且具有相同语义逻辑关系的二元谓词所在行“IDD”列单元格值,以该值为实体关系表中第y行“Flag”列单元格值,各值间以“;”分隔;步骤7.8.9,依据各二元谓词间的语义逻辑关系,以“且”或“或”作为第y行“:TYPE”列单元格值;步骤7.8.10,第y行当前规范编号所在列单元格值设为“ ”占位;步骤7.8.11,若当前规范条文中,以Ei为节点关系表中“:START_ID”列单元格值所在行所存储的二元谓词关系间存在不止一种语义逻辑关系,则重复步骤7.8.6至步骤7.8.10;步骤7.8.12,若当前规范条文有且仅有一个实体Ei存在到本规范中一个以上实体间的二元谓词关系,且二元谓词关系皆为同一语义逻辑关系类型,则完成此条规范条文的图结构表达与存储,否则,按照步骤7.8.13至步骤7.8.16进行;步骤7.8.13,抽取当前规范条文中各简单句Sj组成子句集合Sentence_Set{S1,S2,S3……};步骤7.8.14,分别以子句集合Sentence_Set中各子句Sj首个实体Ej所对应Ej_ID依次为节点关系表中“:END_ID”列紧后行空白单元格值,记行号为yj;步骤7.8.14,以Dri_ID为节点关系表第yj行“:START_ID”列单元格值;步骤7.8.15,以“子句”为节点关系表第yj行“:TYPE”列单元格值;步骤7.8.16,通过查找节点关系表格文件,抽取本规范条文中具有一个以上出度的实体节点,依次以各实体节点所引出,且表示当前子句Sj中的谓词关系所在行的“IDD”列单元格值为节点关系表第yj行“Flag”列单元格值,各值间采用“,”分隔。
5.根据权利要求4所述的一种基于图数据库的建筑设计规范知识图谱构建方法,其特征在于,所述步骤7.8中一个以上实体、多个实体、实体所处简单句间存在“且”或“或”的语义逻辑关系以及步骤7.8.12中的一个以上实体中的实体指一元谓词整体或三元谓词整体。
技术领域
本发明属于建筑图谱构建方法技术领域,涉及一种基于图数据库的建筑设计规范知识图谱构建方法。
背景技术
以知识图谱的形式进行中文设计规范的表达与存储,已成为建筑工程施工领域智能化发展的关键环节。图结构的数据存储模式由节点、边、标签及节点属性组成。通常以节点表示实体,以边的类型表达两实体间的关系,以节点属性表达实体特性。此种存储模式可准确表达英文语义信息,但由于中文与英文在句法语态及句式结构等方面存在一定的差异,适用于英文的图结构存储模式不尽能有效的存储表达中文语义信息。同时,建筑设计所涵盖行业规范用词表达相对晦涩,各实体间与子条文间往往存在隐式逻辑关系。庞大的实体数量及繁杂的关联关系为中文规范语义信息存储与表达带来了巨大困难。
发明内容
本发明的目的是提供一种基于图数据库的建筑设计规范知识图谱构建方法,解决了现有技术中存在的针对英文的图结构数据存储模式不能准确表达中文规范语义信息的问题,提出了表格化规范语义表达与存储模板。
本发明所采用的技术方案是,一种基于图数据库的建筑设计规范知识图谱构建方法,具体按照如下步骤实施:
步骤1,抽取待处理存储规范中的全部实体,构建规范语义存储实体集合Entity_Set1{E1,E2,E3,…};
步骤2,对步骤1所得实体集合Entity_Set1{E1,E2,…,E3}进行聚类去重操作,得到去重后的实体集合Entity_Set3;
步骤3,建立普通节点表格文件,以“Name”为第一列首行单元格值,以“单位”为第二列首行单元格值,以“:LABEL”为第三列首行单元格值,以“:ID”为第四列首行单元格值,然后将实体集合Entity_Set3中各实体Ei(i=1,2,3……)填入普通节点表格文件中;
步骤4,建立特殊节点表格文件,分别以“Name”,“:LABEL”,“:ID”为首行第一至三列单元格值;
步骤5,建立节点关系表格文件,分别以“:START_ID”,“:END_ID”,“Start”,“End”,“Flag”,“IDD”,“:TYPE”为首行第一至七列单元格值,节点关系表中从第二行起,各行依次分别存储一条实体关系,每增加一则关系,便为该关系所在行“IDD”列单元格填入An,其中,n为已存储关系数;
步骤6,针对具体规范条文,将步骤5建立的节点关系表首行紧后一列单元格值设置为该规范条文编号,对于具有二级编号的规范条文,则将各二级条文分作一列;
步骤7,分析梳理当前规范条文中各实体间谓词关系,分别在普通节点表格文件中查找本规范条文中有关实体Ei(i=1,2,3……)所对应“:ID”列单元格值,记为Ei_ID(i=1,2,3……);
步骤8,依次对规范中各规范条文按照步骤6进行表达与存储;
步骤9,将普通节点表格文件、特殊节点表格文件、节点关系表格文件采用UTF-8编码方式,以.CSV文件格式进行存储,以便导入Neo4j数据库;
步骤10,借助Neo4j-import工具,将上述.CSV文件依照普通节点表,特殊节点表,节点关系表的顺序,按照Neo4j数据批量导入格式,依次导入Neo4j数据库,从而完成建筑设计所涵盖规范语义信息的图结构存储与表达。
本发明的特征还在于,
步骤2具体为:
步骤2.1,将语义表达相近的实体进行聚类,统一抽象为相应实体,得到实体集合Entity_Set2;
步骤2.2,去除实体集合Entity_Set2中的重复实体,得到实体集合Entity_Set3。
步骤3中将实体集合Entity_Set3中各实体Ei(i=1,2,3……)填入普通节点表格文件中具体为:
步骤3.1,将实体集合Entity_Set3中各实体Ei(i=1,2,3……)依次作为普通节点表格第一列第i+1行单元格值;
步骤3.2,若实体Ei为带有单位的数字实体,则仅将数字实体作为第一列第i+1行单元格值,将其计量单位保存于第二列同行单元格;
步骤3.3,依次以所处理规范中涉及实体Ei的规范条文编号为第i+1行单元格值,若实体Ei涉及多条规范,则各规范编号间以“;”分隔;
步骤3.4,将第四列第i+1行单元格值设置为i(i=1,2,3……),直至i等于实体集合Entity_Set3中实体总数。
步骤7具体为:
步骤7.1,若某实体Ei与自身存在一元谓词关系,则将实体Ei所对应Ei_ID分别填入“:START_ID”和“:END_ID”所在列紧后行空白单元格,记所处行数为y,以该一元谓词关系为第y行“:TYPE”列单元格值;
步骤7.2,若该一元谓词关系同时包含约束程度关系,则将约束程度词填入第y行当前处理规范条文编号所在列单元格,否则该单元格以“”填充;
步骤7.3,若该规范条文中存在某实体Ej到该一元谓词整体间的二元谓词关系,则按照如下操作步骤进行:
步骤7.3.1,若特殊节点表格文件中已存在“:LABEL”列某单元格值为“简单节点”及当前规范条文编号,则仅需记该单元格所在行“:ID”列单元格值为Ori_ID;
步骤7.3.2,若特殊节点表格文件中不存在“:LABEL”列某单元格值为“简单节点”及本规范条文编号,则按照步骤7.3.3至步骤7.3.5进行;
步骤7.3.3,为特殊节点表“Name”列紧后一行空白单元格填入“”占位;
步骤7.3.4,将“简单节点”及当前规范条文编号填入同行“:LABEL”列单元格,其间以“;”分隔;
步骤7.3.5,将同行“:ID”列单元格值设置为当前普通节点数与特殊节点数之和,记为Ori_ID;
步骤7.3.6,将实体Ej所对应Ej_ID填入节点关系表中“:START_ID”列紧后一行空白单元格,记行号为y;
步骤7.3.7,将该一元关系所包含实体Ei所对应Ei_ID填入第y行“:END_ID”列单元格;
步骤7.3.8,以该二元谓词关系为第y行“:TYPE”列单元格值;
步骤7.3.9,若该二元谓词关系同时存在约束程度关系,则将约束程度词作为第y行当前规范编号列单元格值;若不存在约束程度关系,则该单元格以“”占位;
步骤7.3.10,将Ori_ID填入第y+1行“:START_ID”列单元格;
步骤7.3.11,将Ei_ID填入第y+1行“:END_ID”列单元格;
步骤7.3.12,以“简单边”为第y+1行“:TYPE”列单元格值;
步骤7.3.13,以该一元谓词关系所在行“IDD”列单元格值为第y+1行“Start”列单元格值;
步骤7.3.14,以第y行“IDD”列单元格值为第y+1行“End”列单元格值;
步骤7.4,若该规范条文存在某实体Ei到另一实体Ej间的二元谓词关系,则将实体Ei所对应Ei_ID填入“:START_ID”所在列紧后行空白单元格,记所处行数为y,将实体Ej所对应Ej_ID填入第y行“:END_ID”列单元格,以该二元谓词关系为同行“:TYPE”列单元格值;
步骤7.5,若该二元谓词关系同时包含约束程度关系,则将约束程度词填入第y行当前处理规范条文编号所在列单元格,否则该单元格以“”填充;
步骤7.6,若该规范条文中某三个实体Ei、Ej、Ek间存在三元谓词关系Tri,则按照如下操作进行:
步骤7.6.1,若特殊节点表格文件中已存在“Name”列某单元格值为该三元谓词关系,则仅需为此单元格同行“:LABEL”列添加本规范条文编号,与原单元格值采用“;”分隔,并记同行“:ID”列单元格值为Tri_ID;
步骤7.6.2,若特殊节点表格文件中不存在“Name”列某单元格值为该三元谓词关系,则按照步骤7.6.3至步骤7.6.5进行;
步骤7.6.3,为特殊节点表“Name”列紧后一行空白单元格填入该三元谓词关系;
步骤7.6.4,将“复杂节点”及当前规范条文编号填入同行“:LABEL”列单元格,其间以“;”分隔;
步骤7.6.5,将同行“:ID”列单元格值设置为当前普通节点数与特殊节点数之和,记为Tri_ID;
步骤7.6.6,将实体Ei、Ej、Ek所对应Ei_ID、Ej_ID、Ek_ID分别填入节点关系表格文件中“:START_ID”列紧后一行空白单元格,将Tri_ID填入此三行中各行“:END_ID”列单元格;
步骤7.6.7,以该三元谓词关系为此三行中各行“:TYPE”列单元格值;
步骤7.6.8,依据实体Ei、Ej和Ek在该三元谓词关系中语义逻辑顺序,设置此三行中各行当前规范条文编号所在列单元格值为Seq(Seq=1,2,3);
步骤7.7,若该规范条文中某实体Ei与某三元谓词Trj整体间存在二元谓词关系,则按照以下步骤进行:
步骤7.7.1,依据该二元谓词关系中实体Ei和三元谓词Trj的语义逻辑次序,将节点关系表中“:START_ID”列紧后一行空白单元格值设置为Ei_ID或Trj_ID,以标记关系引出节点,将同行“:END_ID”列单元格值设置为另一值,以标记关系指向节点;
步骤7.7.2,以该二元谓词关系为同行“:TYPE”列单元格值;
步骤7.7.3,若该二元谓词关系同时存在约束程度关系,则将约束程度词作为第y行当前规范编号列单元格值;若不存在约束程度关系,则该单元格以“”占位;
步骤7.8,若当前规范实体集合Entity_Set3中某实体Ei,其存在到本规范中一个以上实体间的二元谓词关系,且此多个实体间或实体所处简单句间存在“且”或“或”的语义逻辑关系,则进行其间二元谓词关系存储后,按照如下步骤进行其间语义逻辑关系的表示:
步骤7.8.1,若特殊节点表格文件中已存在“:LABEL”列某单元格值为“选择节点”及当前规范条文编号,则仅需记该单元格所在行“:ID”列单元格值为Dri_ID;
步骤7.8.2,若特殊节点表格文件中不存在“:LABEL”列某单元格值为“选择节点”及本规范条文编号,则按照步骤7.8.3至步骤7.8.5进行;
步骤7.8.3,为特殊节点表“Name”列紧后一行空白单元格填入“”占位;
步骤7.8.4,将“选择节点”及当前规范条文编号填入同行“:LABEL”列单元格,其间以“;”分隔;
步骤7.8.5,将同行“:ID”列单元格值设置为当前普通节点数与特殊节点数之和,记为Dri_ID;
步骤7.8.6,将Dri_ID作为节点关系表格文件中“:START_ID”列紧后一行空白单元格值,记所处行数为y;
步骤7.8.7,将Ei_ID填入第y行“:END_ID”列单元格;
步骤7.8.8,在实体关系表中依次查找当前规范条文中由Ei_ID作为“:START_ID”列单元格值,且具有相同语义逻辑关系的二元谓词所在行“IDD”列单元格值,以该值为实体关系表中第y行“Flag”列单元格值,各值间以“;”分隔;
步骤7.8.9,依据各二元谓词间的语义逻辑关系,以“且”或“或”作为第y行“:TYPE”列单元格值;
步骤7.8.10,第y行当前规范编号所在列单元格值设为“”占位;
步骤7.8.11,若当前规范条文中,以Ei为节点关系表中“:START_ID”列单元格值所在行所存储的二元谓词关系间存在不止一种语义逻辑关系,则重复步骤7.8.6至步骤7.8.10;
步骤7.8.12,若当前规范条文有且仅有一个实体Ei存在到本规范中一个以上实体间的二元谓词关系,且二元谓词关系皆为同一语义逻辑关系类型,则完成此条规范条文的图结构表达与存储,否则,按照步骤7.8.13至步骤7.8.16进行;
步骤7.8.13,抽取当前规范条文中各简单句Sj组成子句集合Sentence_Set{S1,S2,S3……};
步骤7.8.14,分别以子句集合Sentence_Set中各子句Sj首个实体Ej所对应Ej_ID依次为节点关系表中“:END_ID”列紧后行空白单元格值,记行号为yj;
步骤7.8.14,以Dri_ID为节点关系表第yj行“:START_ID”列单元格值;
步骤7.8.15,以“子句”为节点关系表第yj行“:TYPE”列单元格值;
步骤7.8.16,通过查找节点关系表格文件,抽取本规范条文中具有一个以上出度的实体节点,依次以各实体节点所引出,且表示当前子句Sj中的谓词关系所在行的“IDD”列单元格值为节点关系表第yj行“Flag”列单元格值,各值间采用“,”分隔。
步骤7.8中一个以上实体、多个实体、实体所处简单句间存在“且”或“或”的语义逻辑关系以及步骤7.8.12中的一个以上实体中的实体指一元谓词整体或三元谓词整体。
本发明的有益效果是
本发明适用于建筑设计过程中所涵盖的各类规范,为针对中文的计算机自然语言处理及非结构化文档向结构化文档的转化奠定基础,本发明所提出的表格化规范语义表达与存储模板,不仅操作简单、直观便捷,同时符合Neo4j批量导入数据格式要求,可极大的节约人力,提高规范语义信息图结构存储效率。
附图说明
图1是本发明一种基于图数据库的建筑设计规范知识图谱构建方法的总流程图;
图2是本发明一种基于图数据库的建筑设计规范知识图谱构建方法中简单节点标记一元谓词语义逻辑顺序部分的流程图;
图3是本发明一种基于图数据库的建筑设计规范知识图谱构建方法选择节点标记规范条文子句逻辑关系部分的流程图;
图4是本发明一种基于图数据库的建筑设计规范知识图谱构建方法中三元谓词语义表示部分流程图。
具体实施方式
下面结合附图和具体实施方式对本发明进行详细说明。
本发明一种基于图数据库的建筑设计规范知识图谱构建方法,其流程如图1所示,具体按照如下步骤实施:
步骤1,抽取待处理存储规范中的全部实体,构建规范语义存储实体集合Entity_Set1{E1,E2,E3,…};
步骤2,对步骤1所得实体集合Entity_Set1{E1,E2,…,E3}进行聚类去重操作,得到去重后的实体集合Entity_Set3;具体为:
步骤2.1,将语义表达相近的实体进行聚类,统一抽象为相应实体,得到实体集合Entity_Set2;
步骤2.2,去除实体集合Entity_Set2中的重复实体,得到实体集合Entity_Set3;
步骤3,建立普通节点表格文件,以“Name”为第一列首行单元格值,以“单位”为第二列首行单元格值,以“:LABEL”为第三列首行单元格值,以“:ID”为第四列首行单元格值,然后将实体集合Entity_Set3中各实体Ei(i=1,2,3……)填入普通节点表格文件中;其中,将实体集合Entity_Set3中各实体Ei(i=1,2,3……)填入普通节点表格文件中具体为:
步骤3.1,将实体集合Entity_Set3中各实体Ei(i=1,2,3……)依次作为普通节点表格第一列第i+1行单元格值;
步骤3.2,若实体Ei为带有单位的数字实体,则仅将数字实体作为第一列第i+1行单元格值,将其计量单位保存于第二列同行单元格;
步骤3.3,依次以所处理规范中涉及实体Ei的规范条文编号为第i+1行单元格值,若实体Ei涉及多条规范,则各规范编号间以“;”分隔;
步骤3.4,将第四列第i+1行单元格值设置为i(i=1,2,3……),直至i等于实体集合Entity_Set3中实体总数;
步骤4,建立特殊节点表格文件,分别以“Name”,“:LABEL”,“:ID”为首行第一至三列单元格值;
步骤5,建立节点关系表格文件,分别以“:START_ID”,“:END_ID”,“Start”,“End”,“Flag”,“IDD”,“:TYPE”为首行第一至七列单元格值,节点关系表中从第二行起,各行依次分别存储一条实体关系,每增加一则关系,便为该关系所在行“IDD”列单元格填入An,其中,n为已存储关系数;
步骤6,针对具体规范条文,将步骤5建立的节点关系表首行紧后一列单元格值设置为该规范条文编号,对于具有二级编号的规范条文,则将各二级条文分作一列;
步骤7,分析梳理当前规范条文中各实体间谓词关系,分别在普通节点表格文件中查找本规范条文中有关实体Ei(i=1,2,3……)所对应“:ID”列单元格值,记为Ei_ID(i=1,2,3……);具体为:
步骤7.1,若某实体Ei与自身存在一元谓词关系,如:“另一列车”和“站台边缘”等,则将实体Ei所对应Ei_ID分别填入“:START_ID”和“:END_ID”所在列紧后行空白单元格,记所处行数为y,以该一元谓词关系为第y行“:TYPE”列单元格值;
步骤7.2,若该一元谓词关系同时包含约束程度关系,则将约束程度词填入第y行当前处理规范条文编号所在列单元格,否则该单元格以“”填充;
步骤7.3,如图2所示,若该规范条文中存在某实体Ej到该一元谓词整体间的二元谓词关系,则按照如下操作步骤进行:
步骤7.3.1,若特殊节点表格文件中已存在“:LABEL”列某单元格值为“简单节点”及当前规范条文编号,则仅需记该单元格所在行“:ID”列单元格值为Ori_ID;
步骤7.3.2,若特殊节点表格文件中不存在“:LABEL”列某单元格值为“简单节点”及本规范条文编号,则按照步骤7.3.3至步骤7.3.5进行;
步骤7.3.3,为特殊节点表“Name”列紧后一行空白单元格填入“”占位;
步骤7.3.4,将“简单节点”及当前规范条文编号填入同行“:LABEL”列单元格,其间以“;”分隔;
步骤7.3.5,将同行“:ID”列单元格值设置为当前普通节点数与特殊节点数之和,记为Ori_ID;
步骤7.3.6,将实体Ej所对应Ej_ID填入节点关系表中“:START_ID”列紧后一行空白单元格,记行号为y;
步骤7.3.7,将该一元关系所包含实体Ei所对应Ei_ID填入第y行“:END_ID”列单元格;
步骤7.3.8,以该二元谓词关系为第y行“:TYPE”列单元格值;
步骤7.3.9,若该二元谓词关系同时存在约束程度关系,则将约束程度词作为第y行当前规范编号列单元格值;若不存在约束程度关系,则该单元格以“”占位;
步骤7.3.10,将Ori_ID填入第y+1行“:START_ID”列单元格;
步骤7.3.11,将Ei_ID填入第y+1行“:END_ID”列单元格;
步骤7.3.12,以“简单边”为第y+1行“:TYPE”列单元格值;
步骤7.3.13,以该一元谓词关系所在行“IDD”列单元格值为第y+1行“Start”列单元格值;
步骤7.3.14,以第y行“IDD”列单元格值为第y+1行“End”列单元格值;
步骤7.4,若该规范条文存在某实体Ei到另一实体Ej间的二元谓词关系,则将实体Ei所对应Ei_ID填入“:START_ID”所在列紧后行空白单元格,记所处行数为y,将实体Ej所对应Ej_ID填入第y行“:END_ID”列单元格,以该二元谓词关系为同行“:TYPE”列单元格值;
步骤7.5,若该二元谓词关系同时包含约束程度关系,则将约束程度词填入第y行当前处理规范条文编号所在列单元格,否则该单元格以“”填充;
步骤7.6,若该规范条文中某三个实体Ei、Ej、Ek间存在三元谓词关系Tri,,如:“...与...间的...”和“连接...与...的...”等,则按照如下操作进行:
步骤7.6.1,若特殊节点表格文件中已存在“Name”列某单元格值为该三元谓词关系,则仅需为此单元格同行“:LABEL”列添加本规范条文编号,与原单元格值采用“;”分隔,并记同行“:ID”列单元格值为Tri_ID;
步骤7.6.2,若特殊节点表格文件中不存在“Name”列某单元格值为该三元谓词关系,则按照步骤7.6.3至步骤7.6.5进行;
步骤7.6.3,为特殊节点表“Name”列紧后一行空白单元格填入该三元谓词关系;
步骤7.6.4,将“复杂节点”及当前规范条文编号填入同行“:LABEL”列单元格,其间以“;”分隔;
步骤7.6.5,将同行“:ID”列单元格值设置为当前普通节点数与特殊节点数之和,记为Tri_ID;
步骤7.6.6,将实体Ei、Ej、Ek所对应Ei_ID、Ej_ID、Ek_ID分别填入节点关系表格文件中“:START_ID”列紧后一行空白单元格,将Tri_ID填入此三行中各行“:END_ID”列单元格;
步骤7.6.7,以该三元谓词关系为此三行中各行“:TYPE”列单元格值;
步骤7.6.8,依据实体Ei、Ej和Ek在该三元谓词关系中语义逻辑顺序,设置此三行中各行当前规范条文编号所在列单元格值为Seq(Seq=1,2,3);
步骤7.7,若该规范条文中某实体Ei与某三元谓词Trj整体间存在二元谓词关系,则按照以下步骤进行:
步骤7.7.1,依据该二元谓词关系中实体Ei和三元谓词Trj的语义逻辑次序,将节点关系表中“:START_ID”列紧后一行空白单元格值设置为Ei_ID或Trj_ID,以标记关系引出节点,将同行“:END_ID”列单元格值设置为另一值,以标记关系指向节点;
步骤7.7.2,以该二元谓词关系为同行“:TYPE”列单元格值;
步骤7.7.3,若该二元谓词关系同时存在约束程度关系,则将约束程度词作为第y行当前规范编号列单元格值;若不存在约束程度关系,则该单元格以“”占位;
如图3所示,步骤7.8,若当前规范实体集合Entity_Set3中某实体Ei,其存在到本规范中一个以上实体(一元谓词整体或三元谓词整体)间的二元谓词关系,且此多个实体(一元谓词整体或三元谓词整体)间或实体(一元谓词整体或三元谓词整体)所处简单句间存在“且”或“或”的语义逻辑关系,则进行其间二元谓词关系存储后,按照如下步骤进行其间语义逻辑关系的表示:
步骤7.8.1,若特殊节点表格文件中已存在“:LABEL”列某单元格值为“选择节点”及当前规范条文编号,则仅需记该单元格所在行“:ID”列单元格值为Dri_ID;
步骤7.8.2,若特殊节点表格文件中不存在“:LABEL”列某单元格值为“选择节点”及本规范条文编号,则按照步骤7.8.3至步骤7.8.5进行;
步骤7.8.3,为特殊节点表“Name”列紧后一行空白单元格填入“”占位;
步骤7.8.4,将“选择节点”及当前规范条文编号填入同行“:LABEL”列单元格,其间以“;”分隔;
步骤7.8.5,将同行“:ID”列单元格值设置为当前普通节点数与特殊节点数之和,记为Dri_ID;
步骤7.8.6,将Dri_ID作为节点关系表格文件中“:START_ID”列紧后一行空白单元格值,记所处行数为y;
步骤7.8.7,将Ei_ID填入第y行“:END_ID”列单元格;
步骤7.8.8,在实体关系表中依次查找当前规范条文中由Ei_ID作为“:START_ID”列单元格值,且具有相同语义逻辑关系的二元谓词所在行“IDD”列单元格值,以该值为实体关系表中第y行“Flag”列单元格值,各值间以“;”分隔;
步骤7.8.9,依据各二元谓词间的语义逻辑关系,以“且”或“或”作为第y行“:TYPE”列单元格值;
步骤7.8.10,第y行当前规范编号所在列单元格值设为“”占位;
步骤7.8.11,若当前规范条文中,以Ei为节点关系表中“:START_ID”列单元格值所在行所存储的二元谓词关系间存在不止一种语义逻辑关系,则重复步骤7.8.6至步骤7.8.10;
步骤7.8.12,若当前规范条文有且仅有一个实体Ei存在到本规范中一个以上实体(一元谓词整体或三元谓词整体)间的二元谓词关系,且二元谓词关系皆为同一语义逻辑关系类型,则完成此条规范条文的图结构表达与存储,否则,按照步骤7.8.13至步骤7.8.16进行;
步骤7.8.13,抽取当前规范条文中各简单句Sj组成子句集合Sentence_Set{S1,S2,S3……};
步骤7.8.14,分别以子句集合Sentence_Set中各子句Sj首个实体Ej所对应Ej_ID依次为节点关系表中“:END_ID”列紧后行空白单元格值,记行号为yj;
步骤7.8.14,以Dri_ID为节点关系表第yj行“:START_ID”列单元格值;
步骤7.8.15,以“子句”为节点关系表第yj行“:TYPE”列单元格值;
步骤7.8.16,通过查找节点关系表格文件,抽取本规范条文中具有一个以上出度的实体节点,依次以各实体节点所引出,且表示当前子句Sj中的谓词关系所在行的“IDD”列单元格值为节点关系表第yj行“Flag”列单元格值,各值间采用“,”分隔;
步骤8,依次对规范中各规范条文按照步骤6进行表达与存储;
步骤9,将普通节点表格文件、特殊节点表格文件、节点关系表格文件采用UTF-8编码方式,以.CSV文件格式进行存储,以便导入Neo4j数据库;
步骤10,借助Neo4j-import工具,将上述.CSV文件依照普通节点表,特殊节点表,节点关系表的顺序,按照Neo4j数据批量导入格式,依次导入Neo4j数据库,从而完成建筑设计所涵盖规范语义信息的图结构存储与表达。
实施例
以GB 50157-2013《地铁设计规范》第15.1节供电中第15.1.23条规范为例。
15.1.23在地下使用的主要材料应选用无卤、低烟的阻燃或耐火的产品。
步骤1,抽取《地铁设计规范》中全部实体,组成该规范的实体集合Entity_Set1{E1,E2,E3,…}。此条规范中应抽取实体:E1=“供电系统”,E2=“材料”,E3=“无卤”,E4=“低烟”,E5=“阻燃产品”,E6=“耐火材料”。
步骤2,对实体集合Entity_Set1进行聚类去重操作,得到实体集合Entity_Set3。由于本例仅以一条规范为例,且本列中无相似与重复实体,故实体集合Entity_Set1与实体集合Entity_Set3内容相同。
步骤3,建立普通节点表格文件,以“Name”为第一列首行单元格值,以“单位”为第二列首行单元格值,以“:LABEL”为第三列首行单元格值,以“:ID”为第四列首行单元格值。
步骤3.1,将实体集合Entity_Set3中各实体“供电系统”,“材料”,“无卤”,“低烟”,“阻燃产品”,“耐火材料”依次分别作为第一列第二至七行单元格值。
步骤3.2,以本规范条文编号“15.1.23”为第三列第二至七行单元格值。
步骤3.3,以“1”,“2”,“3”,“4”,“5”,“6”分别为第四列第二至七行单元格值。
步骤4,建立特殊节点表格文件,分别以“Name”,“:LABEL”,“:ID”为首行第一至三列单元格值。
步骤5,建立节点关系表格文件,分别以“:START_ID”,“:END_ID”,“Start”,“End”,“Flag”,“IDD”,“:TYPE”为首行第一至七列单元格值。
步骤:5.1,将当前规范条文编号“15.1.23”填入节点关系表中首行第八列单元格。
步骤5.2,通过查找普通节点表格文件,实体E1“供电系统”所在行“IDD”列单元格值为“1”,即E1_ID=“1”,依次查找剩余实体所在行的“IDD”值。
步骤6,依据本规范条文语义,实体E1“供电系统”与自身存在“地下供电系统”一元谓词关系。
步骤6.1,将实体E1“供电系统”所对应E1_ID(即“1”)填入节点关系表中第一列第二行和第二列第二行单元格。
步骤6.2,将一元谓词“在地下使用”填入第七列第二行单元格。
步骤6.3,由于本一元谓词不具有约束程度语义关系,则以“”为节点关系表中第八列第二行单元格值。
步骤6.4,以“A1”为第六列第二行单元格值。
步骤7,依据本规范条文语义,实体E2“材料”与自身存在“主要材料”一元谓词关系。
步骤7.1,将实体E2“材料”所对应E2_ID(即“2”)填入节点关系表中第一列第三行和第二列第三行单元格。
步骤7.2,将一元谓词“主要”填入第七列第三行单元格。
步骤7.3,由于本一元谓词不具有约束程度语义关系,则以“”为节点关系表中第八列第三行单元格值。
步骤7.4,以“A2”为第六列第三行单元格值。
步骤8,依据本规范条文语义,存在实体E1“供电系统”到一元谓词“主要材料”整体间的二元谓词“属性”关系。
步骤8.1,将实体E1“供电系统”所对应E1_ID(即“1”)填入节点关系表中第一列第四行单元格。
步骤8.2,将实体E2“材料”所对应E2_ID(即“2”)填入节点关系表中第二列第四行单元格。
步骤8.3,将二元谓词“属性”填入节点关系表中第七列第四行单元格。
步骤8.4,由于该二元谓词不具有约束程度语义关系,则以“”为节点关系表中第八列第四行单元格值。
步骤8.5,以“A3”为第六列第四行单元格值。
步骤8.6,以“”为特殊节点表格文件中第一列第二行单元格值。
步骤8.7,以“简单节点;15.1.23”为特殊节点表格文件中第二列第二行单元格值。
步骤8.8,以全体节点总数“7”为特殊节点表格文件中第三列第二行单元格值,即Or1_ID=7。
步骤8.9,以Or1_ID(即“7”)为节点关系表格文件中第一列第五行单元格值。
步骤8.10,以实体实体E2“材料”所对应E2_ID(即“2”)为节点关系表格文件中第二列第五行单元格值。
步骤8.11,以“简单边”为节点关系表格文件中第七列第五行单元格值。
步骤8.12,以一元谓词关系“主要材料”所在行的“IDD”列单元格值(即“A2”)为节点关系表格文件中第三列第五行单元格值。
步骤8.13,以二元谓词关系“属性”所在行的“IDD”列单元格值(即“A3”)为节点关系表格文件中第四列第五行单元格值。
步骤8.14,以“A4”为节点关系表格文件中第六列第五行单元格值。
步骤9,依据本规范条文语义,存在实体E2“材料”到实体E5“阻燃产品”的“选用”二元谓词关系。
步骤9.1,将实体E2“材料”所对应E2_ID(即“2”)填入节点关系表中第一列第六行单元格。
步骤9.2,将实体E5“阻燃产品”所对应E5_ID(即“5”)填入节点关系表中第二列第六行单元格。
步骤9.3,将二元谓词“选用”填入节点关系表中第七列第六行单元格。
步骤9.4,由于该二元谓词同时存在约束程度语义关系“应”,则以“应”为节点关系表中第八列第六行单元格值。
步骤9.5,以“A5”为第六列第六行单元格值。
步骤10,依据本规范条文语义,存在实体E2“材料”到实体E6“耐火材料”的“选用”二元谓词关系。
步骤10.1,将实体E2“材料”所对应E2_ID(即“2”)填入节点关系表中第一列第七行单元格。
步骤10.2,将实体E6“耐火材料”所对应E6_ID(即“6”)填入节点关系表中第二列第七行单元格。
步骤10.3,将二元谓词“选用”填入节点关系表中第七列第七行单元格。
步骤10.4,由于该二元谓词同时存在约束程度语义关系“应”,则以“应”为节点关系表中第八列第七行单元格值。
步骤10.5,以“A6”为第六列第七行单元格值。
步骤11,依据本规范条文语义,存在实体E6“耐火材料”到实体E3“无卤”的“特性”二元谓词关系。
步骤11.1,将实体E6“耐火材料”所对应E6_ID(即“6”)填入节点关系表中第一列第八行单元格。
步骤11.2,将实体E3“无卤”所对应E3_ID(即“3”)填入节点关系表中第二列第八行单元格。
步骤11.3,将二元谓词“特性”填入节点关系表中第七列第八行单元格。
步骤11.4,由于该二元谓词同时存在约束程度语义关系“应”,则以“应”为节点关系表中第八列第八行单元格值。
步骤11.5,以“A7”为第六列第八行单元格值。
步骤12,依据本规范条文语义,存在实体E6“耐火材料”到实体E4“低烟”的“特性”二元谓词关系。
步骤12.1,将实体E6“耐火材料”所对应E6_ID(即“6”)填入节点关系表中第一列第九行单元格。
步骤12.2,将实体E4“低烟”所对应E4_ID(即“4”)填入节点关系表中第二列第九行单元格。
步骤12.3,将二元谓词“特性”填入节点关系表中第七列第九行单元格。
步骤12.4,由于该二元谓词同时存在约束程度语义关系“应”,则以“应”为节点关系表中第八列第九行单元格值。
步骤12.5,以“A8”为第六列第九行单元格值。
步骤13,依据本规范条文语义,存在实体E5“阻燃产品”到实体E3“无卤”的“特性”二元谓词关系。
步骤13.1,将实体E5“阻燃产品”所对应E5_ID(即“5”)填入节点关系表中第一列第十行单元格。
步骤13.2,将实体E3“无卤”所对应E3_ID(即“3”)填入节点关系表中第二列第十行单元格。
步骤13.3,将二元谓词“特性”填入节点关系表中第七列第十行单元格。
步骤13.4,由于该二元谓词同时存在约束程度语义关系“应”,则以“应”为节点关系表中第八列第十行单元格值。
步骤13.5,以“A9”为第六列第十行单元格值。
步骤14,依据本规范条文语义,存在实体E5“阻燃产品”到实体E4“低烟”的“特性”二元谓词关系。
步骤14.1,将实体E5“阻燃产品”所对应E5_ID(即“5”)填入节点关系表中第一列第十一行单元格。
步骤14.2,将实体E4“低烟”所对应E4_ID(即“4”)填入节点关系表中第二列第十一行单元格。
步骤14.3,将二元谓词“特性”填入节点关系表中第七列第十一行单元格。
步骤14.4,由于该二元谓词同时存在约束程度语义关系“应”,则以“应”为节点关系表中第八列第十一行单元格值。
步骤14.5,以“A10”为第六列第十一行单元格值。
步骤15,由于本规范条文中存在实体E2“材料”,其到实体E5“阻燃产品”和实体E6“耐火材料”间皆有二元谓词关系,且存在到自身的“主要材料”一元谓词关系。
步骤15.1,以“”为特殊节点表格文件中第一列第三行单元格值。
步骤15.2,以“选择节点;15.1.23”为特殊节点表格文件中第二列第三行单元格值。
步骤15.3,以全部节点总数“8”为特殊节点表格文件中第三列第三行单元格值,即Dr1_ID=8。
步骤15.4,以Dr1_ID(即“8”)为节点关系表格文件中第一列第十二行单元格值。
步骤15.5,以实体E2“材料”所对应E2_ID为节点关系表格文件中第二列第十二行单元格值。
步骤15.6,依据本规范条文语义,“主要材料应选用阻燃产品”和“主要材料应选用耐火材料”间存在“或”的语义逻辑关系,因此以“或”为节点关系表格文件中第七列第十二行单元格值。
步骤15.7,以两二元谓词所在行的“IDD”列单元格值“A4;A5”为节点关系表格文件中第五列第十二行单元格值。
步骤15.8,以“A11”为节点关系表格文件中第六列第十二行单元格值。
步骤16,由于本规范条文中存在实体E5“阻燃产品”,其到实体E3“无卤”和实体E4“低烟”间皆有二元谓词关系。
步骤16.1,经查找特殊节点表格文件,其第二列第三行已存在单元格值为“选择节点;15.1.23”的单元格值。因此,仅需记该行“IDD”列单元格值Dr1_ID=8。
步骤16.2,以Dr1_ID(即“8”)为节点关系表格文件中第一列第十三行单元格值。
步骤16.3,以实体E5“阻燃产品”所对应E5_ID为节点关系表格文件中第二列第十三行单元格值。
步骤16.4,依据本规范条文语义,“阻燃产品应无卤”和“阻燃产品应低烟”间存在“且”的语义逻辑关系,因此以“且”为节点关系表格文件中第七列第十三行单元格值。
步骤16.5,以两二元谓词所在行的“IDD”列单元格值“A9;A10”为节点关系表格文件中第五列第十三行单元格值。
步骤16.:6,以“A12”为节点关系表格文件中第六列第十三行单元格值。
步骤17,由于本规范条文中存在实体E6“耐火材料”,其到实体E3“无卤”和实体E4“低烟”间皆有二元谓词关系。
步骤17.1,经查找特殊节点表格文件,其第二列第三行已存在单元格值为“选择节点;15.1.23”的单元格值。因此,仅需记该行“IDD”列单元格值Dr1_ID=8。
步骤17.2,以Dr1_ID(即“8”)为节点关系表格文件中第一列第十四行单元格值。
步骤17.3,以实体E6“耐火材料”所对应E6_ID为节点关系表格文件中第二列第十四行单元格值。
步骤17.4,依据本规范条文语义,“耐火材料应无卤”和“耐火材料应低烟”间存在“且”的语义逻辑关系,因此以“且”为节点关系表格文件中第七列第十四行单元格值。
步骤17.5,以两二元谓词所在行的“IDD”列单元格值“A7;A8”为节点关系表格文件中第五列第十四行单元格值。
步骤17.6,以“A13”为节点关系表格文件中第六列第十四行单元格值。
步骤18,由于本规范条文中有三个实体存在到一个以上实体间的二元谓词关系,因此梳理该规范条文中子句组成子句集合Sentence_Set{S1,S2,S3,S4}。S1=“地下供电设备的主要材料应选用无卤的阻燃产品”;S2=“地下供电设备的主要材料应选用低烟的阻燃产品”;S3=“地下供电设备的主要材料应选用无卤的耐火材料”;S4=“地下供电设备的主要材料应选用低烟的耐火材料”。
步骤18.1,对于子句S1,以该子句首个实体E1“供电设备”所对应E1_ID为节点关系表中第二列第十五行单元格值。
步骤18.2,以Dr1_ID(即“8”)为节点关系表格文件中第一列第十五行单元格值。
步骤18.3,以“子句”为节点关系表格文件中第七列第十五行单元格值。
步骤18.4,经查找节点关系表格文件,本规范条文中节点“供电系统”、“材料”、“阻燃产品”、“耐火材料”为具有多个出度的节点,其表示子句S1中谓词关系“在地下使用的供电系统”,“供电系统的材料”,“材料应选用阻燃产品”,“阻燃产品应具有无卤的特性”。依次以此谓词关系所在行“IDD”列单元格值(即“A1,A3,A5,A9”)为节点关系表格文件中第五列第十五行单元格值。
步骤18.5,对于子句S2,以该子句首个实体E1“供电设备”所对应E1_ID为节点关系表中第二列第十六行单元格值。
步骤18.6,以Dr1_ID(即“8”)为节点关系表格文件中第一列第十六行单元格值。
步骤18.7,以“子句”为节点关系表格文件中第七列第十六行单元格值。
步骤18.8,经查找节点关系表格文件,本规范条文中节点“供电系统”、“材料”、“阻燃产品”、“耐火材料”为具有多个出度的节点,其表示子句S2中谓词关系“在地下使用的供电系统”,“供电系统的材料”,“材料应选用阻燃产品”,“阻燃产品应具有低烟的特性”。依次以此谓词关系所在行“IDD”列单元格值(即“A1,A3,A5,A10”)为节点关系表格文件中第五列第十五行单元格值。
步骤18.9,对于子句S3,以该子句首个实体E1“供电设备”所对应E1_ID为节点关系表中第二列第十七行单元格值。
步骤18.10,以Dr1_ID(即“8”)为节点关系表格文件中第一列第十七行单元格值。
步骤18.11,以“子句”为节点关系表格文件中第七列第十七行单元格值。
步骤18.12,经查找节点关系表格文件,本规范条文中节点“供电系统”、“材料”、“阻燃产品”、“耐火材料”为具有多个出度的节点,其表示子句S3中谓词关系“在地下使用的供电系统”,“供电系统的材料”,“材料应选用耐火材料”,“耐火材料应具有无卤的特性”。依次以此谓词关系所在行“IDD”列单元格值(即“A1,A3,A6,A7”)为节点关系表格文件中第五列第十七行单元格值。
步骤18.13,对于子句S4,以该子句首个实体E1“供电设备”所对应E1_ID为节点关系表中第二列第十八行单元格值。
步骤18.14,以Dr1_ID(即“8”)为节点关系表格文件中第一列第十八行单元格值
步骤18.15,以“子句”为节点关系表格文件中第七列第十八行单元格值。
步骤18.16,经查找节点关系表格文件,本规范条文中节点“供电系统”、“材料”、“阻燃产品”、“耐火材料”为具有多个出度的节点,其表示子句S4中谓词关系“在地下使用的供电系统”,“供电系统的材料”,“材料应选用耐火材料”,“耐火材料应具有低烟的特性”。依次以此谓词关系所在行“IDD”列单元格值(即“A1,A3,A6,A8”)为节点关系表格文件中第五列第十八行单元格值。
步骤19,将普通节点表格文件、特殊节点表格文件、节点关系表格文件采用UTF-8编码方式,以.CSV文件格式进行存储。
步骤20,借助Neo4j-import工具,将以上.CSV文件依照普通节点表,特殊节点表,节点关系表的顺序依次导入Neo4j数据库,从而完成本规范条文语义信息的图结构存储与表达。





评论
全部评论
共{{commentCount}}条{{rs.Msg_Content}}