N-Triples — это формат хранения и передачи данных. Это построчный формат сериализации простого текста для графиков RDF (Resource Description Framework) и подмножество формата Turtle (Torse RDF Triple Language). [1] [2] [3] N-тройки не следует путать с Notation3 , которая является расширенной версией Turtle. N-Triples был первоначально разработан Дэйвом Беккетом из Бристольского университета и Артом Барстоу из Консорциума World Wide Web (W3C). [4]
N-Triples был разработан как более простой формат, чем Notation3 и Turtle, и, следовательно, его было легче анализировать и генерировать программному обеспечению. Однако, поскольку в нем отсутствуют некоторые ярлыки, предоставляемые другими сериализациями RDF (такими как CURIE и вложенные ресурсы, которые предоставляются как RDF/XML, так и Turtle), печатать большие объемы данных вручную может быть затруднительно, а также сложно читать.
Существует очень мало различий в том, как граф RDF может быть представлен в N-тройках. Это делает его очень удобным форматом для предоставления «модельных ответов» для наборов тестов RDF. [3]
Поскольку N-Triples является подмножеством Turtle и Notation3, по определению все инструменты, поддерживающие ввод в любом из этих форматов, будут поддерживать N-Triples. Кроме того, некоторые инструменты, такие как Cwm, имеют специальную поддержку N-Triples.
Каждая строка файла имеет форму комментария или оператора: Оператор состоит из четырех частей, разделенных пробелами :
Субъекты могут принимать форму URI или пустого узла ; предикаты должны быть URI; объектами могут быть URI, пустой узел или литерал. URI разделяются знаками «меньше» и «больше», используемыми в качестве угловых скобок . Пустые узлы представлены буквенно-цифровой строкой с префиксом подчеркивания и двоеточия ( _:
). Литералы представлены в виде печатных строк ASCII (с обратной косой чертой), [5] разделенных символами двойных кавычек и, при необходимости, с суффиксом с индикатором языка или типа данных. Индикаторы языка представляют собой знак at , за которым следует языковой тег 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-тройки </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> _ : искусство . <http://www.w3.org/2001/sw/RDFCore/ntriples/> <http://xmlns.com/foaf/0.1/maker> _ : Дэйв . _ : искусство <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> . _ : искусство <http://xmlns.com/foaf/0.1/name> «Арт Барстоу» . _ : Дэйв <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> . _ : Дэйв <http://xmlns.com/foaf/0.1/name> «Дэйв Беккет» .
(Символ ↵ используется для обозначения места, где строка была перенесена для удобства чтения. N-тройки не позволяют произвольно переносить строки: окончания строк указывают на конец оператора.)
Соответствующий надмножество 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: архивная копия в заголовке ( ссылка )