N-Triples — это формат для хранения и передачи данных. Это строковый формат сериализации обычного текста для графов RDF (Resource Description Framework) и подмножество формата Turtle (Terse RDF Triple Language). [1] [2] [3] N-Triples не следует путать с Notation3, который является надмножеством Turtle. N-Triples был изначально разработан Дэйвом Беккетом в Университете Бристоля и Артом Барстоу в Консорциуме Всемирной паутины (W3C). [4]
N-Triples был разработан как более простой формат, чем Notation3 и Turtle, и, следовательно, более простой для программного обеспечения для анализа и генерации. Однако, поскольку в нем отсутствуют некоторые сокращения, предоставляемые другими сериализациями RDF (такие как CURIE и вложенные ресурсы, которые предоставляются как RDF/XML, так и Turtle), его может быть обременительно вводить вручную большие объемы данных, и его трудно читать.
Существует очень мало вариаций в том, как граф RDF может быть представлен в N-Triples. Это делает его очень удобным форматом для предоставления «модельных ответов» для наборов тестов RDF. [3]
Поскольку N-Triples является подмножеством Turtle и Notation3, по определению все инструменты, поддерживающие ввод в любом из этих форматов, будут поддерживать N-Triples. Кроме того, некоторые инструменты, такие как Cwm, имеют специальную поддержку N-Triples.
Каждая строка файла имеет форму комментария или оператора: Оператор состоит из четырех частей, разделенных пробелом :
Субъекты могут иметь форму URI или пустого узла ; предикаты должны быть URI; объекты могут быть URI, пустым узлом или литералом. URI разделяются знаками «меньше» и «больше» , используемыми в качестве угловых скобок . Пустые узлы представлены буквенно-цифровой строкой с префиксом в виде подчеркивания и двоеточия ( _:
). Литералы представлены в виде печатных строк ASCII (с экранированием обратной косой черты), [5] разделенных символами двойных кавычек и необязательно с суффиксом в виде индикатора языка или типа данных. Индикаторы языка представляют собой знак @, за которым следует тег языка RFC 3066 ; индикаторы типа данных представляют собой двойной знак вставки, за которым следует URI. Комментарии состоят из строки, начинающейся со знака решетки .
Приведенные ниже операторы N-Triples эквивалентны этому RDF/XML:
<rdf:RDF xmlns= "http://xmlns.com/foaf/0.1/" xmlns:dc= "http://purl.org/dc/terms/" xmlns:rdf= "http://www.w3.org/1999/02/22-rdf-syntax-ns#" > <Document rdf:about= "http://www.w3.org/2001/sw/RDFCore/ntriples/" > <dc:title xml:lang= "en-US" > N-Triples </dc: title > <maker> <Person rdf:nodeID= "art" > <name> Арт Барстоу </name> </Person> </maker> <maker> <Person rdf:nodeID= "dave" > <name> Дэйв Беккет </name> </Person> </maker> </Document> </rdf:RDF>
<http://www.w3.org/2001/sw/RDFCore/ntriples/> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> ↵ <http://xmlns.com/foaf/0.1/Document> . <http://www.w3.org/2001/sw/RDFCore/ntriples/> <http://purl.org/dc/terms/title> "N-Triples" @ en-US . <http://www.w3.org/2001/sw/RDFCore/ntriples/> <http://xmlns.com/foaf/0.1/maker> _ : art . <http://www.w3.org/2001/sw/RDFCore/ntriples/> <http://xmlns.com/foaf/0.1/maker> _ : dave . _ : art <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> . _ : art <http://xmlns.com/foaf/0.1/name> "Арт Барстоу" . _ : dave < http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> . _ : dave <http://xmlns.com/foaf/0.1/name> "Дэйв Беккет" .
(Символ ↵ используется для обозначения места, где строка была перенесена для удобства чтения. N-Triples не допускают произвольного переноса строк: окончания строк указывают на конец оператора.)
Соответствующее надмножество N-Quads расширяет N-Triples с помощью необязательного значения контекста на четвертой позиции. [6] [7] [8]
<http://one.example/subject1> <http://one.example/predicate1> <http://one.example/object1> <http://example.org/graph3> . # комментарии здесь # или на отдельной строке _ : subject1 <http://an.example/predicate1> "object1" <http://example.org/graph1> . _ : subject2 <http://an.example/predicate2> "object2" <http://example.org/graph5> .
Строки N-Triples представляют собой последовательности символов US-ASCII, кодирующие строки символов [UNICODE]. Символы за пределами диапазона US-ASCII и некоторые другие специальные символы становятся доступными с помощью \-escape-последовательностей следующим образом ...
{{cite web}}
: CS1 maint: архивная копия как заголовок ( ссылка )