Пустой узел
В RDF ( пустой узел также называемый bnode ) — это узел в графе RDF, представляющий ресурс, для которого URI или литерал. не указан [1] Ресурс, представленный пустым узлом, также называется анонимным ресурсом . Согласно стандарту RDF пустой узел может использоваться только как субъект или объект тройки RDF.
Обозначение в форматах сериализации
[ редактировать ]Пустые узлы могут быть обозначены с помощью идентификаторов пустых узлов в следующих форматах: RDF/XML , RDFa , Turtle , N3 и N-Triples . В следующем примере показано, как это работает в RDF/XML .
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:ex="http://example.org/data#">
<rdf:Description rdf:about="http://example.org/web-data" ex:title="Web Data">
<ex:professor rdf:nodeID="b"/>
</rdf:Description>
<rdf:Description rdf:nodeID="b" ex:fullName="Alice Carol">
<ex:homePage rdf:resource="http://example.net/alice-carol"/>
</rdf:Description>
</rdf:RDF>
Пустые идентификаторы узлов ограничены по объему только сериализацией конкретного графа RDF, т. е. узла _:b
в следующем примере не представляет тот же узел, что и узел с именем _:b
в любом другом графике.
Пустые узлы также можно обозначать через вложенные элементы (в RDF/XML , RDFa , Turtle и N3 ). Здесь та же тройка, что и выше.
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:ex="http://example.org/data#">
<rdf:Description rdf:about="http://example.org/web-data" ex:title="Web Data">
<ex:professor>
<rdf:Description ex:fullName="Alice Carol">
<ex:homePage rdf:resource="http://example.net/alice-carol"/>
</rdf:Description>
</ex:professor>
</rdf:Description>
</rdf:RDF>
Ниже приведен тот же пример в RDFa .
<p about="http://example.org/web-data">
<span property="ex:title">Web Data</span>
<span rel="ex:professor">
<a property="ex:fullName" rel="ex:homePage" href="http://example.net/alice-carol">Alice Carol</a>
</span>
</p>
Ниже приведен тот же пример в Turtle .
@prefix ex: <http://example.org/data#> .
<http://example.org/web-data> ex:title "Web Data" ;
ex:professor [ ex:fullName "Alice Carol" ;
ex:homePage <http://example.net/alice-carol> ] .
Удобство использования
[ редактировать ]Пустые узлы рассматриваются как просто указывающие на существование объекта без использования URI (унифицированного идентификатора ресурса) для идентификации какого-либо конкретного объекта. Это не то же самое, что предположить, что пустой узел указывает на «неизвестный» URI. [1]
Анонимные ресурсы в RDF
[ редактировать ]С технической точки зрения они дают возможность:
- описывать многокомпонентные структуры , такие как контейнеры RDF,
- описать реификацию (т.е. информацию о происхождении),
- представляют сложные атрибуты без необходимости явно указывать вспомогательный узел (например, адрес человека, состоящий из улицы, номера, почтового индекса и города) и
- обеспечить защиту внутренней информации (например, защиту конфиденциальной информации клиентов от браузеров). [2]
Ниже приведен пример, в котором пустые узлы используются для представления ресурсов вышеупомянутыми способами. В частности, пустой узел с идентификатором «_:students» представляет контейнер Bag RDF, пустой узел с идентификатором «_:адрес» представляет собой сложный атрибут, а узлы с идентификаторами «_:activity1» и «_:activity2». ' представляют события жизненного цикла цифрового объекта.
<http://example.org/web-data>
ex:title "Web Data" ;
ex:professor _:entity ;
ex:students _:students ;
ex:generatedBy _:activity1 .
_:entity
ex:fullName "Alice Carol" ;
ex:homePage <http://example.net/alice-carol> ;
ex:hasAddress _:address .
_:address
a ex:Address ;
ex:streetAddress "123 Main St." ;
ex:postalCode "A1A1A1" ;
ex:addressLocality "London" .
_:students
a rdf:Bag ;
ex:hasMember _:s1 ;
ex:hasMember _:s2 .
_:activity1
a ex:Event;
ex:creator _:entity ;
ex:atTime "Tuesday 11 February, 06:51:00 CST" .
_:activity2
a ex:Event, ex:Update ;
ex:actionOver _:activity1 ;
ex:creator _:entity2 ;
ex:atTime "Monday 17 February, 08:12:00 CST" .
Анонимные занятия в OWL
[ редактировать ]Язык онтологий OWL использует пустые узлы для представления анонимных классов, таких как объединения или пересечения классов. [3] или классы, называемые ограничениями, определяемые ограничением свойства. [4]
Например, чтобы указать, что у человека есть не более одной даты рождения, можно определить класс «Человек» как подкласс анонимного класса типа «сова:Ограничение». Этот анонимный класс определяется двумя атрибутами, определяющими ограниченное свойство и само ограничение ( мощность ≤ 1).
<owl:Class rdf:about="http://example.org/ontology/Person">
<rdfs:subClassOf>
<owl:Restriction>
<owl:maxCardinality>1</owl:maxCardinality>
<owl: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:type. тройка, и 4,2 раза в предметной позиции тройки.
Структура пустых узлов
[ редактировать ]Согласно тому же эмпирическому обзору связанных данных, опубликованному в Интернете, большинство исследованных документов содержат древовидные структуры с пустыми узлами. Небольшая часть содержит сложные структуры пустых узлов, вычисление различных задач которых потенциально может быть очень дорогостоящим.
Деликатные задачи
[ редактировать ]Наличие пустых узлов требует специального подхода в различных задачах. сложность которого растет экспоненциально с числом этих узлов.
Сравнение графиков RDF
[ редактировать ]Невозможность сопоставить пустые узлы увеличивает размер дельты. (количество троек, которые нужно удалить и добавить, чтобы преобразовать одного RDF-графа к другому) и не помогает обнаружить изменения между последующими версии базы знаний. Построение сопоставления между пустыми узлами двух сравниваемых баз знаний который минимизирует размер дельты, в общем случае является NP-Hard. [6]
BNodeLand — это платформа, которая решает эту проблему и предлагает решения с помощью конкретных инструментов. [7]
Проверка последствий
[ редактировать ]Относительно проблемы следования доказано, что (а) решение простое или RDF/S следствие RDF-графов является NP-полным, [8] и (б) принятие решения эквивалентность простых RDF-графов полна по изоморфизму.
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Перейти обратно: а б «Семантика RDF 1.1» . Проверено 6 апреля 2024 г.
- ^ Л. Чен, Х. Чжан, Ю. Чен и В. Го. Пустые узлы в RDF. Журнал Программное обеспечение, 2012.
- ^ «Разбор языка веб-онтологии OWL OWL в RDF/XML» .
- ^ «Справочник по языку веб-онтологии OWL» . Проверено 6 апреля 2024 г.
- ^ А. Маллеа, М. Аренас, А. Хоган и А. Поллерес. На пустых узлах. В материалах 10-й стажер. Семантическая веб-конференция (ISWC 2011), 2011 г.
- ^ Ю. Цицикас, К. Ланцаки и Д. Зегинис. Сопоставление пустых узлов и функции сравнения RDF/S. В материалах 11-го интерна. Семантическая веб-конференция (МСВК 2012), 2012.
- ^ BNodeLand forth.gr
- ^ HJ тер Хорст. «Полнота, разрешимость и сложность следствия для схемы RDF и семантического расширения с использованием словаря OWL». Дж. из Web Sem. 3:79-115, 2005.