Вам просто нужно заменить это выражение:
foo:isEndangered rdf:domain foo:Animal .
с этим:
foo:isEndangered rdfs:domain foo:Animal .
После замены следует сделать вывод foo:Ape a foo:Animal
:
В режиме SPARQL убедитесь, что второй >
в значке >>
не отмечен точками, в противном случае щелкните значок.
У меня работает с наборами правил RDFS и OWL-Max, другие не проверял.
Как сказал @Ignazio, каламбур в OWL 2 DL не дает выводов, цель каламбура скорее противоположна. OWL 2 DL позволяет сущностям быть классами и индивидами одновременно, не считая онтологию несовместимой (то есть полной выводов) или недействительной.
OWL-каламбур - лишь небольшая часть свободы RDF (S). >:
RDFS не разделяет вселенную на непересекающиеся категории классов, свойств и индивидов. Все, что есть во вселенной, может использоваться как класс, или как свойство, или и то, и другое, сохраняя при этом свой статус индивидуума, который может находиться в классах и иметь свойства. Таким образом, RDFS разрешает классы, которые содержат другие классы, классы свойств, свойства классов и т. Д.
Фактически, необходимый вам вывод предоставляется rdfs2
Шаблон вывода RDFS.
Я надеюсь, что приведенная ниже мнемоническая таблица будет вам полезна. Он показывает, какой термин, упомянутый в словаре RDFS, относится к какому префиксу.
+--------------------+----------------+
| rdfs: | rdf: |
+--------------------+----------------+
| Classes |
+--------------------+----------------+
| rdfs:Resource | rdf:Property |
| rdfs:Class | rdf:langString |
| rdfs:Literal | rdf:HTML |
| rdfs:Datatype | rdf:XMLLiteral |
+--------------------+----------------+
| Properties |
+--------------------+----------------+
| rdfs:range | rdf:type |
| rdfs:domain | |
| rdfs:subClassOf | |
| rdfs:subPropertyOf | |
| rdfs:label | |
| rdfs:comment | |
+--------------------+----------------+
| Other Vocabulary |
+--------------------+----------------+
| rdfs:Container | rdf:Bag |
| rdfs:member | rdf:Seq |
| rdfs:seeAlso | rdf:Alt |
| rdfs:isdDefinedBy | rdf:List |
| | rdf:first |
| | rdf:rest |
| | rdf:nil |
| | rdf:_1 |
| | rdf:Statement |
| | rdf:subject |
| | rdf:predicate |
| | rdf:object |
| | rdf:value |
+--------------------+----------------+
P.S. Даже если нужная вам инструкция не выводится, это не является ошибкой :
Например, хотя словарь RDF может утверждать, что свойство author
используется для обозначения ресурсов, которые являются экземплярами класса Person
, он не говорит, должно ли и как приложение действовать при обработке этой информации диапазона. Разные приложения будут использовать эту информацию по-разному. Например, инструменты проверки данных могут использовать это, чтобы помочь обнаружить ошибки в некотором наборе данных, интерактивный редактор может предложить подходящие значения, а приложение рассуждений может использовать его для вывода дополнительной информации из данных экземпляра.
:-)
person
Stanislav Kralin
schedule
22.07.2017
rdfs:domain
, а неrdf:domain
. - person Stanislav Kralin   schedule 22.07.2017rdfs:range
: D - person UninformedUser   schedule 22.07.2017rdf:domain
наrdfs:domain
он работает как в режиме визуального графика, так и в режиме SPARQL. В режиме SPARQL убедитесь, что второй>
в>>
не отмечен точками. Он работает с наборами правил RDFS и OWL-Max (другие не проверял). Кстати, из-за каламбура OWL 2 DL ваши данные просто недействительны или несовместимы с наборами правил OWL. Необходимое вам утверждение выводится из-за _5 _ Шаблон RDFS. - person Stanislav Kralin   schedule 22.07.2017