2010-08-04 41 views
12

RDF/OWL能够表示多少用自然语言表达的概念?我仍然在学习RDF和其他语义技术,但正如我目前所了解的那样,信息通常表示为表单的三元组(主体,谓词,对象)。所以我可以想象一下,“鲍勃有一顶帽子”的句子可能会如何表现出来。然而,你会如何表述一个更复杂的句子,比如“第42街上的鲍勃,在业主批准后在商场有工作”?代表名词/动词/所有权/因果关系/时态等的标签是否有约定?将自然语言表示为RDF

请注意,我不是问如何自动将任意自然语言文本转换为RDF(因为目前看起来不可能)。我只是想了解RDF如何被用来表示与自然语言相同的信息。

回答

11

也许看看Attempto project的目标是定义一个可以自动映射到一阶逻辑的英文片段。这项工作的一部分是映射到OWL 2 DL。见例如Writing OWL ontologies in ACE

你的例句

Bob, over on 42nd street, will have a job at the Mall after the owner approves 

可以在Attempto受控英语(ACE)为

If an owner of Mall approves John whose address is "42nd street" 
    then he is employed by Mall. 

被改写(或类似的东西,这取决于你到底打算说。)

这句话可以自动映射到OWL2 SubClassOf -axiom

SubClassOf(
     ObjectIntersectionOf(
     ObjectOneOf(
      :Mall 
     ) 
     ObjectSomeValuesFrom(
      :owner 
      ObjectSomeValuesFrom(
       :approve 
       ObjectIntersectionOf(
        ObjectOneOf(
        :John 
       ) 
        DataHasValue(
        :address 
        "42nd street"^^<http://www.w3.org/2001/XMLSchema#string> 
       ) 
       ) 
      ) 
     ) 
    ) 
     ObjectSomeValuesFrom(
     :employ 
     ObjectOneOf(
      :John 
     ) 
    ) 
    ) 

这个映射实现有关基本词类某些约定:

  • 普通名词映射到OWL类名
  • 适当的名称映射到OWL个人的名字
  • 及物动词,传递形容词和 -constructions映射到OWL属性名称:数据属性名称,如果它们的参数是数字或字符串,则返回对象属性名称

此映射不支持ACE支持的许多单词类,例如,不及物动词和不及物动词,不及物形容词和副词。覆盖范围可以扩大,例如不及物动词可以映射到OWL类(例如,“约翰睡觉,”可以被认为是指个人约翰属于睡眠者类)。不太清楚如何处理双转喻动词和副词。一般来说,英语在构成块(名词,不同类型的形容词,不同类型的动词......)方面比OWL(它具有类,个人,对象和数据属性,以及(键入)数据项(如字符串和数字)。这只是“单词与实体”级别。像时态这样的东西比较复杂,因为他们有许多英文表面表达,而OWL方面缺乏任何内置功能。

+0

干得好。经过一番调查,确切的APE电话是: ./ape.exe -text“如果p:Mall v:的所有者同意p:John的地址是”42nd street“,那么John是n的雇员: p:购物中心。“-cparaphrase – Cerin 2010-08-06 15:33:37

+0

有趣的是,ACE支持的大多数功能都不被RDF/OWL明确支持,因为它们不支持形容词,副词和其他常见词类。试图将我的句子导出到OWL会产生一个错误,但如果我将它作为话语表示结构(DRS)导出,则工作正常。 – Cerin 2010-08-08 05:32:22

+0

@ chris -s我已经扩展了答案以回应您的第二条评论。 – Kaarel 2010-08-09 03:42:27