Обоснование: отдельные лица на занятиях в сове

Я пытаюсь рассуждать с OWL в Protege. У меня есть человек, которого следует отнести к вегетарианской или мясной пицце, исходя из начинки. Это работает для мяса с hasTopping некоторого NotVeg, но это не работает с вегетарианцем для hasTopping только Vegetarian, они просто классифицированы в суперклассе Pizza. Классы не связаны, и я понятия не имею, почему это не сработало.

Кто-нибудь может помочь?

Я использовал следующую онтологию:

Prefix: : <http://www.semanticweb.org/inference/pizza#>
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: rdfs: <http://www.w3.org/2000/01/rdf-schema#>
Prefix: untitled-ontology-140: <http://www.semanticweb.org/inference/pizza#>

Ontology: <http://www.semanticweb.org/inference/pizza>

ObjectProperty: untitled-ontology-140:hasTopping
    Domain: 
        untitled-ontology-140:MeatPizza or untitled-ontology-140:VegPizza
    Range: 
        untitled-ontology-140:Topping

Class: untitled-ontology-140:Topping

Class: untitled-ontology-140:VegPizza
    SubClassOf: 
        untitled-ontology-140:Pizza,
        untitled-ontology-140:hasTopping only untitled-ontology-140:Vegetarian
    DisjointWith: 
        untitled-ontology-140:MeatPizza

Class: untitled-ontology-140:MeatPizza
    SubClassOf: 
        untitled-ontology-140:Pizza,
        untitled-ontology-140:hasTopping some untitled-ontology-140:NotVeg
    DisjointWith: 
        untitled-ontology-140:VegPizza

Class: untitled-ontology-140:NotVeg
    SubClassOf: 
        untitled-ontology-140:Topping
    DisjointWith: 
        untitled-ontology-140:Vegetarian

Class: untitled-ontology-140:Pizza
    SubClassOf: 
        untitled-ontology-140:hasTopping some untitled-ontology-140:Topping

Class: untitled-ontology-140:Vegetarian
    SubClassOf: 
        untitled-ontology-140:Topping
    DisjointWith: 
        untitled-ontology-140:NotVeg

Individual: untitled-ontology-140:PizzaC
    Facts:  
        untitled-ontology-140:hasTopping  untitled-ontology-140:Meat

Individual: untitled-ontology-140:PizzaB
    Facts:  
        untitled-ontology-140:hasTopping  untitled-ontology-140:Tomato,
        untitled-ontology-140:hasTopping  untitled-ontology-140:Meat

Individual: untitled-ontology-140:PizzaA
    Facts:  
        untitled-ontology-140:hasTopping  untitled-ontology-140:Tomato

Individual: untitled-ontology-140:Tomato
    Types: 
        untitled-ontology-140:Vegetarian

Individual: untitled-ontology-140:Meat
    Types: 
        untitled-ontology-140:NotVeg

0 ответов

Другие вопросы по тегам