Node的类型结构

Node的类型结构

Node有五种子类型:Node_Blank, Node_Anon, Node_URI, Node_Variable, and Node_ANY.(即:空白结点,匿名结点,URI结点,属性结点,ANY结点)。

Jena中一共有8个类来描述Node结点,其中Node是最上层的类,其余的结点类型都是继承自Node结点。集成结构如下图所示:

 

1Node:最顶层的结点类。

 属性:

ANYNode_ANY类型,表示属于任意类型。

NULLNode_NULL类型,表示空节点。

(以上两个属性都是static类型,所有类公有)

THRESHOLDint类型,门限临界值(10000个)

labelObject类型,标示一个节点。

presentNodeCache类型(记录当前的节点信息?)

 

 

(2)Node_Concrete:表示本体中实际存在的节点。一共包含四种子类型:空白结点,数据结点,NULL结点,URI结点。

 

 

3Node_Blank表示空白结点,如有标识没有URI的节点。(标识匿名结点,如下)|
  <rdf:Description rdf:nodeID="A0">
    <vcard:Family>Smith</vcard:Family>

    <vcard:Given>John</vcard:Given>

  </rdf:Description>

 

 

(4)Node_Literal:数据类型的结点。Literal支持不同的数据类型(String int等)。数据的URI是根据其类型决定的。

 

(5)Node_NULL:用于辨别数据库中的真实结点数据。

 

(6)Node_URI:可以根据URI识别的RDF结点。

 

(7)Node_Fluid:用于推理阶段匹配的结点。包括ANY结点和Variable结点。

 

(8)Node_ANY:该节点表示任意类型的意思。例如一个规则中,如果对一个statement的属性没有要求,那么可以描述属性结点为ANY

 

(9)Node_Variable:该节点表示变量结点,用于描述规则中的变量。(?X等)

 


猜你喜欢

转载自sophieling.iteye.com/blog/867900
今日推荐