将自然语言表示为RDF
问题描述:
RDF/OWL能够表示多少用自然语言表达的概念?我仍然在学习RDF和其他语义技术,但正如我目前所了解的那样,信息通常表示为表单的三元组(主体,谓词,对象)。所以我可以想象一下,“鲍勃有一顶帽子”的句子可能会如何表现出来。然而,你会如何表述一个更复杂的句子,比如“第42街上的鲍勃,在业主批准后在商场有工作”?代表名词/动词/所有权/因果关系/时态等的标签是否有约定?将自然语言表示为RDF
请注意,我不是问如何自动将任意自然语言文本转换为RDF(因为目前看起来不可能)。我只是想了解RDF如何被用来表示与自然语言相同的信息。
答
也许看看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方面缺乏任何内置功能。
干得好。经过一番调查,确切的APE电话是: ./ape.exe -text“如果p:Mall v:的所有者同意p:John的地址是”42nd street“,那么John是n的雇员: p:购物中心。“-cparaphrase – Cerin 2010-08-06 15:33:37
有趣的是,ACE支持的大多数功能都不被RDF/OWL明确支持,因为它们不支持形容词,副词和其他常见词类。试图将我的句子导出到OWL会产生一个错误,但如果我将它作为话语表示结构(DRS)导出,则工作正常。 – Cerin 2010-08-08 05:32:22
@ chris -s我已经扩展了答案以回应您的第二条评论。 – Kaarel 2010-08-09 03:42:27