Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何检查子图之间的同构_Python_Sparql_Rdf_Rdflib - Fatal编程技术网

Python 如何检查子图之间的同构

Python 如何检查子图之间的同构,python,sparql,rdf,rdflib,Python,Sparql,Rdf,Rdflib,我想在更大的数据集中检查子图之间的同构。在rdflib中有没有一种方法可以做到这一点,而不必将图形分解为多个变量,如rdflib文档中的示例所示: g1 = Graph().parse(format='n3', data=''' @prefix : <http://example.org/ns#> . []:rel <http://example.org/a> ; :rel <http://example.org/b> ;

我想在更大的数据集中检查子图之间的同构。在rdflib中有没有一种方法可以做到这一点,而不必将图形分解为多个变量,如rdflib文档中的示例所示:

g1 = Graph().parse(format='n3', data='''
     @prefix : <http://example.org/ns#> .
     []:rel <http://example.org/a> ;
      :rel <http://example.org/b> ;
      :rel [ :label "A bnode." ] .
 ''')
 g2 = Graph().parse(format='n3', data='''
     @prefix ns: <http://example.org/ns#> .
     []:rel <http://example.org/a> ;
      :rel <http://example.org/b> ;
      :rel [ :label "A bnode." ] .
 ''')
isomorphic(g1, g2)
g1=Graph()
@前缀:。
[]:rel;
:rel;
:rel[:标签“A B节点”。]。
''')
g2=Graph().parse(格式为'n3',数据为'''
@前缀ns:。
[]:rel;
:rel;
:rel[:标签“A B节点”。]。
''')
同构(g1,g2)
我的图表

[]:rel <http://example.org/a> ;
      :rel <http://example.org/b> ;
      :rel [ :label "A bnode." ] .

[]:rel <http://example.org/a> ;
      :rel <http://example.org/c> ;
      :rel [ :label "A bnode." ] .

[]:rel <http://example.org/a> ;
      :rel <http://example.org/b> ;
      :rel [ :label "A bnode." ] .
[]:rel;
:rel;
:rel[:标签“A B节点”。]。
[]:rel;
:rel;
:rel[:标签“A B节点”。]。
[]:rel;
:rel;
:rel[:标签“A B节点”。]。

谢谢你的帮助

对不起,但我认为没有办法做到这一点。
数据集中的图形本身并不可用-您必须通过图形找到它们-因此您不能执行以下操作:


#无函数get_图
ds.get_图(标识符=”http://eg.org/a")\
.isomorphic(ds.get_)图(标识符=”http://eg.org/b"))
#或
#无函数get_图
同构(
ds.get_图(标识符=”http://eg.org/a"),
ds.get_图(标识符=”http://eg.org/b"),
)

也许我们——RDFlib维护人员——应该添加一个从数据集中导出图形的函数。。。