我如何在Protege中添加匿名个人?

问题描述 投票:2回答:1

我想使用空白节点在Protege中添加一条语句。例如,如果我将其表示为Turtle RDF,则为something like

[
  rdf:type rdf:Statement ;   #this anonymous resource is a Statement... 
  rdf:subject ex:Paul ;      #...with subject Paul
  rdf:predicate ex:running ; #...predicate running
  rdf:object "10miles" ;     #...and object "10miles"
  ex:hasPeriodStart "2018-04-09T10:00:00"^^xsd:dateTime ;
  ex:hasPeriodEnd "2018-04-09T12:00:00"^^xsd:dateTime ;
].

是否可以在Protege中做类似的事情(无需使用IRI创建具名个人)?

rdf owl protege
1个回答
0
投票

Protege不支持空白节点。实现类似目的的一种方法是为空白节点分配一个临时名称空间。我将举例说明我的意思。假设我具有以下乌龟语法(为简化起见,我省略了前缀),

:jane :firstname   "Jane";
      :lastname    "Doe";
      :contactInfo [:phonenumber "011 739 4751";
                    :email       "[email protected]"] .

然后

[:phonenumber "011 739 4751";
 :email       "[email protected]"] 

是一个空白节点。可以使用空白节点_:janeContactInfo将其重写,如下所示:

:jane :firstname   "Jane";
      :lastname    "Doe";
      : contactInfo _:janeContactInfo .

 _:janeContactInfo :phonenumber "011 739 4751";
                   :email       "[email protected]" .

这可以用曼彻斯特语法(这是Protege中使用的语法)表示为:

ObjectProperty: contactInfo 
DataProperty: firstname
DataProperty: lastname
DataProperty: phonenumber
DataProperty: email

Individual: jane
Facts:
  ex:firstname, "Jane",
  ex:lastname, "Doe", 
  ex:contactInfo, _janeContactInfo

Individual: _janeContactInfo
Facts:
   ex:phonenumber, "011 739 4751"
   ex:email, "[email protected]"  

janeContactInfo个人可以根据需要放置在临时名称空间中。

© www.soinside.com 2019 - 2024. All rights reserved.