Семантическая сеть состоит из различных компонентов.
Знания представлены как тройки RDF. Эти тройки описывают ресурсы на основе синтаксиса Subject - Predicate - Object. Например, "John is a Male"
может быть представлен как тройной RDF.
В верхней части RDF мы можем использовать RDFS и OWL для указания ограничений и другой информации об этих данных. Благодаря RDFS я могу указать, что "Male is a subclass of Person"
, и поэтому можно сделать вывод, что "John is a Person"
. RDFS и OWL помогают определять онтологии. An онтология - это словарь (который может быть общим или специфичным для домена) для представления данных. Например, я могу создать онтологию CAT для представления данных о кошках.
В этом случае я бы создал свой словарь CAT, определяющий, что "Cat is a subclass of Animal"
и "hasOwner is a property that links a cat to a Person"
и некоторые другие свойства. Затем я могу создать экземпляр некоторых людей для создания данных о кошках. Например, говоря, что "Baccara is a Cat"
и "Baccara hasOwner John"
.
FOAF - это в основном словарь для представления данных о людях и особенно связей между этими людьми. Словарь FOAF дает некоторые свойства и классы, чтобы легко обрабатывать информацию о людях. Но он не предоставляет никакой информации, только «структура»/«модель»/«схема» для организации информации. В наборе данных FOAF нет людей. Вот почему ваш запрос не возвращает результата. Поскольку в наборе данных FOAF нет людей, это нормально, что запрос ничего не возвращает.
Возможно, вам захочется создать собственный набор данных RDF на основе словаря FOAF. Для этого вы можете попробовать инструмент, например Protégé, или более легко с помощью текстового редактора, если вы знакомы с RDF/XML или Turtle.
В противном случае, если вам нужно только познакомиться с FOAF, вы можете запросить модель. Например, вы можете получить все подклассы Агент:
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
SELECT distinct ?c
WHERE { ?c rdfs:subClassOf foaf:Agent }
Я рекомендую вам прочитать немного о семантических веб-компонентов (особенно RDF и RDFS, и различия между ними), прежде чем идти дальше в FOAF , Кроме того, хорошее упражнение для изучения SPARQL состоит в запросе DBpedia: http://dbpedia.org/sparql.
Вы запускаете запрос, по которому база знаний? Онтология FOAF сама по себе является лишь схемой. – AKSW
Я использовал редактор Query Virtuoso SPARQL, и я поместил http://xmlns.com/foaf/0.1/ в набор данных по умолчанию. Я ошибаюсь ? @AKSW – Dihya
С моей точки зрения, вы загрузили только слова FOAF, но не какие-либо данные экземпляра. – AKSW