owl - 在Protege中添加限制

标签 owl semantic-web protege restriction

我想对特定类的个体可以通过对象属性获取的值添加限制。

例如,我有类 GPSMeans (包含实例 SpoofingJammingSpeed_ChangeSign_Change)通过对象属性HasMeans连接:

GPS -----> 具有平均值平均值

我想确保GPS类的任何实例只能连接到Means类实例JammingSpoofing 而不是其他。 如果我说 GPS 实例 G1 HasMeans Speed_Change,我的目标是在运行时将其分类为错误推理者。

提前致谢!

最佳答案

您需要以下 OWL2 功能:

Manchester Syntax在 Protégé 中使用:

Prefix: : <https://stackoverflow.com/q/50004546/7879193#>

Ontology: <https://stackoverflow.com/q/50004546/7879193>

Class: GPS
    SubClassOf: hasMean only {jamming, spoofing}

Class: Mean

ObjectProperty: hasMean
    Domain: GPS
    Range: Mean

Individual: gps1
    Types: GPS
    Facts: hasMean jamming, hasMean spoofing

Individual: gps2
    Types: GPS
    Facts: hasMean spoofing, hasMean speed_change

DifferentIndividuals: 
    jamming, spoofing, speed_change

Individual: jamming
    Types: Mean 

Individual: spoofing
   Types: Mean

Individual: speed_change
   Types:  Mean

这就是不一致解释的样子:

Laconic inconsistency explanation screenshot

关于owl - 在Protege中添加限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50004546/

相关文章:

metadata - 如何将 4 个项目放入 RDF 三元组中?

rdf - 类上的对象属性实例?

java - 可卸载导入异常 : Could not load imported ontology

logic - 如何用曼彻斯特猫头鹰语法表达 "Every"?

class - OWL 不同类的相同对象属性

sparql - 如何改进大型 SPARQL 数据集的索引?

rdf - 医学领域的示例本体

owl - protege 中的反身属性

java - 从 SPARQL 查询中仅获取 "#"之后的名称

python - 如何自动实例化 OWL 本体类?