我正在开发一个本体,需要对地理坐标(纬度/经度)进行建模,作为人的地址的一部分。 Geo Names是显而易见的选择,但它太大而且冗长,我使用了W3C Geo词汇(http://www.w3.org/2003/01/geo/)。
它有一个Point类,以及lat / long / alt属性,这些属性应该满足我的需要。但是,我无法找到它,更不用说在Protege中将其设置为属性。进一步的研究表明,“Point”是一个rdfs:Class,“lat / long / alt”是rdf:Properties。我猜这就是它没有出现在Protege中的原因。
有没有办法在OWL本体中使用这些属性?或者是否有其他词汇表可以让我指定地理点,行等?
谢谢,
答案 0 :(得分:0)
假设您尝试打开页面wgs84_pos上的文件http://www.w3.org/2003/01/geo/,则表明属性使用的是Protege 4.1(普通RDF)无法理解的格式。看看第143行,你会看到:
<rdf:Property rdf:about="http://www.w3.org/2003/01/geo/wgs84_pos#lat">
<rdfs:domain rdf:resource="http://www.w3.org/2003/01/geo/wgs84_pos#SpatialThing" />
<rdfs:label>latitude</rdfs:label>
<rdfs:comment>The WGS84 latitude of a SpatialThing (decimal degrees).</rdfs:comment>
</rdf:Property>
rdf:Property
不在OWL的范围内(太通用,在OWL属性中是对象或数据属性),因此Protege 4.1不会显示。
我建议您按照网页上的文档和查看RDF文件从头开始重新创建本体。只需添加您需要的属性(应该快速),保存,打开保存的文件并与下载的文件进行比较以查看差异。
使用Protege制作的本体的粗略结构如下所示:
<?xml version="1.0"?>
<!DOCTYPE rdf:RDF [
<!ENTITY owl "http://www.w3.org/2002/07/owl#" >
<!ENTITY xsd "http://www.w3.org/2001/XMLSchema#" >
<!ENTITY rdfs "http://www.w3.org/2000/01/rdf-schema#" >
<!ENTITY wgs84_pos "http://www.w3.org/2003/01/geo/wgs84_pos#" >
<!ENTITY rdf "http://www.w3.org/1999/02/22-rdf-syntax-ns#" >
]>
<rdf:RDF xmlns="http://www.w3.org/2003/01/geo/wgs84_pos#"
xml:base="http://www.w3.org/2003/01/geo/wgs84_pos"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:wgs84_pos="http://www.w3.org/2003/01/geo/wgs84_pos#"
xmlns:owl="http://www.w3.org/2002/07/owl#"
xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<owl:Ontology rdf:about="http://www.w3.org/2003/01/geo/wgs84_pos#"/>
<owl:DatatypeProperty rdf:about="&wgs84_pos;lat">
<rdfs:domain rdf:resource="&wgs84_pos;SpatialThing"/>
</owl:DatatypeProperty>
<owl:DatatypeProperty rdf:about="&wgs84_pos;long">
<rdfs:domain rdf:resource="&wgs84_pos;SpatialThing"/>
</owl:DatatypeProperty>
<owl:Class rdf:about="&wgs84_pos;Point">
<rdfs:subClassOf rdf:resource="&wgs84_pos;SpatialThing"/>
</owl:Class>
<owl:Class rdf:about="&wgs84_pos;SpatialThing"/>