Предположим, я хочу изобразить, что Билл тренируется раз в неделю. Я хочу изучить различные способы представления этого в owl, поскольку я все больше знакомлюсь с построением онтологий в owl и формулированием их в черепахе. Я готов выслушать альтернативные представления, но вот то, что я пытаюсь сделать:
- ActivityType — это класс.
- Упражнение является экземпляром этого класса.
- Билл является экземпляром Human (класса), и он выполняет упражнение.
- Затем я хочу квалифицировать выступление Билла как то, что происходит раз в неделю.
- Для этого я создаю класс частот и экземпляр под названием OnceAWeek.
- Затем я хочу овеществить выполнение упражнения Биллом и связать это овеществленное предложение совы с Частотой OnceAWeek.
Вот как я это пробовал (я опущу некоторые вещи из верхней онтологии, но это не должно быть проблемой):
:performsActivityType rdf:type owl:ObjectProperty;
rdfs:Domain :Animal;
rdfs:Range :ActivityType.
:performsWithFrequency rdf:type owl:ObjectProperty;
rdfs:Domain owl:Axiom;
rdfs:Range :Frequency.
:Human rdf:type owl:Class ;
rdfs:subClassOf :Animal.
:ActivityType rdf:type owl:Class .
:Frequency rdf:type owl:Class .
:Exercise rdf:type owl:NamedIndividual, :ActivityType.
:OnceAWeek rdf:type owl:NamedIndividual, :Frequency.
:Bill rdf:type :Human;
:performsActivityType :Exercise.
[rdf:type owl:NamedIndividual, owl:Axiom ;
owl:annotatedSource :Bill;
owl:annotatedProperty :performsActivityType;
owl:annotatedTarget :Exercise;
:performsWithFrequency :OnceAWeek].
Проблема: когда я это делаю, я не могу проверить, добавил ли я предполагаемые знания, посмотрев это в Protege. Я могу убедиться, что я создаю правильную аксиому, так как я могу проникнуть в что-то вроде rdfs:label, он делает это раз в неделю, и это аннотирует утверждение и видно, когда я открываю .owl файл в протеже. Но я не могу найти способ проверить, что я делаю утверждение :performsWithFrequency о предложении (Bill PerformsActivityType Exercise).
Помощь?
(Опять же, мысли о том, как лучше реализовать это представление, также приветствуются, хотя я все еще хочу узнать, как справиться с этим, если это возможно).
[rdf:type owl:NamedIndividual, owl:Axiom ;
- овеществленная аксиома для целей аннотации не должна также иметь типNamedIndividual
(и в любом случае представлена пустым узлом в этом файле), поэтому я подозреваю, что соответствующая тройка фактически игнорируется, и некоторые инструменты могут отклонить это как недействительное. - person Ignazio   schedule 27.07.2020