我使用rdflib
将数据(由用户通过GUI输入)转换为RDF数据
这些数据的结构相对复杂,对象之间相互引用,诸如此类。
我的做法基本上是,循环所有对象,创建其图形,然后将所有这些图形添加到一起
到目前为止,这种方法效果很好。但现在我遇到了这样的情况,一个对象不引用任何其他对象,并且没有引用任何对象。
这就产生了一个图,它与图的其余部分完全分离
理论上,我可以检查每个对象,如果它与另一个对象有连接,然后再将其添加到图形中,但这将非常复杂。是否有可能通过rdflib
得到一个图的子图,即“连接到某个节点的所有东西”
为了澄清,我举了一个例子来说明我的意思:
@prefix ex: <http://example.org/stuff/1.0/> .
ex:main-thing a ex:thing ;
ex:hasTitle "The main Thing" ;
ex:isRelatedTo ex:thing-01 ;
ex:isRelatedTo ex:thing-02 .
ex:thing-01 a ex:thing;
ex:hasTitle "Thing 1" ;
ex:hasDescription "Is referenced by the main thing." .
ex:thing-02 a ex:thing;
ex:hasTitle "Thing 2" ;
ex:hasDescription "Is referenced by the main thing, like thing 1." .
ex:thing-03 a ex:thing;
ex:hasTitle "Thing 3" ;
ex:isRelatedTo ex:main-thing ;
ex:hasDescription "Is referencing the main thing itself." .
ex:thing-04 a ex:thing;
ex:hasTitle "Thing 4" ;
ex:isRelatedTo ex:thing-01 ;
ex:hasDescription "Is connected to main thing via thing 1." .
ex:thing-05 a ex:thing;
ex:hasTitle "Thing 5" ;
ex:hasDescription "Is not connected to the main thing at all." .
如果我得到这样一个图,我的意思是这里的所有东西都是连接的,除了ex:thing-05
没有传入或传出连接
我想做的是得到从main-thing
开始的子图,包括所有连接的东西(即除了thing-05
之外的所有thing
)
我希望这能使我的问题更清楚
目前没有回答
相关问题 更多 >
编程相关推荐