OWL使用命名空间处理重复的类名

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

我正在测试使用OWL和Pr​​otoge构建本体。 Protoge(因此我也假设,OWL也是如此)不允许重复的实体名称。我担心的是,根据具体情况,某些术语具有不同的含义。例如,“事物”在法律中具有特定领域的含义,但在法律文件中也常常以其共同含义使用。

当然,我可以通过在给出技术定义的每个实体上附加“技术”来简单地区分这两者。

但是,我认为更好的方法是命名空间。与普通编程语言一样,我可以在文件“a”和文件“b”中定义“thing”,并将它们标识为“a.thing”和“b.thing”。但是,OWL导入似乎不会以这种方式工作,导入的本体中的实体仍然由其原始名称标识,而不是由名称空间限定名称标识。

因此,在OWL中执行此操作的“正确”方法是什么?有没有办法引入命名空间以避免名称冲突?谢谢。

编辑:“东西”可能是一个不好的例子,因为它也是一个默认实体。但是,举个例子,比如说,不法性,它对技术意义也有不同的日常意义,两者都被使用了。

namespaces rdf owl semantic-web
1个回答
0
投票

OWL中的Thingowl:Thing的简写,其中owl:是为OWL语言保留的命名空间。在Protege中创建实体时,需要定义完整的IRI,您可以在其中完全按照您的描述使用命名空间。

所以,是的,这是一个好主意,它已经在Protege中可用(并且在许多库中可以使用各种编程语言以编程方式操作OWL文件)。

您可以在Protege中更改要显示的完整IRI的设置,而不是缩短版本或标签(这是一个单独的语句,提供人类可读的字符串作为实体的标签。

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