Пустой узел - Blank node

Пример пустого узла в RDF-графе

В RDF, а пустой узел (также называемый bnode) - узел в графе RDF, представляющий ресурс, для которого URI или буквального не дано.[1] Ресурс, представленный пустым узлом, также называется анонимный ресурс. Согласно стандарту RDF пустой узел может использоваться только как субъект или объект тройки RDF.

Обозначения в форматах сериализации

Пустые узлы могут быть обозначены с помощью идентификаторов пустых узлов в следующих форматах: RDF / XML, RDFa, Черепаха, N3 и N-Triples. В следующем примере показано, как это работает в RDF / XML.

      xmlns: rdf ="http://www.w3.org/1999/02/22-rdf-syntax-ns#"      xmlns: ex ="http://example.org/data#"> rdf: about ="http://example.org/web-data" пример: title =«Веб-данные»>   rdf: nodeID ="б"/></rdf:Description> rdf: nodeID ="б" пример: fullName ="Элис Кэрол">   rdf: resource ="http://example.net/alice-carol"/></rdf:Description></rdf:RDF>

Пустые идентификаторы узла ограничены только сериализацией определенного графа RDF, то есть узла _: b в следующем примере не представляет тот же узел, что и узел с именем _: b в любом другом графе.

Пустые узлы также могут быть обозначены вложенными элементами (в RDF / XML, RDFa, Черепаха и N3 ). Вот такая же тройка с вышеперечисленным.

      xmlns: rdf ="http://www.w3.org/1999/02/22-rdf-syntax-ns#"      xmlns: ex ="http://example.org/data#"> rdf: about ="http://example.org/web-data" пример: title =«Веб-данные»>  <ex:professor>     пример: fullName ="Элис Кэрол">       rdf: resource ="http://example.net/alice-carol"/>    </rdf:Description>  </ex:professor></rdf:Description></rdf:RDF>

Ниже тот же пример в RDFa.

 about ="http://example.org/web-data">  <диапазон свойство ="пример: название">Веб-данные</span>  <диапазон rel ="пример: профессор">     свойство ="пример: fullName" rel ="ex: homePage" href ="http://example.net/alice-carol">Элис Кэрол</a>  </span></p>

Ниже тот же пример в Черепаха.

@префиксбывший:<http://example.org/data#>.<http://example.org/web-data>бывший:заглавие«Веб-данные»;бывший:профессор[бывший:полное имя"Элис Кэрол";бывший:главная страница<http://example.net/alice-carol>].

Удобство использования

Пустые узлы рассматриваются как просто указывающие на существование объекта без использования URI (универсального идентификатора ресурса) для идентификации какой-либо конкретной вещи. Это не то же самое, что предположить, что пустой узел указывает на «неизвестный» URI.[1]

Анонимные ресурсы в RDF

С технической точки зрения они дают возможность:

  1. описывать многокомпонентные конструкции, как и контейнеры RDF,
  2. описывать овеществление (т.е. информация о происхождении),
  3. представлять сложные атрибуты без необходимости явно указывать вспомогательный узел (например, адрес человека, состоящий из улицы, номера, почтового индекса и города) и
  4. предлагает защита внутренней информации (например, защита конфиденциальной информации клиентов от браузеров).[2]

Ниже приведен пример, в котором пустые узлы используются для представления ресурсов вышеупомянутыми способами. В частности, пустой узел с идентификатором '_: student' представляет контейнер RDF Bag, пустой узел с идентификатором '_: address' представляет сложный атрибут, а узлы с идентификаторами '_: activity1' и '_: activity2 'представляют события жизненного цикла цифрового объекта.

 1 <http://example.org/web-data> 2 бывший:заглавие«Веб-данные»; 3 бывший:профессор_:юридическое лицо; 4 бывший:студенты_:студенты; 5 бывший:создано_:activity1. 6  7 _:юридическое лицо 8 бывший:полное имя"Элис Кэрол"; 9 бывший:главная страница<http://example.net/alice-carol>;10 бывший:hasAddress_:адрес.11 12 _:адрес13 абывший:Адрес;14 бывший:адрес улицы"123 Main St.";15 бывший:Почтовый индекс«A1A1A1»;16 бывший:адрес"Лондон".17 18 _:студенты19 аrdf:Мешок;20 бывший:hasMember_:s1;21 бывший:hasMember_:s2.22 23 _:activity124 абывший:Мероприятие;25 бывший:создатель_:юридическое лицо;26 бывший:вовремя"Вторник, 11 февраля, 06:51:00 CST".27 28 _:activity229 абывший:Мероприятие,бывший:Обновлять;30 бывший:actionOver_:activity1;31 бывший:создатель_:entity2;32 бывший:вовремя"Понедельник, 17 февраля, 08:12:00 CST".

