我注意到Protege会创建"副本"我创建的属性DatatypeProperty并将它们标记为ObjectProperty。这反过来又使它们同时成为数据类型和对象属性。 我试图在OWL文件中手动修复它。 已分配" xsd:string"作为范围。 什么都没有帮助。
在OWL文件中进行Protege读取,并显示我刚刚在两个列表中修复的属性。如果我修改任何内容并将本体保存回OWL文件,则会输入两个条目。
更多"有趣"我的Range规范(到xsd:string)设置为ObjectProperty条目,而不是原始数据类型。
有什么想法吗?
这是一个例子。
"原"
### http://www.umwd.dolnyslask.pl/ontologies/2014/03/midas#title
:title rdf:type owl:DatatypeProperty ,
owl:FunctionalProperty ;
rdfs:label "tytuł"@pl ;
skos:definition """xxxxxx""" ;
rdfs:comment """comment"""@pl ;
rdfs:domain :Annotation ,
:Entity .
Protege添加的复制(请注意rdfs:范围已移至副本)
### http://www.umwd.dolnyslask.pl/ontologies/2014/03/midas#title
:title rdf:type owl:ObjectProperty ;
rdfs:label "tytuł"@pl ;
skos:definition """xxxxxx""" ;
rdfs:comment """comment"""@pl ;
rdfs:range xsd:string .
更新:这是最小的本体,在保护中打开后会出现上面显示的问题:
@prefix : <http://my.ontolo.gy/test#> .
@prefix dc: <http://purl.org/dc/elements/1.1/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix xml: <http://www.w3.org/XML/1998/namespace> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix bibo: <http://purl.org/ontology/bibo/> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix midas: <http://my.ontolo.gy/test#> .
@prefix vcard: <http://www.w3.org/2006/vcard/ns#> .
@prefix dctype: <http://purl.org/dc/dcmitype/> .
@prefix schema: <http://schema.rdfs.org/all#> .
@prefix dbpedia: <http://dbpedia.org/ontology/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix location: <http://www.w3.org/ns/locn#> .
@base <http://my.ontolo.gy/test> .
<http://my.ontolo.gy/test> rdf:type owl:Ontology ;
rdfs:label "Ontologia"@pl ;
rdfs:comment "Komentarz"@pl ;
owl:imports bibo: ,
<http://schema.rdfs.org/all> ,
<http://www.w3.org/2006/vcard/ns> ,
<http://www.w3.org/ns/locn> .
### http://my.ontolo.gy/test#title
:title rdf:type owl:DatatypeProperty ,
owl:FunctionalProperty ;
rdfs:label "tytuł"@pl ;
skos:definition """definition""" ;
rdfs:comment """komentarz"""@pl ;
rdfs:range xsd:string ;
rdfs:domain :Annotation ,
:Entity .
将其保存回文件后:
@prefix : <http://my.ontolo.gy/test#> .
@prefix dc: <http://purl.org/dc/elements/1.1/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix xml: <http://www.w3.org/XML/1998/namespace> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix bibo: <http://purl.org/ontology/bibo/> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix midas: <http://my.ontolo.gy/test#> .
@prefix vcard: <http://www.w3.org/2006/vcard/ns#> .
@prefix dctype: <http://purl.org/dc/dcmitype/> .
@prefix schema: <http://schema.rdfs.org/all#> .
@prefix dbpedia: <http://dbpedia.org/ontology/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix location: <http://www.w3.org/ns/locn#> .
@base <http://my.ontolo.gy/test> .
<http://my.ontolo.gy/test> rdf:type owl:Ontology ;
rdfs:label "Ontologia"@pl ;
rdfs:comment "Komentarz"@pl ;
owl:imports bibo: ,
<http://schema.rdfs.org/all> ,
<http://www.w3.org/2006/vcard/ns> ,
<http://www.w3.org/ns/locn> .
#################################################################
#
# Object Properties
#
#################################################################
### http://my.ontolo.gy/test#title
:title rdf:type owl:ObjectProperty ;
rdfs:label "tytuł "@pl ;
skos:definition "definition" ;
rdfs:comment "komentarz"@pl ;
rdfs:range xsd:string .
#################################################################
#
# Data properties
#
#################################################################
### http://my.ontolo.gy/test#title
:title rdf:type owl:DatatypeProperty ,
owl:FunctionalProperty ;
rdfs:label "tytuł "@pl ;
skos:definition "definition" ;
rdfs:comment "komentarz"@pl ;
rdfs:domain :Annotation ,
:Entity .
#################################################################
#
# Classes
#
#################################################################
### http://my.ontolo.gy/test#Annotation
:Annotation rdf:type owl:Class .
### http://my.ontolo.gy/test#Entity
:Entity rdf:type owl:Class .
### Generated by the OWL API (version 3.4.2) http://owlapi.sourceforge.net
答案 0 :(得分:1)
这个的根本原因是,在解析期间(通过OWL API)
rdfs:range xsd:string
被认为断言范围是xsd:string
/ class /。这显然是个问题。我之前看到过,当本体包含xsd:string
作为类的错误声明时,这违反了OWL 2DL配置文件。
它的起源似乎在schema.rdfs.org/all import中,可以找到这种结构:
rdfs:range [ a owl:Class; owl:unionOf (xsd:decimal xsd:string) ];
为了解析这个问题,需要将数据类型IRI合并为类IRI。这是第一次OWL配置文件违规,其他违规是由其副作用引起的。
架构本体似乎是RDF而不是OWL,所以我不确定尝试解决这些问题是否有意义。