Язык запросов RDF - RDF query language
An Язык запросов RDF это компьютерный язык, в частности язык запросов за базы данных, способный извлекать данные, хранящиеся в Структура описания ресурсов (RDF) формат.
SPARQL стал стандартным языком запросов RDF,[1] и в 2008 году стал Рекомендация W3C.[2][3]
Свойства языка запросов
Свойства, относящиеся к дизайну языка запросов RDF, включают поддержку формата RDF:[4]
- Поддержка данных RDF, которые представляют собой набор троек, образующих граф RDF.
- Поддержка семантики RDF и логического вывода, что позволяет выводить рассуждения о значении графов RDF
- Поддержка типов данных схемы, таких как Схема XML
и для желаемых языковых функций:
- Выразительность: сила выражения запроса, которое может быть построено
- Завершение: операции с данными в графе RDF должны привести к другому графу RDF.
- Ортогональность: операции с данными не зависят от контекста, в котором они используются
- Безопасность: каждое выражение возвращает конечный набор результатов.
Семейства языков запросов
Языки запросов RDF могут быть сгруппированы в языковые семейства, каждая из которых включает набор тесно связанных языков.[5]
Семейство языков SPARQL включает SquishQL, RDQL, SPARQL и TriQL.[5] Эти языки обрабатывают хранилища данных RDF как тройные хранилища, которые не обязательно имеют связанную с ними информацию онтологии или схемы. Члены семейства SPARQL считаются реляционными языками запросов, потому что они имеют реляционные или основанные на шаблонах операции.[6] SquishQL был языком, созданным для простоты использования и похожим по структуре на SQL. RDQL, аббревиатура от RDF Data Query Language, был дальнейшим развитием SquishQL. RDQL был задуман как простой язык RDF низкого уровня и в какой-то момент был кандидатом на стандартизацию W3C.[7] SPARQL - это расширение RDQL, которое поддерживает извлечение подграфов RDF. В 2008 году SPARQL 1.0 получил статус W3C.[8] а SPARQL 1.1 стал рекомендацией W3C в 2013 году.[9]
Семейство языков RQL включает RQL, SeRQL и eRQL.[5] Эти языки поддерживают запросы как данных, так и схемы. RQL, аббревиатура от RDF Query Language, известен тем, что использует типы, определенные в Схемы RDF (RDFS) для запроса иерархии классов схемы и поддержки запросов данных по типу. RQL считается более выразительным, чем семейство языков SPARQL, но его критиковали за слишком много функций и необычные синтаксические конструкции. SeRQL и eRQL были разработаны как упрощенные альтернативы RQL.
Существует семейство языков запросов RDF, вдохновленных технологией запросов XML.[5] XQuery для RDF использует язык запросов XML XQuery для запроса данных RDF путем сериализации RDF в формат XML и последующего использования XQuery для получения результата; это было названо «синтаксическим веб-подходом». TreeHugger и RDF Twig используют XSLT для запроса данных RDF. Versa от 4Suite - это язык запросов, вдохновленный XPath.
Существуют языки запросов RDF, основанные на других принципах.[5] Metalog сочетает в себе запросы с рассуждениями и имеет английский синтаксис. Algae - это язык запросов, разработанный W3C, который добавляет правила реакции,[10] также называемые действиями, которые определяют, например, является ли выражение Algae запросом данных или обновлением данных.
Другие примеры языков запросов RDF включают: RDFDBQL.[11]
Пример
Выбрать ? uri,?имя, ? лат, ? лон из <http://swordfish.rdfweb.org/discovery/2003/11/cities/xmlrdf.jsp?query=port> куда (?город, <rdfs:label>, ?имя), (?город, <rdfs:label>,? uri), (?город, <pos:lat>, ? лат), (?город, <pos:long>, ? лон) с помощью rdfs ЗА <http://www.w3.org/2000/01/rdf-schema#>, позиция ЗА <http://www.w3.org/2003/01/geo/wgs84_pos#>, doilair ЗА <http://www.daml.org/2001/10/html/airport-ont#>, визитка ЗА <http://www.w3.org/vcard-rdf/3.0#>
Родственные языки
Другие языки, которые могут запрашивать данные RDF, включают:
- DQL, XML на основе запросов и результатов, выраженных в ДАМЛ + НЕФТЬ
- XUL имеет шаблон элемент, в котором объявляются правила сопоставления данных в RDF. XUL широко использует RDF для привязки данных.
- Аденин (язык программирования, написанный на RDF).
XQuery, или XML-запрос, - это стандартный язык запросов для XML-документов.[12]
Языки запросов графов, Такие как Cypher Query Language, GraphQL, и Гремлин, предназначены для запроса графовые базы данных, примером которых являются хранилища данных RDF.[13]
Язык запросов тематической карты (TMQL)[14] это язык запросов для тематические карты, представление данных, подобное RDF, но более общее.
Рекомендации
- ^ Бикакис, Никос; Цинараки, Криса; Гиолдасис, Нектарий; Ставракантонакис, Иоаннис; Христодулакис, Ставрос (1 января 2013 г.). Мир XML и семантической паутины: технологии, функциональная совместимость и интеграция: обзор современного состояния. Семантическая гипер / мультимедийная адаптация. Исследования в области вычислительного интеллекта. 418. С. 319–360. arXiv:1608.03556. Дои:10.1007/978-3-642-28977-4_12. ISBN 978-3-642-28976-7.
- ^ Прюдоммо, Эрик; Сиборн, Энди (15 января 2008 г.). «Язык запросов SPARQL для RDF». W3C. Консорциум World Wide Web.
- ^ Герман, Иван (15 января 2008 г.). «SPARQL - это рекомендация». Новости активности в семантической сети. Консорциум World Wide Web.
- ^ Хаасе, Питер; Брукстра, Джин; Эберхарт, Андреас; Волц, Рафаэль (7 ноября 2004 г.). Сравнение языков запросов RDF. Семантическая сеть - ISWC 2004. Конспект лекций по информатике. 3298. стр.502–517. CiteSeerX 10.1.1.105.8731. Дои:10.1007/978-3-540-30475-3_35. ISBN 978-3-540-23798-3.
- ^ а б c d е Бейли, Джеймс; Брай, Франсуа; Фурче, Тим; Шафферт, Себастьян (1 января 2005 г.). Языки веб-запросов и семантических веб-запросов: обзор. Труды Первой Международной конференции по Reasoning Web. С. 35–133. Дои:10.1007/11526988_3. ISBN 9783540278283. Получено 23 октября 2016.
- ^ Фурче, Тим; Линсе, Бенедикт; Брай, Франсуа; Плексоусакис, Димитрис; Готтлоб, Георг (1 января 2006 г.). Запросы RDF: сравнение языковых конструкций и методов оценки. Reasoning Web. Конспект лекций по информатике. 4126. С. 1–52. CiteSeerX 10.1.1.71.227. Дои:10.1007/11837787_1. ISBN 978-3-540-38409-0.
- ^ «RDQL - язык запросов для RDF». www.w3.org. W3C. Получено 23 октября 2016.
- ^ «SPARQL - это рекомендация | Новости активности в семантической сети». www.w3.org. Получено 23 октября 2016.
- ^ «Одиннадцать спецификаций SPARQL 1.1 - это Рекомендации W3C | Новости активности в семантической сети». www.w3.org. Получено 23 октября 2016.
- ^ Берстель, Бруно; Боннар, Филипп; Брай, Франсуа; Экерт, Майкл; Пэтранян, Паула-Лавиния (1 января 2007 г.). Реактивные правила в Интернете. Reasoning Web. Конспект лекций по информатике. 4636. стр.183–239. Дои:10.1007/978-3-540-74615-7_3. ISBN 978-3-540-74613-3.
- ^ Фензель, Дитер; Сикара, Катя; Mylopoulus, Джон (2003). Семантическая сеть - ISWC 2003. Springer. п. 89. ISBN 9783540203629. Получено 21 октября 2016.CS1 maint: ref = harv (связь)
- ^ «XQuery 3.0: язык запросов XML». www.w3.org. W3C. Получено 23 октября 2016.
- ^ Углы, Ренцо; Гутьеррес, Клаудио (29 мая 2005 г.). Запрос данных RDF с точки зрения графической базы данных. Семантическая сеть: исследования и приложения. Конспект лекций по информатике. 3532. С. 346–360. Дои:10.1007/11431053_24. ISBN 978-3-540-26124-7.
- ^ "Язык запросов тематической карты (TMQL)". www.isotopicmaps.org. Получено 23 октября 2016.