Анонимные занятия в OWL

Язык онтологий СОВА использует пустые узлы для представления анонимных классов, таких как союзы или же перекрестки классов,[3] или классы, называемые ограничениями, определяемые ограничением свойства.[4]

Например, чтобы выразить, что у человека есть не более одной даты рождения, нужно определить класс «Человек» как подкласс анонимного класса типа «сова: ограничение». Этот анонимный класс определяется двумя атрибутами, определяющими ограничиваемое свойство и само ограничение (мощность ≤ 1)

 <сова: Класс rdf: about ="http://example.org/ontology/Person">    <rdfs:subClassOf>      <owl:Restriction>        <owl:maxCardinality>1</owl:maxCardinality>        <сова: onProperty rdf: resource ="http://xmlns.com/foaf/0.1/birthDate"/>      </owl:Restriction>    </rdfs:subClassOf> </owl:Class>

Пустые узлы в опубликованных данных

Распространенность пустого узла

Согласно эмпирическому исследованию[5] в Связанные данные опубликовано в Интернете, из 783 доменов, входящих в состав корпуса, 345 (44,1%) не публиковали пустые узлы. Средний процент уникальных терминов, которые были пустыми узлами для каждого домена, составил 7,5%, что указывает на то, что, хотя небольшое количество доменов с большим объемом публикует много пустых узлов, многие другие домены публикуют пустые узлы реже.

Из 286,3 МБ уникальных терминов, найденных в позициях на уровне данных, 165,4 МБ (57,8%) были пустыми узлами, 92,1 МБ (32,2%) были URI и 28,9 МБ (10%) были литералами. Каждый пустой узел имел в среднем 5,2 вхождения на уровне данных. Это происходило в среднем 0,99 раза в позиции объекта тройки, отличной от rdf: typetriple, и 4,2 раза в позиции объекта тройки.

Структура пустых узлов

Согласно тому же эмпирическому обзору связанных данных, опубликованному в Интернете, большинство исследованных документов содержат древовидные структуры пустых узлов. Небольшая часть содержит сложные структуры пустых узлов, для которых выполнение различных задач потенциально очень дорого.

Деликатные задачи

Существование пустых узлов требует особого подхода в различных задачах, сложность которых растет экспоненциально с увеличением количества этих узлов.

Сравнение графиков RDF

Невозможность сопоставления пустых узлов увеличивает размер дельты (количество троек, которые необходимо удалить и добавить, чтобы преобразовать один граф RDF в другой) и не помогает в обнаружении изменений между последующими версиями базы знаний. Построение сопоставления между пустыми узлами двух сравниваемых баз знаний, которое минимизирует размер дельты, в общем случае является NP-трудным.[6]

BNodeLand[7] - это структура, которая занимается этой проблемой и предлагает решения с помощью определенных инструментов.

Проверка содержания

Относительно проблемы следования доказано, что (а) решение простое или вывод RDF / S графов RDF является NP-полным,[8] и (b) определение эквивалентности простых графов RDF является изоморфизм-полным.

Смотрите также

Рекомендации

  1. ^ а б http://www.w3.org/TR/2014/REC-rdf11-mt-20140225/#blank-nodes
  2. ^ Л. Чен, Х. Чжан, Ю. Чен и В. Го. Пустые узлы в RDF. Журнал программного обеспечения, 2012.
  3. ^ https://www.w3.org/TR/owl-parsing/
  4. ^ https://www.w3.org/TR/2004/REC-owl-ref-20040210/
  5. ^ А. Маллеа, М. Аренас, А. Хоган и А. Поллерес. На пустых узлах. В материалах 10-го Междунар. Конференция по семантической паутине (ISWC 2011), 2011 г.
  6. ^ Ю. Цицикас, К. Ланцаки, Д. Зегинис. Сопоставление пустых узлов и функции сравнения RDF / S. В материалах 11-го Междунар. Конференция по семантической сети (ISWC 2012), 2012 г.
  7. ^ http://www.ics.forth.gr/isl/bnodeland/
  8. ^ H. J. ter Horst. «Полнота, разрешимость и сложность вывода для схемы RDF и семантического расширения, включающего словарь OWL». J. of Web Sem. 3:79-115, 2005.