Turtle

  Implementation Report ([original](https://www.w3.org/2013/TurtleReports/index.html)) ([raw](?raw))

TestIRI_subject

IRI subject

Example 1: IRI_subject Input

http://a.example/s http://a.example/p http://a.example/o .

Example 2: IRI_subject Result

http://a.example/s http://a.example/p http://a.example/o .

TestIRI_with_four_digit_numeric_escape

IRI with four digit numeric escape (\u)

Example 3: IRI_with_four_digit_numeric_escape Input

http://a.example/\u0073 http://a.example/p http://a.example/o .

Example 4: IRI_with_four_digit_numeric_escape Result

http://a.example/s http://a.example/p http://a.example/o .

TestIRI_with_eight_digit_numeric_escape

IRI with eight digit numeric escape (\U)

Example 5: IRI_with_eight_digit_numeric_escape Input

http://a.example/\U00000073 http://a.example/p http://a.example/o .

Example 6: IRI_with_eight_digit_numeric_escape Result

http://a.example/s http://a.example/p http://a.example/o .

TestIRI_with_all_punctuation

IRI with all punctuation

Example 7: IRI_with_all_punctuation Input

scheme:!$%25&'()*+,-./0123456789:/@ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz~?# http://a.example/p http://a.example/o .

Example 8: IRI_with_all_punctuation Result

scheme:!$%25&'()*+,-./0123456789:/@ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz~?# http://a.example/p http://a.example/o .

Testbareword_a_predicate

bareword a predicate

Example 9: bareword_a_predicate Input

http://a.example/s a http://a.example/o .

Example 10: bareword_a_predicate Result

http://a.example/s http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://a.example/o .

Testold_style_prefix

old-style prefix

Example 11: old_style_prefix Input

@prefix p: http://a.example/.
p:s http://a.example/p http://a.example/o .

Example 12: old_style_prefix Result

http://a.example/s http://a.example/p http://a.example/o .

TestSPARQL_style_prefix

SPARQL-style prefix

Example 13: SPARQL_style_prefix Input

PREFIX p: http://a.example/
p:s http://a.example/p http://a.example/o .

Example 14: SPARQL_style_prefix Result

http://a.example/s http://a.example/p http://a.example/o .

Testprefixed_IRI_predicate

prefixed IRI predicate

Example 15: prefixed_IRI_predicate Input

@prefix p: http://a.example/.
http://a.example/s p:p http://a.example/o .

Example 16: prefixed_IRI_predicate Result

http://a.example/s http://a.example/p http://a.example/o .

Testprefixed_IRI_object

prefixed IRI object

Example 17: prefixed_IRI_object Input

@prefix p: http://a.example/.
http://a.example/s http://a.example/p p:o .

Example 18: prefixed_IRI_object Result

http://a.example/s http://a.example/p http://a.example/o .

Testprefix_only_IRI

prefix-only IRI (p:)

Example 19: prefix_only_IRI Input

@prefix p: http://a.example/s.
p: http://a.example/p http://a.example/o .

Example 20: prefix_only_IRI Result

http://a.example/s http://a.example/p http://a.example/o .

Testprefix_with_PN_CHARS_BASE_character_boundaries

prefix with PN CHARS BASE character boundaries (prefix: AZazÀÖØöø...:)

Example 21: prefix_with_PN_CHARS_BASE_character_boundaries Input

@prefix AZazÀÖØöø˿ͰͽͿ῿‌‍⁰↏Ⰰ⿯、퟿豈﷏ﷰ�𐀀󯿽: http://a.example/ .
http://a.example/s http://a.example/p AZazÀÖØöø˿ͰͽͿ῿‌‍⁰↏Ⰰ⿯、퟿豈﷏ﷰ�𐀀󯿽:o .

Example 22: prefix_with_PN_CHARS_BASE_character_boundaries Result

http://a.example/s http://a.example/p http://a.example/o .

prefix with_non_leading_extras (_:a·̀ͯ‿.⁀)

Example 23: prefix_with_non_leading_extras Input

@prefix a·̀ͯ‿.⁀: http://a.example/.
a·̀ͯ‿.⁀:s http://a.example/p http://a.example/o .

Example 24: prefix_with_non_leading_extras Result

http://a.example/s http://a.example/p http://a.example/o .

Testdefault_namespace_IRI

default namespace IRI (:ln)

Example 25: default_namespace_IRI Input

@prefix : http://a.example/.
:s http://a.example/p http://a.example/o .

Example 26: default_namespace_IRI Result

http://a.example/s http://a.example/p http://a.example/o .

Testprefix_reassigned_and_used

prefix reassigned and used

Example 27: prefix_reassigned_and_used Input

@prefix p: http://a.example/.
@prefix p: http://b.example/.
p:s http://a.example/p http://a.example/o .

Example 28: prefix_reassigned_and_used Result

http://b.example/s http://a.example/p http://a.example/o .

Testreserved_escaped_localName

reserved-escaped local name

Example 29: reserved_escaped_localName Input

@prefix p: http://a.example/.
p:_~.-!$&'()*+,;=/?#@%00 http://a.example/p http://a.example/o .

Example 30: reserved_escaped_localName Result

http://a.example/_~.-!$&'()*+,;=/?#@%00 http://a.example/p http://a.example/o .

Testpercent_escaped_localName

percent-escaped local name

Example 31: percent_escaped_localName Input

@prefix p: http://a.example/.
p:%25 http://a.example/p http://a.example/o .

Example 32: percent_escaped_localName Result

http://a.example/%25 http://a.example/p http://a.example/o .

TestHYPHEN_MINUS_in_localName

HYPHEN-MINUS in local name

Example 33: HYPHEN_MINUS_in_localName Input

@prefix p: http://a.example/.
p:s- http://a.example/p http://a.example/o .

Example 34: HYPHEN_MINUS_in_localName Result

http://a.example/s- http://a.example/p http://a.example/o .

Testunderscore_in_localName

underscore in local name

Example 35: underscore_in_localName Input

@prefix p: http://a.example/.
p:s_ http://a.example/p http://a.example/o .

Example 36: underscore_in_localName Result

http://a.example/s_ http://a.example/p http://a.example/o .

Testlocalname_with_COLON

localname with COLON

Example 37: localname_with_COLON Input

@prefix p: http://a.example/.
p:s: http://a.example/p http://a.example/o .

Example 38: localname_with_COLON Result

http://a.example/s: http://a.example/p http://a.example/o .

TestlocalName_with_assigned_nfc_bmp_PN_CHARS_BASE_character_boundaries

localName with assigned, NFC-normalized, basic-multilingual-plane PN CHARS BASE character boundaries (p:AZazÀÖØöø...)

Example 39: localName_with_assigned_nfc_bmp_PN_CHARS_BASE_character_boundaries Input

@prefix p: http://a.example/ .
http://a.example/s http://a.example/p p:AZazÀÖØöø˿Ͱͽ΄῾‌‍⁰↉Ⰰ⿕、ퟻ﨎ﷇﷰ￯ .

Example 40: localName_with_assigned_nfc_bmp_PN_CHARS_BASE_character_boundaries Result

http://a.example/s http://a.example/p http://a.example/AZaz\u00C0\u00D6\u00D8\u00F6\u00F8\u02FF\u0370\u037D\u0384\u1FFE\u200C\u200D\u2070\u2189\u2C00\u2FD5\u3001\uD7FB\uFA0E\uFDC7\uFDF0\uFFEF .

TestlocalName_with_assigned_nfc_PN_CHARS_BASE_character_boundaries

localName with assigned, NFC-normalized PN CHARS BASE character boundaries (p:AZazÀÖØöø...)

Example 41: localName_with_assigned_nfc_PN_CHARS_BASE_character_boundaries Input

@prefix p: http://a.example/ .
http://a.example/s http://a.example/p p:AZazÀÖØöø˿Ͱͽ΄῾‌‍⁰↉Ⰰ⿕、ퟻ﨎ﷇﷰ￯𐀀󠇯 .

Example 42: localName_with_assigned_nfc_PN_CHARS_BASE_character_boundaries Result

http://a.example/s http://a.example/p http://a.example/AZaz\u00C0\u00D6\u00D8\u00F6\u00F8\u02FF\u0370\u037D\u0384\u1FFE\u200C\u200D\u2070\u2189\u2C00\u2FD5\u3001\uD7FB\uFA0E\uFDC7\uFDF0\uFFEF\U00010000\U000E01EF .

TestlocalName_with_nfc_PN_CHARS_BASE_character_boundaries

localName with nfc-normalize PN CHARS BASE character boundaries (p:AZazÀÖØöø...)

Example 43: localName_with_nfc_PN_CHARS_BASE_character_boundaries Input

@prefix p: http://a.example/ .
http://a.example/s http://a.example/p p:AZazÀÖØöø˿ͰͽͿ῿‌‍⁰↏Ⰰ⿯、퟿﨎﷏ﷰ￯𐀀󯿽 .

Example 44: localName_with_nfc_PN_CHARS_BASE_character_boundaries Result

http://a.example/s http://a.example/p http://a.example/AZaz\u00C0\u00D6\u00D8\u00F6\u00F8\u02FF\u0370\u037D\u037F\u1FFF\u200C\u200D\u2070\u218F\u2C00\u2FEF\u3001\uD7FF\uFA0E\uFDCF\uFDF0\uFFEF\U00010000\U000EFFFD .

TestlocalName_with_leading_underscore

localName with leading underscore (p:_)

Example 45: localName_with_leading_underscore Input

@prefix p: http://a.example/.
p:_ http://a.example/p http://a.example/o .

Example 46: localName_with_leading_underscore Result

http://a.example/_ http://a.example/p http://a.example/o .

TestlocalName_with_leading_digit

localName with leading digit (p:_)

Example 47: localName_with_leading_digit Input

@prefix p: http://a.example/.
p:0 http://a.example/p http://a.example/o .

Example 48: localName_with_leading_digit Result

http://a.example/0 http://a.example/p http://a.example/o .

localName with_non_leading_extras (_:a·̀ͯ‿.⁀)

Example 49: localName_with_non_leading_extras Input

@prefix p: http://a.example/.
p:a·̀ͯ‿.⁀ http://a.example/p http://a.example/o .

Example 50: localName_with_non_leading_extras Result

http://a.example/a\u00b7\u0300\u036f\u203f\u002e\u2040 http://a.example/p http://a.example/o .

Testold_style_base

old-style base

Example 51: old_style_base Input

@base http://a.example/.
http://a.example/p http://a.example/o .

Example 52: old_style_base Result

http://a.example/s http://a.example/p http://a.example/o .

TestSPARQL_style_base

SPARQL-style base

Example 53: SPARQL_style_base Input

BASE http://a.example/
http://a.example/p http://a.example/o .

Example 54: SPARQL_style_base Result

http://a.example/s http://a.example/p http://a.example/o .

Testlabeled_blank_node_subject

labeled blank node subject

Example 55: labeled_blank_node_subject Input

_:s http://a.example/p http://a.example/o .

Example 56: labeled_blank_node_subject Result

_:b1 http://a.example/p http://a.example/o .

Testlabeled_blank_node_object

labeled blank node object

Example 57: labeled_blank_node_object Input

http://a.example/s http://a.example/p _:o .

Example 58: labeled_blank_node_object Result

http://a.example/s http://a.example/p _:b1 .

Testlabeled_blank_node_with_PN_CHARS_BASE_character_boundaries

labeled blank node with PN_CHARS_BASE character boundaries (_:AZazÀÖØöø...)

Example 59: labeled_blank_node_with_PN_CHARS_BASE_character_boundaries Input

http://a.example/s http://a.example/p _:AZazÀÖØöø˿ͰͽͿ῿‌‍⁰↏Ⰰ⿯、퟿豈﷏ﷰ�𐀀󯿽 .

Example 60: labeled_blank_node_with_PN_CHARS_BASE_character_boundaries Result

http://a.example/s http://a.example/p _:b1 .

Testlabeled_blank_node_with_leading_underscore

labeled blank node with_leading_underscore (_:_)

Example 61: labeled_blank_node_with_leading_underscore Input

http://a.example/s http://a.example/p : .

Example 62: labeled_blank_node_with_leading_underscore Result

http://a.example/s http://a.example/p _:b1 .

Testlabeled_blank_node_with_leading_digit

labeled blank node with_leading_digit (_:0)

Example 63: labeled_blank_node_with_leading_digit Input

http://a.example/s http://a.example/p _:0 .

Example 64: labeled_blank_node_with_leading_digit Result

http://a.example/s http://a.example/p _:b1 .

labeled blank node with_non_leading_extras (_:a·̀ͯ‿.⁀)

Example 65: labeled_blank_node_with_non_leading_extras Input

http://a.example/s http://a.example/p _:a·̀ͯ‿.⁀ .

Example 66: labeled_blank_node_with_non_leading_extras Result

http://a.example/s http://a.example/p _:b1 .

Testanonymous_blank_node_subject

anonymous blank node subject

Example 67: anonymous_blank_node_subject Input

[] http://a.example/p http://a.example/o .

Example 68: anonymous_blank_node_subject Result

_:b1 http://a.example/p http://a.example/o .

Testanonymous_blank_node_object

anonymous blank node object

Example 69: anonymous_blank_node_object Input

http://a.example/s http://a.example/p [] .

Example 70: anonymous_blank_node_object Result

http://a.example/s http://a.example/p _:b1 .

Testsole_blankNodePropertyList

sole blankNodePropertyList [

] .

Example 71: sole_blankNodePropertyList Input

[ http://a.example/p http://a.example/o ] .

Example 72: sole_blankNodePropertyList Result

_:b1 http://a.example/p http://a.example/o .

TestblankNodePropertyList_as_subject

blankNodePropertyList as subject [ … ]

.

Example 73: blankNodePropertyList_as_subject Input

[ http://a.example/p http://a.example/o ] http://a.example/p2 http://a.example/o2 .

Example 74: blankNodePropertyList_as_subject Result

_:b1 http://a.example/p http://a.example/o .
_:b1 http://a.example/p2 http://a.example/o2 .

TestblankNodePropertyList_as_object

blankNodePropertyList as object

[ … ] .

Example 75: blankNodePropertyList_as_object Input

http://a.example/s http://a.example/p [ http://a.example/p2 http://a.example/o2 ] .

Example 76: blankNodePropertyList_as_object Result

http://a.example/s http://a.example/p _:b1 .
_:b1 http://a.example/p2 http://a.example/o2 .

TestblankNodePropertyList_with_multiple_triples

blankNodePropertyList with multiple triples [

; ]

Example 77: blankNodePropertyList_with_multiple_triples Input

[ http://a.example/p1 http://a.example/o1 ; http://a.example/p2 http://a.example/o2 ] http://a.example/p http://a.example/o .

Example 78: blankNodePropertyList_with_multiple_triples Result

_:b1 http://a.example/p1 http://a.example/o1 .
_:b1 http://a.example/p2 http://a.example/o2 .
_:b1 http://a.example/p http://a.example/o .

Testnested_blankNodePropertyLists

nested blankNodePropertyLists [ [ ] ; ]

Example 79: nested_blankNodePropertyLists Input

[ http://a.example/p1 [ http://a.example/p2 http://a.example/o2 ] ; http://a.example/p http://a.example/o ].

Example 80: nested_blankNodePropertyLists Result

_:b1 http://a.example/p1 _:b2 .
_:b2 http://a.example/p2 http://a.example/o2 .
_:b1 http://a.example/p http://a.example/o .

TestblankNodePropertyList_containing_collection

blankNodePropertyList containing collection [ ( … ) ]

Example 81: blankNodePropertyList_containing_collection Input

[ http://a.example/p1 (1) ] .

Example 82: blankNodePropertyList_containing_collection Result

_:b1 http://a.example/p1 _:el1 .
_:el1 http://www.w3.org/1999/02/22-rdf-syntax-ns#first "1"^^http://www.w3.org/2001/XMLSchema#integer .
_:el1 http://www.w3.org/1999/02/22-rdf-syntax-ns#rest http://www.w3.org/1999/02/22-rdf-syntax-ns#nil .

Testcollection_subject

collection subject

Example 83: collection_subject Input

(1) http://a.example/p http://a.example/o .

Example 84: collection_subject Result

_:el1 http://www.w3.org/1999/02/22-rdf-syntax-ns#first "1"^^http://www.w3.org/2001/XMLSchema#integer .
_:el1 http://www.w3.org/1999/02/22-rdf-syntax-ns#rest http://www.w3.org/1999/02/22-rdf-syntax-ns#nil .
_:el1 http://a.example/p http://a.example/o .

Testcollection_object

collection object

Example 85: collection_object Input

http://a.example/s http://a.example/p (1) .

Example 86: collection_object Result

http://a.example/s http://a.example/p _:el1 .
_:el1 http://www.w3.org/1999/02/22-rdf-syntax-ns#first "1"^^http://www.w3.org/2001/XMLSchema#integer .
_:el1 http://www.w3.org/1999/02/22-rdf-syntax-ns#rest http://www.w3.org/1999/02/22-rdf-syntax-ns#nil .

Testempty_collection

empty collection ()

Example 87: empty_collection Input

http://a.example/s http://a.example/p () .

Example 88: empty_collection Result

http://a.example/s http://a.example/p http://www.w3.org/1999/02/22-rdf-syntax-ns#nil .

Testnested_collection

nested collection (())

Example 89: nested_collection Input

http://a.example/s http://a.example/p ((1)) .

Example 90: nested_collection Result

http://a.example/s http://a.example/p _:outerEl1 .
_:outerEl1 http://www.w3.org/1999/02/22-rdf-syntax-ns#first _:innerEl1 .
_:innerEl1 http://www.w3.org/1999/02/22-rdf-syntax-ns#first "1"^^http://www.w3.org/2001/XMLSchema#integer .
_:innerEl1 http://www.w3.org/1999/02/22-rdf-syntax-ns#rest http://www.w3.org/1999/02/22-rdf-syntax-ns#nil .
_:outerEl1 http://www.w3.org/1999/02/22-rdf-syntax-ns#rest http://www.w3.org/1999/02/22-rdf-syntax-ns#nil .

Testfirst

first, not last, non-empty nested collection

Example 91: first Input

http://a.example/s http://a.example/p ((1) 2) .

Example 92: first Result

http://a.example/s http://a.example/p _:outerEl1 .
_:outerEl1 http://www.w3.org/1999/02/22-rdf-syntax-ns#first _:innerEl1 .
_:innerEl1 http://www.w3.org/1999/02/22-rdf-syntax-ns#first "1"^^http://www.w3.org/2001/XMLSchema#integer .
_:innerEl1 http://www.w3.org/1999/02/22-rdf-syntax-ns#rest http://www.w3.org/1999/02/22-rdf-syntax-ns#nil .
_:outerEl1 http://www.w3.org/1999/02/22-rdf-syntax-ns#rest _:outerEl2 .
_:outerEl2 http://www.w3.org/1999/02/22-rdf-syntax-ns#first "2"^^http://www.w3.org/2001/XMLSchema#integer .
_:outerEl2 http://www.w3.org/1999/02/22-rdf-syntax-ns#rest http://www.w3.org/1999/02/22-rdf-syntax-ns#nil .

Testlast

last, not first, non-empty nested collection

Example 93: last Input

http://a.example/s http://a.example/p (1 (2)) .

Example 94: last Result

http://a.example/s http://a.example/p _:outerEl1 .
_:outerEl1 http://www.w3.org/1999/02/22-rdf-syntax-ns#first "1"^^http://www.w3.org/2001/XMLSchema#integer .
_:outerEl1 http://www.w3.org/1999/02/22-rdf-syntax-ns#rest _:outerEl2 .
_:outerEl2 http://www.w3.org/1999/02/22-rdf-syntax-ns#first _:innerEl1 .
_:innerEl1 http://www.w3.org/1999/02/22-rdf-syntax-ns#first "2"^^http://www.w3.org/2001/XMLSchema#integer .
_:innerEl1 http://www.w3.org/1999/02/22-rdf-syntax-ns#rest http://www.w3.org/1999/02/22-rdf-syntax-ns#nil .
_:outerEl2 http://www.w3.org/1999/02/22-rdf-syntax-ns#rest http://www.w3.org/1999/02/22-rdf-syntax-ns#nil .

TestLITERAL1

LITERAL1 'x'

Example 95: LITERAL1 Input

http://a.example/s http://a.example/p 'x' .

Example 96: LITERAL1 Result

http://a.example/s http://a.example/p "x" .

TestLITERAL1_ascii_boundaries

LITERAL1_ascii_boundaries '\x00\x09\x0b\x0c\x0e\x26\x28...'

Example 97: LITERAL1_ascii_boundaries Input

http://a.example/s http://a.example/p ' &([]' .

Example 98: LITERAL1_ascii_boundaries Result

http://a.example/s http://a.example/p "\u0000\t\u000B\u000C\u000E&([]\u007F" .

TestLITERAL1_with_UTF8_boundaries

LITERAL1_with_UTF8_boundaries '\x80\x7ff\x800\xfff...'

Example 99: LITERAL1_with_UTF8_boundaries Input

http://a.example/s http://a.example/p '€߿ࠀ࿿က쿿퀀퟿�𐀀𿿽񀀀󿿽􀀀􏿽' .

Example 100: LITERAL1_with_UTF8_boundaries Result

http://a.example/s http://a.example/p "\u0080\u07FF\u0800\u0FFF\u1000\uCFFF\uD000\uD7FF\uE000\uFFFD\U00010000\U0003FFFD\U00040000\U000FFFFD\U00100000\U0010FFFD" .

TestLITERAL1_all_controls

LITERAL1_all_controls '\x00\x01\x02\x03\x04...'

Example 101: LITERAL1_all_controls Input

http://a.example/s http://a.example/p ' ' .

Example 102: LITERAL1_all_controls Result

http://a.example/s http://a.example/p "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\u0008\t\u000B\u000C\u000E\u000F\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" .

TestLITERAL1_all_punctuation

LITERAL1_all_punctuation '!"#$%&()...'

Example 103: LITERAL1_all_punctuation Input

http://a.example/s http://a.example/p ' !"#$%&():;<=>?@[]^_`{|}~' .

Example 104: LITERAL1_all_punctuation Result

http://a.example/s http://a.example/p " !"#$%&():;<=>?@[]^_`{|}~" .

TestLITERAL_LONG1

LITERAL_LONG1 '''x'''

Example 105: LITERAL_LONG1 Input

http://a.example/s http://a.example/p '''x''' .

Example 106: LITERAL_LONG1 Result

http://a.example/s http://a.example/p "x" .

TestLITERAL_LONG1_ascii_boundaries

LITERAL_LONG1_ascii_boundaries '\x00\x26\x28...'

Example 107: LITERAL_LONG1_ascii_boundaries Input

http://a.example/s http://a.example/p '&([]' .

Example 108: LITERAL_LONG1_ascii_boundaries Result

http://a.example/s http://a.example/p "\u0000&([]\u007F" .

TestLITERAL_LONG1_with_UTF8_boundaries

LITERAL_LONG1_with_UTF8_boundaries '\x80\x7ff\x800\xfff...'

Example 109: LITERAL_LONG1_with_UTF8_boundaries Input

http://a.example/s http://a.example/p '''€߿ࠀ࿿က쿿퀀퟿�𐀀𿿽񀀀󿿽􀀀􏿽''' .

Example 110: LITERAL_LONG1_with_UTF8_boundaries Result

http://a.example/s http://a.example/p "\u0080\u07FF\u0800\u0FFF\u1000\uCFFF\uD000\uD7FF\uE000\uFFFD\U00010000\U0003FFFD\U00040000\U000FFFFD\U00100000\U0010FFFD" .

TestLITERAL_LONG1_with_1_squote

LITERAL_LONG1 with 1 squote '''a'b'''

Example 111: LITERAL_LONG1_with_1_squote Input

http://a.example/s http://a.example/p '''x'y''' .

Example 112: LITERAL_LONG1_with_1_squote Result

http://a.example/s http://a.example/p "x'y" .

TestLITERAL_LONG1_with_2_squotes

LITERAL_LONG1 with 2 squotes '''a''b'''

Example 113: LITERAL_LONG1_with_2_squotes Input

http://a.example/s http://a.example/p '''x''y''' .

Example 114: LITERAL_LONG1_with_2_squotes Result

http://a.example/s http://a.example/p "x''y" .

TestLITERAL2

LITERAL2 "x"

Example 115: LITERAL2 Input

http://a.example/s http://a.example/p "x" .

Example 116: LITERAL2 Result

http://a.example/s http://a.example/p "x" .

TestLITERAL2_ascii_boundaries

LITERAL2_ascii_boundaries '\x00\x09\x0b\x0c\x0e\x21\x23...'

Example 117: LITERAL2_ascii_boundaries Input

http://a.example/s http://a.example/p " !#[]" .

Example 118: LITERAL2_ascii_boundaries Result

http://a.example/s http://a.example/p "\u0000\t\u000B\u000C\u000E!#[]\u007F" .

TestLITERAL2_with_UTF8_boundaries

LITERAL2_with_UTF8_boundaries '\x80\x7ff\x800\xfff...'

Example 119: LITERAL2_with_UTF8_boundaries Input

http://a.example/s http://a.example/p "€߿ࠀ࿿က쿿퀀퟿�𐀀𿿽񀀀󿿽􀀀􏿽" .

Example 120: LITERAL2_with_UTF8_boundaries Result

http://a.example/s http://a.example/p "\u0080\u07FF\u0800\u0FFF\u1000\uCFFF\uD000\uD7FF\uE000\uFFFD\U00010000\U0003FFFD\U00040000\U000FFFFD\U00100000\U0010FFFD" .

TestLITERAL_LONG2

LITERAL_LONG2 """x"""

Example 121: LITERAL_LONG2 Input

http://a.example/s http://a.example/p """x""" .

Example 122: LITERAL_LONG2 Result

http://a.example/s http://a.example/p "x" .

TestLITERAL_LONG2_ascii_boundaries

LITERAL_LONG2_ascii_boundaries '\x00\x21\x23...'

Example 123: LITERAL_LONG2_ascii_boundaries Input

http://a.example/s http://a.example/p "!#[]" .

Example 124: LITERAL_LONG2_ascii_boundaries Result

http://a.example/s http://a.example/p "\u0000!#[]\u007F" .

TestLITERAL_LONG2_with_UTF8_boundaries

LITERAL_LONG2_with_UTF8_boundaries '\x80\x7ff\x800\xfff...'

Example 125: LITERAL_LONG2_with_UTF8_boundaries Input

http://a.example/s http://a.example/p """€߿ࠀ࿿က쿿퀀퟿�𐀀𿿽񀀀󿿽􀀀􏿽""" .

Example 126: LITERAL_LONG2_with_UTF8_boundaries Result

http://a.example/s http://a.example/p "\u0080\u07FF\u0800\u0FFF\u1000\uCFFF\uD000\uD7FF\uE000\uFFFD\U00010000\U0003FFFD\U00040000\U000FFFFD\U00100000\U0010FFFD" .

TestLITERAL_LONG2_with_1_squote

LITERAL_LONG2 with 1 squote """a"b"""

Example 127: LITERAL_LONG2_with_1_squote Input

http://a.example/s http://a.example/p """x"y""" .

Example 128: LITERAL_LONG2_with_1_squote Result

http://a.example/s http://a.example/p "x"y" .

TestLITERAL_LONG2_with_2_squotes

LITERAL_LONG2 with 2 squotes """a""b"""

Example 129: LITERAL_LONG2_with_2_squotes Input

http://a.example/s http://a.example/p """x""y""" .

Example 130: LITERAL_LONG2_with_2_squotes Result

http://a.example/s http://a.example/p "x""y" .

Testliteral_with_CHARACTER_TABULATION

literal with CHARACTER TABULATION

Example 131: literal_with_CHARACTER_TABULATION Input

http://a.example/s http://a.example/p ' ' .

Example 132: literal_with_CHARACTER_TABULATION Result

http://a.example/s http://a.example/p "\t" .

Testliteral_with_BACKSPACE

literal with BACKSPACE

Example 133: literal_with_BACKSPACE Input

http://a.example/s http://a.example/p '' .

Example 134: literal_with_BACKSPACE Result

http://a.example/s http://a.example/p "\u0008" .

Testliteral_with_LINE_FEED

literal with LINE FEED

Example 135: literal_with_LINE_FEED Input

http://a.example/s http://a.example/p '''
''' .

Example 136: literal_with_LINE_FEED Result

http://a.example/s http://a.example/p "\n" .

Testliteral_with_CARRIAGE_RETURN

literal with CARRIAGE RETURN

Example 137: literal_with_CARRIAGE_RETURN Input

http://a.example/s http://a.example/p ''' ''' .

Example 138: literal_with_CARRIAGE_RETURN Result

http://a.example/s http://a.example/p "\r" .

Testliteral_with_FORM_FEED

literal with FORM FEED

Example 139: literal_with_FORM_FEED Input

http://a.example/s http://a.example/p ' ' .

Example 140: literal_with_FORM_FEED Result

http://a.example/s http://a.example/p "\u000C" .

Testliteral_with_REVERSE_SOLIDUS

literal with REVERSE SOLIDUS

Example 141: literal_with_REVERSE_SOLIDUS Input

http://a.example/s http://a.example/p '\' .

Example 142: literal_with_REVERSE_SOLIDUS Result

http://a.example/s http://a.example/p "\" .

Testliteral_with_escaped_CHARACTER_TABULATION

literal with escaped CHARACTER TABULATION

Example 143: literal_with_escaped_CHARACTER_TABULATION Input

http://a.example/s http://a.example/p '\t' .

Example 144: literal_with_escaped_CHARACTER_TABULATION Result

http://a.example/s http://a.example/p "\t" .

Testliteral_with_escaped_BACKSPACE

literal with escaped BACKSPACE

Example 145: literal_with_escaped_BACKSPACE Input

http://a.example/s http://a.example/p '\b' .

Example 146: literal_with_escaped_BACKSPACE Result

http://a.example/s http://a.example/p "\u0008" .

Testliteral_with_escaped_LINE_FEED

literal with escaped LINE FEED

Example 147: literal_with_escaped_LINE_FEED Input

http://a.example/s http://a.example/p '\n' .

Example 148: literal_with_escaped_LINE_FEED Result

http://a.example/s http://a.example/p "\n" .

Testliteral_with_escaped_CARRIAGE_RETURN

literal with escaped CARRIAGE RETURN

Example 149: literal_with_escaped_CARRIAGE_RETURN Input

http://a.example/s http://a.example/p '\r' .

Example 150: literal_with_escaped_CARRIAGE_RETURN Result

http://a.example/s http://a.example/p "\r" .

Testliteral_with_escaped_FORM_FEED

literal with escaped FORM FEED

Example 151: literal_with_escaped_FORM_FEED Input

http://a.example/s http://a.example/p '\f' .

Example 152: literal_with_escaped_FORM_FEED Result

http://a.example/s http://a.example/p "\u000C" .

Testliteral_with_numeric_escape4

literal with numeric escape4 \u

Example 153: literal_with_numeric_escape4 Input

http://a.example/s http://a.example/p '\u006F' .

Example 154: literal_with_numeric_escape4 Result

http://a.example/s http://a.example/p "o" .

Testliteral_with_numeric_escape8

literal with numeric escape8 \U

Example 155: literal_with_numeric_escape8 Input

http://a.example/s http://a.example/p '\U0000006F' .

Example 156: literal_with_numeric_escape8 Result

http://a.example/s http://a.example/p "o" .

TestIRIREF_datatype

IRIREF datatype ""^^

Example 157: IRIREF_datatype Input

http://a.example/s http://a.example/p "1"^^http://www.w3.org/2001/XMLSchema#integer .

Example 158: IRIREF_datatype Result

http://a.example/s http://a.example/p "1"^^http://www.w3.org/2001/XMLSchema#integer .

Testprefixed_name_datatype

prefixed name datatype ""^^p:t

Example 159: prefixed_name_datatype Input

@prefix xsd: http://www.w3.org/2001/XMLSchema# .
http://a.example/s http://a.example/p "1"^^xsd:integer .

Example 160: prefixed_name_datatype Result

http://a.example/s http://a.example/p "1"^^http://www.w3.org/2001/XMLSchema#integer .

Testbareword_integer

bareword integer

Example 161: bareword_integer Input

http://a.example/s http://a.example/p 1 .

Example 162: bareword_integer Result

http://a.example/s http://a.example/p "1"^^http://www.w3.org/2001/XMLSchema#integer .

Testbareword_decimal

bareword decimal

Example 163: bareword_decimal Input

http://a.example/s http://a.example/p 1.0 .

Example 164: bareword_decimal Result

http://a.example/s http://a.example/p "1.0"^^http://www.w3.org/2001/XMLSchema#decimal .

Testbareword_double

bareword double

Example 165: bareword_double Input

http://a.example/s http://a.example/p 1E0 .

Example 166: bareword_double Result

http://a.example/s http://a.example/p "1E0"^^http://www.w3.org/2001/XMLSchema#double .

Testdouble_lower_case_e

double lower case e

Example 167: double_lower_case_e Input

http://a.example/s http://a.example/p 1e0 .

Example 168: double_lower_case_e Result

http://a.example/s http://a.example/p "1e0"^^http://www.w3.org/2001/XMLSchema#double .

Testnegative_numeric

negative numeric

Example 169: negative_numeric Input

http://a.example/s http://a.example/p -1 .

Example 170: negative_numeric Result

http://a.example/s http://a.example/p "-1"^^http://www.w3.org/2001/XMLSchema#integer .

Testpositive_numeric

positive numeric

Example 171: positive_numeric Input

http://a.example/s http://a.example/p +1 .

Example 172: positive_numeric Result

http://a.example/s http://a.example/p "+1"^^http://www.w3.org/2001/XMLSchema#integer .

Testnumeric_with_leading_0

numeric with leading 0

Example 173: numeric_with_leading_0 Input

http://a.example/s http://a.example/p 01 .

Example 174: numeric_with_leading_0 Result

http://a.example/s http://a.example/p "01"^^http://www.w3.org/2001/XMLSchema#integer .

Testliteral_true

literal true

Example 175: literal_true Input

http://a.example/s http://a.example/p true .

Example 176: literal_true Result

http://a.example/s http://a.example/p "true"^^http://www.w3.org/2001/XMLSchema#boolean .

Testliteral_false

literal false

Example 177: literal_false Input

http://a.example/s http://a.example/p false .

Example 178: literal_false Result

http://a.example/s http://a.example/p "false"^^http://www.w3.org/2001/XMLSchema#boolean .

Testlangtagged_non_LONG

langtagged non-LONG "x"@en

Example 179: langtagged_non_LONG Input

http://a.example/s http://a.example/p "chat"@en .

Example 180: langtagged_non_LONG Result

http://a.example/s http://a.example/p "chat"@en .

Testlangtagged_LONG

langtagged LONG """x"""@en

Example 181: langtagged_LONG Input

http://a.example/s http://a.example/p """chat"""@en .

Example 182: langtagged_LONG Result

http://a.example/s http://a.example/p "chat"@en .

Testlantag_with_subtag

lantag with subtag "x"@en-us

Example 183: lantag_with_subtag Input

http://a.example/s http://a.example/p "chat"@en-us .

Example 184: lantag_with_subtag Result

http://a.example/s http://a.example/p "chat"@en-us .

TestobjectList_with_two_objects

objectList with two objects … ,

Example 185: objectList_with_two_objects Input

http://a.example/s http://a.example/p http://a.example/o1, http://a.example/o2 .

Example 186: objectList_with_two_objects Result

http://a.example/s http://a.example/p http://a.example/o1 .
http://a.example/s http://a.example/p http://a.example/o2 .

TestpredicateObjectList_with_two_objectLists

predicateObjectList with two objectLists … ,

Example 187: predicateObjectList_with_two_objectLists Input

http://a.example/s http://a.example/p1 http://a.example/o1; http://a.example/p2 http://a.example/o2 .

Example 188: predicateObjectList_with_two_objectLists Result

http://a.example/s http://a.example/p1 http://a.example/o1 .
http://a.example/s http://a.example/p2 http://a.example/o2 .

Testrepeated_semis_at_end

repeated semis at end

;; .

Example 189: repeated_semis_at_end Input

http://a.example/s http://a.example/p1 http://a.example/o1;; http://a.example/p2 http://a.example/o2 .

Example 190: repeated_semis_at_end Result

http://a.example/s http://a.example/p1 http://a.example/o1 .
http://a.example/s http://a.example/p2 http://a.example/o2 .

Testrepeated_semis_not_at_end

repeated semis not at end

;;.

Example 191: repeated_semis_not_at_end Input

http://a.example/s http://a.example/p1 http://a.example/o1;; .

Example 192: repeated_semis_not_at_end Result

http://a.example/s http://a.example/p1 http://a.example/o1 .

comment following localName

Example 193: comment_following_localName Input

@prefix p: http://a.example/ .
http://a.example/s http://a.example/p p:o#comment
.

Example 194: comment_following_localName Result

http://a.example/s http://a.example/p http://a.example/o .

Testnumber_sign_following_localName

number sign following localName

Example 195: number_sign_following_localName Input

@prefix p: http://a.example/ .
http://a.example/s http://a.example/p p:o#numbersign
.

Example 196: number_sign_following_localName Result

http://a.example/s http://a.example/p http://a.example/o#numbersign .

comment following PNAME_NS

Example 197: comment_following_PNAME_NS Input

@prefix p: http://a.example/ .
http://a.example/s http://a.example/p p:#comment
.

Example 198: comment_following_PNAME_NS Result

http://a.example/s http://a.example/p http://a.example/ .

Testnumber_sign_following_PNAME_NS

number sign following PNAME_NS

Example 199: number_sign_following_PNAME_NS Input

@prefix p: http://a.example/.
http://a.example/s http://a.example/p p:#numbersign
.

Example 200: number_sign_following_PNAME_NS Result

http://a.example/s http://a.example/p http://a.example/#numbersign .

TestLITERAL_LONG2_with_REVERSE_SOLIDUS

REVERSE SOLIDUS at end of LITERAL_LONG2

Example 201: LITERAL_LONG2_with_REVERSE_SOLIDUS Input

@prefix : http://example.org/ns# .

:s :p1 """test-\""" .

Example 202: LITERAL_LONG2_with_REVERSE_SOLIDUS Result

http://example.org/ns#s http://example.org/ns#p1 "test-\" .

Testturtle-syntax-bad-num-05

Bad number format (negative test)

Example 203: turtle-syntax-bad-num-05 Input

http://example.org/resource http://example.org#pred "value"@en^^http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral .

Testtwo_LITERAL_LONG2s

two LITERAL_LONG2s testing quote delimiter overrun

Example 204: two_LITERAL_LONG2s Input

Test long literal twice to ensure it does not over-quote

@prefix : http://example.org/ex# .
:a :b """first long literal""" .
:c :d """second long literal""" .

Example 205: two_LITERAL_LONG2s Result

http://example.org/ex#a http://example.org/ex#b "first long literal" .
http://example.org/ex#c http://example.org/ex#d "second long literal" .

Testlangtagged_LONG_with_subtag

langtagged LONG with subtag """Cheers"""@en-UK

Example 206: langtagged_LONG_with_subtag Input

Test long literal with lang tag

@prefix : http://example.org/ex# .
:a :b """Cheers"""@en-UK .

Example 207: langtagged_LONG_with_subtag Result

http://example.org/ex#a http://example.org/ex#b "Cheers"@en-UK .

Testturtle-syntax-file-01

Empty file

Example 208: turtle-syntax-file-01 Input

Testturtle-syntax-file-02

Only comment

Example 209: turtle-syntax-file-02 Input

#Empty file.

Testturtle-syntax-file-03

One comment, one empty line

Example 210: turtle-syntax-file-03 Input

#One comment, one empty line.

Testturtle-syntax-uri-01

Only IRIs

Example 211: turtle-syntax-uri-01 Input

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p http://www.w3.org/2013/TurtleTests/o .

Testturtle-syntax-uri-02

IRIs with Unicode escape

Example 212: turtle-syntax-uri-02 Input

x53 is capital S

http://www.w3.org/2013/TurtleTests/\u0053 http://www.w3.org/2013/TurtleTests/p http://www.w3.org/2013/TurtleTests/o .

Testturtle-syntax-uri-03

IRIs with long Unicode escape

Example 213: turtle-syntax-uri-03 Input

x53 is capital S

http://www.w3.org/2013/TurtleTests/\U00000053 http://www.w3.org/2013/TurtleTests/p http://www.w3.org/2013/TurtleTests/o .

Testturtle-syntax-uri-04

Legal IRIs

Example 214: turtle-syntax-uri-04 Input

IRI with all chars in it.

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p
scheme:!$%25&'()*+,-./0123456789:/@ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz~?# .

Testturtle-syntax-base-01

@base

Example 215: turtle-syntax-base-01 Input

@base http://www.w3.org/2013/TurtleTests/ .

Testturtle-syntax-base-02

BASE

Example 216: turtle-syntax-base-02 Input

BASE http://www.w3.org/2013/TurtleTests/

Testturtle-syntax-base-03

@base with relative IRIs

Example 217: turtle-syntax-base-03 Input

@base http://www.w3.org/2013/TurtleTests/ .

.

Testturtle-syntax-base-04

base with relative IRIs

Example 218: turtle-syntax-base-04 Input

base http://www.w3.org/2013/TurtleTests/

.

Testturtle-syntax-prefix-01

@prefix

Example 219: turtle-syntax-prefix-01 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .

Testturtle-syntax-prefix-02

PreFIX

Example 220: turtle-syntax-prefix-02 Input

PreFIX : http://www.w3.org/2013/TurtleTests/

Testturtle-syntax-prefix-03

Empty PREFIX

Example 221: turtle-syntax-prefix-03 Input

PREFIX : http://www.w3.org/2013/TurtleTests/
:s :p :123 .

Testturtle-syntax-prefix-04

Empty @prefix with % escape

Example 222: turtle-syntax-prefix-04 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s :p :%20 .

Testturtle-syntax-prefix-05

@prefix with no suffix

Example 223: turtle-syntax-prefix-05 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
: : : .

Testturtle-syntax-prefix-06

colon is a legal pname character

Example 224: turtle-syntax-prefix-06 Input

colon is a legal pname character

@prefix : http://www.w3.org/2013/TurtleTests/ .
@prefix x: http://www.w3.org/2013/TurtleTests/ .
:a:b:c x:d:e:f :::: .

Testturtle-syntax-prefix-07

dash is a legal pname character

Example 225: turtle-syntax-prefix-07 Input

dash is a legal pname character

@prefix x: http://www.w3.org/2013/TurtleTests/ .
x:a-b-c x:p x:o .

Testturtle-syntax-prefix-08

underscore is a legal pname character

Example 226: turtle-syntax-prefix-08 Input

underscore is a legal pname character

@prefix x: http://www.w3.org/2013/TurtleTests/ .
x:_ x:p_1 x:o .

Testturtle-syntax-prefix-09

percents in pnames

Example 227: turtle-syntax-prefix-09 Input

percents

@prefix : http://www.w3.org/2013/TurtleTests/ .
@prefix x: http://www.w3.org/2013/TurtleTests/ .
:a%3E x:%25 :a%3Eb .

Testturtle-syntax-string-01

string literal

Example 228: turtle-syntax-string-01 Input

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p "string" .

Testturtle-syntax-string-02

langString literal

Example 229: turtle-syntax-string-02 Input

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p "string"@en .

Testturtle-syntax-string-03

langString literal with region

Example 230: turtle-syntax-string-03 Input

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p "string"@en-uk .

Testturtle-syntax-string-04

squote string literal

Example 231: turtle-syntax-string-04 Input

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p 'string' .

Testturtle-syntax-string-05

squote langString literal

Example 232: turtle-syntax-string-05 Input

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p 'string'@en .

Testturtle-syntax-string-06

squote langString literal with region

Example 233: turtle-syntax-string-06 Input

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p 'string'@en-uk .

Testturtle-syntax-string-07

long string literal with embedded single- and double-quotes

Example 234: turtle-syntax-string-07 Input

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p """abc""def''ghi""" .

Testturtle-syntax-string-08

long string literal with embedded newline

Example 235: turtle-syntax-string-08 Input

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p """abc
def""" .

Testturtle-syntax-string-09

squote long string literal with embedded single- and double-quotes

Example 236: turtle-syntax-string-09 Input

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p '''abc
def''' .

Testturtle-syntax-string-10

long langString literal with embedded newline

Example 237: turtle-syntax-string-10 Input

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p """abc
def"""@en .

Testturtle-syntax-string-11

squote long langString literal with embedded newline

Example 238: turtle-syntax-string-11 Input

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p '''abc
def'''@en .

Testturtle-syntax-str-esc-01

string literal with escaped newline

Example 239: turtle-syntax-str-esc-01 Input

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p "a\n" .

Testturtle-syntax-str-esc-02

string literal with Unicode escape

Example 240: turtle-syntax-str-esc-02 Input

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p "a\u0020b" .

Testturtle-syntax-str-esc-03

string literal with long Unicode escape

Example 241: turtle-syntax-str-esc-03 Input

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p "a\U00000020b" .

Testturtle-syntax-pname-esc-01

pname with back-slash escapes

Example 242: turtle-syntax-pname-esc-01 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s :p :~.-!$&'()*+,;=/?#@_%AA .

Testturtle-syntax-pname-esc-02

pname with back-slash escapes (2)

Example 243: turtle-syntax-pname-esc-02 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s :p :0123~.-!$&'()*+,;=/?#@_%AA123 .

Testturtle-syntax-pname-esc-03

pname with back-slash escapes (3)

Example 244: turtle-syntax-pname-esc-03 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
:xyz~ :abc.: : .

Testturtle-syntax-bnode-01

bnode subject

Example 245: turtle-syntax-bnode-01 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
[] :p :o .

Testturtle-syntax-bnode-02

bnode object

Example 246: turtle-syntax-bnode-02 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s :p [] .

Testturtle-syntax-bnode-03

bnode property list object

Example 247: turtle-syntax-bnode-03 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s :p [ :q :o ] .

Testturtle-syntax-bnode-04

bnode property list object (2)

Example 248: turtle-syntax-bnode-04 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s :p [ :q1 :o1 ; :q2 :o2 ] .

Testturtle-syntax-bnode-05

bnode property list subject

Example 249: turtle-syntax-bnode-05 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
[ :q1 :o1 ; :q2 :o2 ] :p :o .

Testturtle-syntax-bnode-06

labeled bnode subject

Example 250: turtle-syntax-bnode-06 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
_:a :p :o .

Testturtle-syntax-bnode-07

labeled bnode subject and object

Example 251: turtle-syntax-bnode-07 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s :p _:a .
_:a :p :o .

Testturtle-syntax-bnode-08

bare bnode property list

Example 252: turtle-syntax-bnode-08 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
[ :p :o ] .

Testturtle-syntax-bnode-09

bnode property list

Example 253: turtle-syntax-bnode-09 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
[ :p :o1,:2 ] .
:s :p :o .

Testturtle-syntax-bnode-10

mixed bnode property list and triple

Example 254: turtle-syntax-bnode-10 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .

:s1 :p :o .
[ :p1 :o1 ; :p2 :o2 ] .
:s2 :p :o .

Testturtle-syntax-number-01

integer literal

Example 255: turtle-syntax-number-01 Input

123 .

Testturtle-syntax-number-02

negative integer literal

Example 256: turtle-syntax-number-02 Input

-123 .

Testturtle-syntax-number-03

positive integer literal

Example 257: turtle-syntax-number-03 Input

+123 .

Testturtle-syntax-number-04

decimal literal

Example 258: turtle-syntax-number-04 Input

This is a decimal.

123.0 .

Testturtle-syntax-number-05

decimal literal (no leading digits)

Example 259: turtle-syntax-number-05 Input

This is a decimal.

.1 .

Testturtle-syntax-number-06

negative decimal literal

Example 260: turtle-syntax-number-06 Input

This is a decimal.

-123.0 .

Testturtle-syntax-number-07

positive decimal literal

Example 261: turtle-syntax-number-07 Input

This is a decimal.

+123.0 .

Testturtle-syntax-number-08

integer literal with decimal lexical confusion

Example 262: turtle-syntax-number-08 Input

This is an integer

123.

Testturtle-syntax-number-09

double literal

Example 263: turtle-syntax-number-09 Input

123.0e1 .

Testturtle-syntax-number-10

negative double literal

Example 264: turtle-syntax-number-10 Input

-123e-1 .

Testturtle-syntax-number-11

double literal no fraction

Example 265: turtle-syntax-number-11 Input

123.E+1 .

Testturtle-syntax-datatypes-01

xsd:byte literal

Example 266: turtle-syntax-datatypes-01 Input

@prefix xsd: http://www.w3.org/2001/XMLSchema# .

"123"^^xsd:byte .

Testturtle-syntax-datatypes-02

integer as xsd:string

Example 267: turtle-syntax-datatypes-02 Input

@prefix rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns# .
@prefix xsd: http://www.w3.org/2001/XMLSchema# .

"123"^^xsd:string .

Testturtle-syntax-kw-01

boolean literal (true)

Example 268: turtle-syntax-kw-01 Input

true .

Testturtle-syntax-kw-02

boolean literal (false)

Example 269: turtle-syntax-kw-02 Input

false .

Testturtle-syntax-kw-03

'a' as keyword

Example 270: turtle-syntax-kw-03 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s a :C .

Testturtle-syntax-struct-01

object list

Example 271: turtle-syntax-struct-01 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s :p :o1 , :o2 .

Testturtle-syntax-struct-02

predicate list with object list

Example 272: turtle-syntax-struct-02 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s :p1 :o1 ;
:p2 :o2 .

Testturtle-syntax-struct-03

predicate list with object list and dangling ';'

Example 273: turtle-syntax-struct-03 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s :p1 :o1 ;
:p2 :o2 ;
.

Testturtle-syntax-struct-04

predicate list with multiple ;;

Example 274: turtle-syntax-struct-04 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s :p1 :o1 ;;
:p2 :o2
.

Testturtle-syntax-struct-05

predicate list with multiple ;;

Example 275: turtle-syntax-struct-05 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s :p1 :o1 ;
:p2 :o2 ;;
.

Testturtle-syntax-lists-01

empty list

Example 276: turtle-syntax-lists-01 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s :p () .

Testturtle-syntax-lists-02

mixed list

Example 277: turtle-syntax-lists-02 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s :p (1 "2" :o) .

Testturtle-syntax-lists-03

isomorphic list as subject and object

Example 278: turtle-syntax-lists-03 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
(1) :p (1) .

Testturtle-syntax-lists-04

lists of lists

Example 279: turtle-syntax-lists-04 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
(()) :p (()) .

Testturtle-syntax-lists-05

mixed lists with embedded lists

Example 280: turtle-syntax-lists-05 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
(1 2 (1 2)) :p (( "a") "b" :o) .

Testturtle-syntax-bad-uri-01

Bad IRI : space (negative test)

Example 281: turtle-syntax-bad-uri-01 Input

Bad IRI : space.

<http://www.w3.org/2013/TurtleTests/ space> http://www.w3.org/2013/TurtleTests/p http://www.w3.org/2013/TurtleTests/o .

Testturtle-syntax-bad-uri-02

Bad IRI : bad escape (negative test)

Example 282: turtle-syntax-bad-uri-02 Input

Bad IRI : bad escape

http://www.w3.org/2013/TurtleTests/\u00ZZ11 http://www.w3.org/2013/TurtleTests/p http://www.w3.org/2013/TurtleTests/o .

Testturtle-syntax-bad-uri-03

Bad IRI : bad long escape (negative test)

Example 283: turtle-syntax-bad-uri-03 Input

Bad IRI : bad escape

http://www.w3.org/2013/TurtleTests/\U00ZZ1111 http://www.w3.org/2013/TurtleTests/p http://www.w3.org/2013/TurtleTests/o .

Testturtle-syntax-bad-uri-04

Bad IRI : character escapes not allowed (negative test)

Example 284: turtle-syntax-bad-uri-04 Input

Bad IRI : character escapes not allowed.

http://www.w3.org/2013/TurtleTests/\n http://www.w3.org/2013/TurtleTests/p http://www.w3.org/2013/TurtleTests/o .

Testturtle-syntax-bad-uri-05

Bad IRI : character escapes not allowed (2) (negative test)

Example 285: turtle-syntax-bad-uri-05 Input

Bad IRI : character escapes not allowed.

http://www.w3.org/2013/TurtleTests/\/ http://www.w3.org/2013/TurtleTests/p http://www.w3.org/2013/TurtleTests/o .

Testturtle-syntax-bad-prefix-01

No prefix (negative test)

Example 286: turtle-syntax-bad-prefix-01 Input

No prefix

:s http://www.w3.org/2013/TurtleTests/p "x" .

Testturtle-syntax-bad-prefix-02

No prefix (2) (negative test)

Example 287: turtle-syntax-bad-prefix-02 Input

No prefix

@prefix rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns# .
http://www.w3.org/2013/TurtleTests/s rdf:type :C .

Testturtle-syntax-bad-prefix-03

@prefix without URI (negative test)

Example 288: turtle-syntax-bad-prefix-03 Input

@prefix without URI.

@prefix ex: .

Testturtle-syntax-bad-prefix-04

@prefix without prefix name (negative test)

Example 289: turtle-syntax-bad-prefix-04 Input

@prefix without prefix name .

@prefix http://www.w3.org/2013/TurtleTests/ .

Testturtle-syntax-bad-prefix-05

@prefix without ':' (negative test)

Example 290: turtle-syntax-bad-prefix-05 Input

@prefix without :

@prefix x http://www.w3.org/2013/TurtleTests/ .

Testturtle-syntax-bad-base-01

@base without URI (negative test)

Example 291: turtle-syntax-bad-base-01 Input

@base without URI.

@base .

Testturtle-syntax-bad-base-02

@base in wrong case (negative test)

Example 292: turtle-syntax-bad-base-02 Input

@base in wrong case.

@BASE http://www.w3.org/2013/TurtleTests/ .

Testturtle-syntax-bad-base-03

BASE without URI (negative test)

Example 293: turtle-syntax-bad-base-03 Input

FULL STOP used after SPARQL BASE

BASE http://www.w3.org/2013/TurtleTests/ .

.

Testturtle-syntax-bad-struct-01

Turtle is not TriG (negative test)

Example 294: turtle-syntax-bad-struct-01 Input

Turtle is not TriG

{ http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p http://www.w3.org/2013/TurtleTests/o }

Testturtle-syntax-bad-struct-02

Turtle is not N3 (negative test)

Example 295: turtle-syntax-bad-struct-02 Input

Turtle is not N3

http://www.w3.org/2013/TurtleTests/s = http://www.w3.org/2013/TurtleTests/o .

Testturtle-syntax-bad-struct-03

Turtle is not NQuads (negative test)

Example 296: turtle-syntax-bad-struct-03 Input

Turtle is not NQuads

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p http://www.w3.org/2013/TurtleTests/o http://www.w3.org/2013/TurtleTests/g .

Testturtle-syntax-bad-struct-04

Turtle does not allow literals-as-subjects (negative test)

Example 297: turtle-syntax-bad-struct-04 Input

Turtle does not allow literals-as-subjects

"hello" http://www.w3.org/2013/TurtleTests/p http://www.w3.org/2013/TurtleTests/o .

Testturtle-syntax-bad-struct-05

Turtle does not allow literals-as-predicates (negative test)

Example 298: turtle-syntax-bad-struct-05 Input

Turtle does not allow literals-as-predicates

http://www.w3.org/2013/TurtleTests/s "hello" http://www.w3.org/2013/TurtleTests/o .

Testturtle-syntax-bad-struct-06

Turtle does not allow bnodes-as-predicates (negative test)

Example 299: turtle-syntax-bad-struct-06 Input

Turtle does not allow bnodes-as-predicates

http://www.w3.org/2013/TurtleTests/s [] http://www.w3.org/2013/TurtleTests/o .

Testturtle-syntax-bad-struct-07

Turtle does not allow labeled bnodes-as-predicates (negative test)

Example 300: turtle-syntax-bad-struct-07 Input

Turtle does not allow bnodes-as-predicates

http://www.w3.org/2013/TurtleTests/s _:p http://www.w3.org/2013/TurtleTests/o .

Testturtle-syntax-bad-kw-01

'A' is not a keyword (negative test)

Example 301: turtle-syntax-bad-kw-01 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s A :C .

Testturtle-syntax-bad-kw-02

'a' cannot be used as subject (negative test)

Example 302: turtle-syntax-bad-kw-02 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
a :p :o .

Testturtle-syntax-bad-kw-03

'a' cannot be used as object (negative test)

Example 303: turtle-syntax-bad-kw-03 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s :p a .

Testturtle-syntax-bad-kw-04

'true' cannot be used as subject (negative test)

Example 304: turtle-syntax-bad-kw-04 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
true :p :o .

Testturtle-syntax-bad-kw-05

'true' cannot be used as object (negative test)

Example 305: turtle-syntax-bad-kw-05 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s true :o .

{} fomulae not in Turtle (negative test)

Example 306: turtle-syntax-bad-n3-extras-01 Input

{} fomulae not in Turtle

@prefix : http://www.w3.org/2013/TurtleTests/ .

{ :a :q :c . } :p :z .

= is not Turtle (negative test)

Example 307: turtle-syntax-bad-n3-extras-02 Input

= is not Turtle

@prefix : http://www.w3.org/2013/TurtleTests/ .

:a = :b .

N3 paths not in Turtle (negative test)

Example 308: turtle-syntax-bad-n3-extras-03 Input

N3 paths

@prefix : http://www.w3.org/2013/TurtleTests/ .
@prefix ns: http://www.w3.org/2013/TurtleTests/p# .

:x.
ns:p.
ns:q :p :z .

N3 paths not in Turtle (negative test)

Example 309: turtle-syntax-bad-n3-extras-04 Input

N3 paths

@prefix : http://www.w3.org/2013/TurtleTests/ .
@prefix ns: http://www.w3.org/2013/TurtleTests/p# .

:x^ns:p :p :z .

N3 is...of not in Turtle (negative test)

Example 310: turtle-syntax-bad-n3-extras-05 Input

N3 is...of

@prefix : http://www.w3.org/2013/TurtleTests/ .

:z is :p of :x .

N3 paths not in Turtle (negative test)

Example 311: turtle-syntax-bad-n3-extras-06 Input

= is not Turtle

@prefix : http://www.w3.org/2013/TurtleTests/ .

:a.:b.:c .

@keywords is not Turtle (negative test)

Example 312: turtle-syntax-bad-n3-extras-07 Input

@keywords is not Turtle

@keywords a .
x a Item .

@keywords is not Turtle (negative test)

Example 313: turtle-syntax-bad-n3-extras-08 Input

@keywords is not Turtle

@keywords a .
x a Item .

=> is not Turtle (negative test)

Example 314: turtle-syntax-bad-n3-extras-09 Input

=> is not Turtle

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s => :o .

<= is not Turtle (negative test)

Example 315: turtle-syntax-bad-n3-extras-10 Input

<= is not Turtle

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s <= :o .

@forSome is not Turtle (negative test)

Example 316: turtle-syntax-bad-n3-extras-11 Input

@forSome is not Turtle

@prefix : http://www.w3.org/2013/TurtleTests/ .
@forSome :x .

@forAll is not Turtle (negative test)

Example 317: turtle-syntax-bad-n3-extras-12 Input

@forAll is not Turtle

@prefix : http://www.w3.org/2013/TurtleTests/ .
@forAll :x .

@keywords is not Turtle (negative test)

Example 318: turtle-syntax-bad-n3-extras-13 Input

@keywords is not Turtle

@keywords .
x @a Item .

Testturtle-syntax-bad-struct-08

missing '.' (negative test)

Example 319: turtle-syntax-bad-struct-08 Input

No DOT

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p http://www.w3.org/2013/TurtleTests/o

Testturtle-syntax-bad-struct-09

extra '.' (negative test)

Example 320: turtle-syntax-bad-struct-09 Input

Too many DOT

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p http://www.w3.org/2013/TurtleTests/o . .

Testturtle-syntax-bad-struct-10

extra '.' (negative test)

Example 321: turtle-syntax-bad-struct-10 Input

Too many DOT

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p http://www.w3.org/2013/TurtleTests/o . .
http://www.w3.org/2013/TurtleTests/s1 http://www.w3.org/2013/TurtleTests/p1 http://www.w3.org/2013/TurtleTests/o1 .

Testturtle-syntax-bad-struct-11

trailing ';' no '.' (negative test)

Example 322: turtle-syntax-bad-struct-11 Input

Trailing ;

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p http://www.w3.org/2013/TurtleTests/o ;

Testturtle-syntax-bad-struct-12

subject, predicate, no object (negative test)

Example 323: turtle-syntax-bad-struct-12 Input

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p

Testturtle-syntax-bad-struct-13

subject, predicate, no object (negative test)

Example 324: turtle-syntax-bad-struct-13 Input

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p

Testturtle-syntax-bad-struct-14

literal as subject (negative test)

Example 325: turtle-syntax-bad-struct-14 Input

Literal as subject

"abc" http://www.w3.org/2013/TurtleTests/p http://www.w3.org/2013/TurtleTests/p .

Testturtle-syntax-bad-struct-15

literal as predicate (negative test)

Example 326: turtle-syntax-bad-struct-15 Input

Literal as predicate

http://www.w3.org/2013/TurtleTests/s "abc" http://www.w3.org/2013/TurtleTests/p .

Testturtle-syntax-bad-struct-16

bnode as predicate (negative test)

Example 327: turtle-syntax-bad-struct-16 Input

BNode as predicate

http://www.w3.org/2013/TurtleTests/s [] http://www.w3.org/2013/TurtleTests/p .

Testturtle-syntax-bad-struct-17

labeled bnode as predicate (negative test)

Example 328: turtle-syntax-bad-struct-17 Input

BNode as predicate

http://www.w3.org/2013/TurtleTests/s _:a http://www.w3.org/2013/TurtleTests/p .

Testturtle-syntax-bad-lang-01

langString with bad lang (negative test)

Example 329: turtle-syntax-bad-lang-01 Input

Bad lang tag

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p "string"@1 .

Testturtle-syntax-bad-esc-01

Bad string escape (negative test)

Example 330: turtle-syntax-bad-esc-01 Input

Bad string escape

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p "a\zb" .

Testturtle-syntax-bad-esc-02

Bad string escape (negative test)

Example 331: turtle-syntax-bad-esc-02 Input

Bad string escape

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p "\uWXYZ" .

Testturtle-syntax-bad-esc-03

Bad string escape (negative test)

Example 332: turtle-syntax-bad-esc-03 Input

Bad string escape

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p "\U0000WXYZ" .

Testturtle-syntax-bad-esc-04

Bad string escape (negative test)

Example 333: turtle-syntax-bad-esc-04 Input

Bad string escape

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p "\U0000WXYZ" .

Testturtle-syntax-bad-pname-01

'~' must be escaped in pname (negative test)

Example 334: turtle-syntax-bad-pname-01 Input

~ must be escaped.

@prefix : http://www.w3.org/2013/TurtleTests/ .
:a~b :p :o .

Testturtle-syntax-bad-pname-02

Bad %-sequence in pname (negative test)

Example 335: turtle-syntax-bad-pname-02 Input

Bad %-sequence

@prefix : http://www.w3.org/2013/TurtleTests/ .
:a%2 :p :o .

Testturtle-syntax-bad-pname-03

Bad unicode escape in pname (negative test)

Example 336: turtle-syntax-bad-pname-03 Input

No \u (x39 is "9")

@prefix : http://www.w3.org/2013/TurtleTests/ .
:a\u0039 :p :o .

Testturtle-syntax-bad-string-01

mismatching string literal open/close (negative test)

Example 337: turtle-syntax-bad-string-01 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s :p "abc' .

Testturtle-syntax-bad-string-02

mismatching string literal open/close (negative test)

Example 338: turtle-syntax-bad-string-02 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s :p 'abc" .

Testturtle-syntax-bad-string-03

mismatching string literal long/short (negative test)

Example 339: turtle-syntax-bad-string-03 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s :p '''abc' .

Testturtle-syntax-bad-string-04

mismatching long string literal open/close (negative test)

Example 340: turtle-syntax-bad-string-04 Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s :p """abc''' .

Testturtle-syntax-bad-string-05

Long literal with missing end (negative test)

Example 341: turtle-syntax-bad-string-05 Input

Long literal with missing end

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s :p """abc
def

Testturtle-syntax-bad-string-06

Long literal with extra quote (negative test)

Example 342: turtle-syntax-bad-string-06 Input

Long literal with 4"

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s :p """abc""""@en .

Testturtle-syntax-bad-string-07

Long literal with extra squote (negative test)

Example 343: turtle-syntax-bad-string-07 Input

Long literal with 4'

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s :p '''abc''''@en .

Testturtle-syntax-bad-num-01

Bad number format (negative test)

Example 344: turtle-syntax-bad-num-01 Input

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p 123.abc .

Testturtle-syntax-bad-num-02

Bad number format (negative test)

Example 345: turtle-syntax-bad-num-02 Input

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p 123e .

Testturtle-syntax-bad-num-03

Bad number format (negative test)

Example 346: turtle-syntax-bad-num-03 Input

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p 123abc .

Testturtle-syntax-bad-num-04

Bad number format (negative test)

Example 347: turtle-syntax-bad-num-04 Input

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p 0x123 .

Testturtle-syntax-bad-num-05

Bad number format (negative test)

Example 348: turtle-syntax-bad-num-05 Input

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p +-1 .

Testturtle-eval-struct-01

triple with IRIs

Example 349: turtle-eval-struct-01 Input

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p http://www.w3.org/2013/TurtleTests/o .

Example 350: turtle-eval-struct-01 Result

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p http://www.w3.org/2013/TurtleTests/o .

Testturtle-eval-struct-02

triple with IRIs and embedded whitespace

Example 351: turtle-eval-struct-02 Input

http://www.w3.org/2013/TurtleTests/s
http://www.w3.org/2013/TurtleTests/p1 http://www.w3.org/2013/TurtleTests/o1 ;
http://www.w3.org/2013/TurtleTests/p2 http://www.w3.org/2013/TurtleTests/o2 ;
.

Example 352: turtle-eval-struct-02 Result

http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p1 http://www.w3.org/2013/TurtleTests/o1 .
http://www.w3.org/2013/TurtleTests/s http://www.w3.org/2013/TurtleTests/p2 http://www.w3.org/2013/TurtleTests/o2 .

Testturtle-subm-01

Blank subject

Example 353: turtle-subm-01 Input

@prefix : <#> .
[] :x :y .

Example 354: turtle-subm-01 Result

_:genid1 http://www.w3.org/2013/TurtleTests/turtle-subm-01.ttl#x http://www.w3.org/2013/TurtleTests/turtle-subm-01.ttl#y .

Testturtle-subm-02

@prefix and qnames

Example 355: turtle-subm-02 Input

Test @prefix and qnames

@prefix : http://example.org/base1# .
@prefix a: http://example.org/base2# .
@prefix b: http://example.org/base3# .
:a :b :c .
a:a a:b a:c .
:a a:a b:a .

Example 356: turtle-subm-02 Result

http://example.org/base1#a http://example.org/base1#b http://example.org/base1#c .
http://example.org/base2#a http://example.org/base2#b http://example.org/base2#c .
http://example.org/base1#a http://example.org/base2#a http://example.org/base3#a .

Testturtle-subm-03

, operator

Example 357: turtle-subm-03 Input

Test , operator

@prefix : http://example.org/base# .
:a :b :c,
:d,
:e .

Example 358: turtle-subm-03 Result

http://example.org/base#a http://example.org/base#b http://example.org/base#c .
http://example.org/base#a http://example.org/base#b http://example.org/base#d .
http://example.org/base#a http://example.org/base#b http://example.org/base#e .

Testturtle-subm-04

; operator

Example 359: turtle-subm-04 Input

Test ; operator

@prefix : http://example.org/base# .
:a :b :c ;
:d :e ;
:f :g .

Example 360: turtle-subm-04 Result

http://example.org/base#a http://example.org/base#b http://example.org/base#c .
http://example.org/base#a http://example.org/base#d http://example.org/base#e .
http://example.org/base#a http://example.org/base#f http://example.org/base#g .

Testturtle-subm-05

empty [] as subject and object

Example 361: turtle-subm-05 Input

Test empty [] operator; not allowed as predicate

@prefix : http://example.org/base# .
[] :a :b .
:c :d [] .

Example 362: turtle-subm-05 Result

_:genid1 http://example.org/base#a http://example.org/base#b .
http://example.org/base#c http://example.org/base#d _:genid2 .

Testturtle-subm-06

non-empty [] as subject and object

Example 363: turtle-subm-06 Input

Test non empty [] operator; not allowed as predicate

@prefix : http://example.org/base# .
[ :a :b ] :c :d .
:e :f [ :g :h ] .

Example 364: turtle-subm-06 Result

_:genid1 http://example.org/base#a http://example.org/base#b .
_:genid1 http://example.org/base#c http://example.org/base#d .
_:genid2 http://example.org/base#g http://example.org/base#h .
http://example.org/base#e http://example.org/base#f _:genid2 .

Testturtle-subm-07

'a' as predicate

Example 365: turtle-subm-07 Input

'a' only allowed as a predicate

@prefix : http://example.org/base# .
:a a :b .

Example 366: turtle-subm-07 Result

http://example.org/base#a http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://example.org/base#b .

Testturtle-subm-08

simple collection

Example 367: turtle-subm-08 Input

@prefix : http://example.org/stuff/1.0/ .
:a :b ( "apple" "banana" ) .

Example 368: turtle-subm-08 Result

_:genid1 http://www.w3.org/1999/02/22-rdf-syntax-ns#first "banana" .
_:genid1 http://www.w3.org/1999/02/22-rdf-syntax-ns#rest http://www.w3.org/1999/02/22-rdf-syntax-ns#nil .
_:genid2 http://www.w3.org/1999/02/22-rdf-syntax-ns#first "apple" .
_:genid2 http://www.w3.org/1999/02/22-rdf-syntax-ns#rest _:genid1 .
http://example.org/stuff/1.0/a http://example.org/stuff/1.0/b _:genid2 .

Testturtle-subm-09

empty collection

Example 369: turtle-subm-09 Input

@prefix : http://example.org/stuff/1.0/ .
:a :b ( ) .

Example 370: turtle-subm-09 Result

http://example.org/stuff/1.0/a http://example.org/stuff/1.0/b http://www.w3.org/1999/02/22-rdf-syntax-ns#nil .

Testturtle-subm-10

integer datatyped literal

Example 371: turtle-subm-10 Input

Test integer datatyped literals using an OWL cardinality constraint

@prefix owl: http://www.w3.org/2002/07/owl# .

based on examples in the OWL Reference

_:hasParent a owl:ObjectProperty .

[] a owl:Restriction ;
owl:onProperty _:hasParent ;
owl:maxCardinality 2 .

Example 372: turtle-subm-10 Result

_:hasParent http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://www.w3.org/2002/07/owl#ObjectProperty .
_:genid1 http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://www.w3.org/2002/07/owl#Restriction .
_:genid1 http://www.w3.org/2002/07/owl#onProperty _:hasParent .
_:genid1 http://www.w3.org/2002/07/owl#maxCardinality "2"^^http://www.w3.org/2001/XMLSchema#integer .

Testturtle-subm-11

decimal integer canonicalization

Example 373: turtle-subm-11 Input

http://example.org/res1 http://example.org/prop1 000000 .
http://example.org/res2 http://example.org/prop2 0 .
http://example.org/res3 http://example.org/prop3 000001 .
http://example.org/res4 http://example.org/prop4 2 .
http://example.org/res5 http://example.org/prop5 4 .

Example 374: turtle-subm-11 Result

http://example.org/res1 http://example.org/prop1 "000000"^^http://www.w3.org/2001/XMLSchema#integer .
http://example.org/res2 http://example.org/prop2 "0"^^http://www.w3.org/2001/XMLSchema#integer .
http://example.org/res3 http://example.org/prop3 "000001"^^http://www.w3.org/2001/XMLSchema#integer .
http://example.org/res4 http://example.org/prop4 "2"^^http://www.w3.org/2001/XMLSchema#integer .
http://example.org/res5 http://example.org/prop5 "4"^^http://www.w3.org/2001/XMLSchema#integer .

Testturtle-subm-12

- and _ in names and qnames

Example 375: turtle-subm-12 Input

Tests for - and _ in names, qnames

@prefix ex1: http://example.org/ex1# .
@prefix ex-2: http://example.org/ex2# .
@prefix ex3_: http://example.org/ex3# .
@prefix ex4-: http://example.org/ex4# .

ex1:foo-bar ex1:foo_bar "a" .
ex-2:foo-bar ex-2:foo_bar "b" .
ex3_:foo-bar ex3_:foo_bar "c" .
ex4-:foo-bar ex4-:foo_bar "d" .

Example 376: turtle-subm-12 Result

http://example.org/ex1#foo-bar http://example.org/ex1#foo_bar "a" .
http://example.org/ex2#foo-bar http://example.org/ex2#foo_bar "b" .
http://example.org/ex3#foo-bar http://example.org/ex3#foo_bar "c" .
http://example.org/ex4#foo-bar http://example.org/ex4#foo_bar "d" .

Testturtle-subm-13

tests for rdf:_ and other qnames starting with _

Example 377: turtle-subm-13 Input

Tests for rdf:_ and other qnames starting with _

@prefix rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns# .
@prefix ex: http://example.org/ex# .
@prefix : http://example.org/myprop# .

ex:foo rdf:_1 "1" .
ex:foo rdf:_2 "2" .
ex:foo :_abc "def" .
ex:foo :_345 "678" .

Example 378: turtle-subm-13 Result

http://example.org/ex#foo http://www.w3.org/1999/02/22-rdf-syntax-ns#_1 "1" .
http://example.org/ex#foo http://www.w3.org/1999/02/22-rdf-syntax-ns#_2 "2" .
http://example.org/ex#foo http://example.org/myprop#_abc "def" .
http://example.org/ex#foo http://example.org/myprop#_345 "678" .

Testturtle-subm-14

bare : allowed

Example 379: turtle-subm-14 Input

Test for : allowed

@prefix : http://example.org/ron .

[] : [] .

: : : .

Example 380: turtle-subm-14 Result

_:genid1 http://example.org/ron _:genid2 .
http://example.org/ron http://example.org/ron http://example.org/ron .

Testturtle-subm-15

simple long literal

Example 381: turtle-subm-15 Input

Test long literal

@prefix : http://example.org/ex# .
:a :b """a long
literal
with
newlines""" .

Example 382: turtle-subm-15 Result

http://example.org/ex#a http://example.org/ex#b "a long\n\tliteral\nwith\nnewlines" .

Testturtle-subm-16

long literals with escapes

Example 383: turtle-subm-16 Input

@prefix : http://example.org/foo# .

:a :b """\nthis \ris a \U00015678long\t

literal\uABCD

""" .

:d :e """\tThis \uABCDis\r \U00015678another\n

one

""" .

\U00015678 is a not a legal codepoint

\U00012451 in Cuneiform numeric ban 3

:a :b """\nthis \ris a \U00012451long\t
literal\uABCD
""" .

:d :e """\tThis \uABCDis\r \U00012451another\n
one
""" .

Example 384: turtle-subm-16 Result

http://example.org/foo#a http://example.org/foo#b "\nthis \ris a \U00012451long\t\nliteral\uABCD\n" .
http://example.org/foo#d http://example.org/foo#e "\tThis \uABCDis\r \U00012451another\n\none\n" .

Testturtle-subm-17

floating point number

Example 385: turtle-subm-17 Input

@prefix : http://example.org/# .

:a :b 1.0 .

Example 386: turtle-subm-17 Result

http://example.org/#a http://example.org/#b "1.0"^^http://www.w3.org/2001/XMLSchema#decimal .

Testturtle-subm-18

empty literals, normal and long variant

Example 387: turtle-subm-18 Input

@prefix : http://example.org/# .

:a :b "" .

:c :d """""" .

Example 388: turtle-subm-18 Result

http://example.org/#a http://example.org/#b "" .
http://example.org/#c http://example.org/#d "" .

Testturtle-subm-19

positive integer, decimal and doubles

Example 389: turtle-subm-19 Input

@prefix : http://example.org# .
:a :b 1.0 .
:c :d 1 .
:e :f 1.0e0 .

Example 390: turtle-subm-19 Result

http://example.org#a http://example.org#b "1.0"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org#c http://example.org#d "1"^^http://www.w3.org/2001/XMLSchema#integer .
http://example.org#e http://example.org#f "1.0e0"^^http://www.w3.org/2001/XMLSchema#double .

Testturtle-subm-20

negative integer, decimal and doubles

Example 391: turtle-subm-20 Input

@prefix : http://example.org# .
:a :b -1.0 .
:c :d -1 .
:e :f -1.0e0 .

Example 392: turtle-subm-20 Result

http://example.org#a http://example.org#b "-1.0"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org#c http://example.org#d "-1"^^http://www.w3.org/2001/XMLSchema#integer .
http://example.org#e http://example.org#f "-1.0e0"^^http://www.w3.org/2001/XMLSchema#double .

Testturtle-subm-21

long literal ending in double quote

Example 393: turtle-subm-21 Input

Test long literal

@prefix : http://example.org/ex# .
:a :b """John said: "Hello World!"""" .

Example 394: turtle-subm-21 Result

http://example.org/ex#a http://example.org/ex#b "John said: "Hello World!"" .

Testturtle-subm-22

boolean literals

Example 395: turtle-subm-22 Input

@prefix : http://example.org# .
:a :b true .
:c :d false .

Example 396: turtle-subm-22 Result

http://example.org#a http://example.org#b "true"^^http://www.w3.org/2001/XMLSchema#boolean .
http://example.org#c http://example.org#d "false"^^http://www.w3.org/2001/XMLSchema#boolean .

Testturtle-subm-23

comments

Example 397: turtle-subm-23 Input

comment test

@prefix : http://example.org/# .
:a :b :c . # end of line comment
:d # ignore me
:e # and me
:f # and me
.
:g :h #ignore me
:i, # and me
:j . # and me

:k :l :m ; #ignore me
:n :o ; # and me
:p :q . # and me

Example 398: turtle-subm-23 Result

http://example.org/#a http://example.org/#b http://example.org/#c .
http://example.org/#d http://example.org/#e http://example.org/#f .
http://example.org/#g http://example.org/#h http://example.org/#i .
http://example.org/#g http://example.org/#h http://example.org/#j .
http://example.org/#k http://example.org/#l http://example.org/#m .
http://example.org/#k http://example.org/#n http://example.org/#o .
http://example.org/#k http://example.org/#p http://example.org/#q .

Testturtle-subm-24

no final mewline

Example 399: turtle-subm-24 Input

comment line with no final newline test

@prefix : http://example.org/# .
:a :b :c .
#foo

Example 400: turtle-subm-24 Result

http://example.org/#a http://example.org/#b http://example.org/#c .

Testturtle-subm-25

repeating a @prefix changes pname definition

Example 401: turtle-subm-25 Input

@prefix foo: http://example.org/foo# .
@prefix foo: http://example.org/bar# .

foo:blah foo:blah foo:blah .

Example 402: turtle-subm-25 Result

http://example.org/bar#blah http://example.org/bar#blah http://example.org/bar#blah .

Testturtle-subm-26

Variations on decimal canonicalization

Example 403: turtle-subm-26 Input

http://example.org/foo http://example.org/bar "2.345"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "1"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "1.0"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "1."^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "1.000000000"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.3"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.234000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.2340000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.23400000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.234000000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.2340000000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.23400000000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.234000000000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.2340000000000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.23400000000000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.234000000000000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.2340000000000000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.23400000000000000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.234000000000000000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.2340000000000000000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.23400000000000000000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "1.2345678901234567890123457890"^^http://www.w3.org/2001/XMLSchema#decimal .

Example 404: turtle-subm-26 Result

http://example.org/foo http://example.org/bar "2.345"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "1"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "1.0"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "1."^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "1.000000000"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.3"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.234000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.2340000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.23400000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.234000000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.2340000000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.23400000000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.234000000000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.2340000000000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.23400000000000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.234000000000000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.2340000000000000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.23400000000000000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.234000000000000000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.2340000000000000000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "2.23400000000000000000005"^^http://www.w3.org/2001/XMLSchema#decimal .
http://example.org/foo http://example.org/bar "1.2345678901234567890123457890"^^http://www.w3.org/2001/XMLSchema#decimal .

Testturtle-subm-27

Repeating @base changes base for relative IRI lookup

Example 405: turtle-subm-27 Input

In-scope base URI is http://www.w3.org/2013/TurtleTests/turtle-subm-27.ttl at this point

.
@base http://example.org/ns/ .

In-scope base URI is http://example.org/ns/ at this point

http://example.org/ns/b2 .
@base .

In-scope base URI is http://example.org/ns/foo/ at this point

.
@prefix : <bar#> .
:a4 :b4 :c4 .
@prefix : http://example.org/ns2# .
:a5 :b5 :c5 .

Example 406: turtle-subm-27 Result

http://www.w3.org/2013/TurtleTests/a1 http://www.w3.org/2013/TurtleTests/b1 http://www.w3.org/2013/TurtleTests/c1 .
http://example.org/ns/a2 http://example.org/ns/b2 http://example.org/ns/c2 .
http://example.org/ns/foo/a3 http://example.org/ns/foo/b3 http://example.org/ns/foo/c3 .
http://example.org/ns/foo/bar#a4 http://example.org/ns/foo/bar#b4 http://example.org/ns/foo/bar#c4 .
http://example.org/ns2#a5 http://example.org/ns2#b5 http://example.org/ns2#c5 .

Testturtle-eval-bad-01

Bad IRI : good escape, bad charcater (negative evaluation test)

Example 407: turtle-eval-bad-01 Input

Bad IRI : good escape, bad charcater

http://www.w3.org/2013/TurtleTests/\u0020 http://www.w3.org/2013/TurtleTests/p http://www.w3.org/2013/TurtleTests/o .

Testturtle-eval-bad-02

Bad IRI : hex 3C is < (negative evaluation test)

Example 408: turtle-eval-bad-02 Input

Bad IRI : hex 3C is <

http://www.w3.org/2013/TurtleTests/\u003C http://www.w3.org/2013/TurtleTests/p http://www.w3.org/2013/TurtleTests/o .

Testturtle-eval-bad-03

Bad IRI : hex 3E is (negative evaluation test)

Example 409: turtle-eval-bad-03 Input

Bad IRI : hex 3E is >

http://www.w3.org/2013/TurtleTests/\u003E http://www.w3.org/2013/TurtleTests/p http://www.w3.org/2013/TurtleTests/o .

Testturtle-eval-bad-04

Bad IRI : {abc} (negative evaluation test)

Example 410: turtle-eval-bad-04 Input

Bad IRI

http://www.w3.org/2013/TurtleTests/{abc} http://www.w3.org/2013/TurtleTests/p http://www.w3.org/2013/TurtleTests/o .

Testturtle-syntax-bad-blank-label-dot-end

Blank node label must not end in dot

Example 411: turtle-syntax-bad-blank-label-dot-end Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
_:b1. :p :o .

Testturtle-syntax-bad-ln-dash-start

Local name must not begin with dash

Example 412: turtle-syntax-bad-ln-dash-start Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s :p :-o .

Testturtle-syntax-bad-ln-escape-start

Bad hex escape at start of local name

Example 413: turtle-syntax-bad-ln-escape-start Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s :p :%2o .

Testturtle-syntax-bad-ln-escape

Bad hex escape in local name

Example 414: turtle-syntax-bad-ln-escape Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s :p :o%2 .

Testturtle-syntax-bad-missing-ns-dot-end

Prefix must not end in dot (error in triple, not prefix directive like turtle-syntax-bad-ns-dot-end)

Example 415: turtle-syntax-bad-missing-ns-dot-end Input

valid:s valid:p invalid.:o .

Testturtle-syntax-bad-missing-ns-dot-start

Prefix must not start with dot (error in triple, not prefix directive like turtle-syntax-bad-ns-dot-end)

Example 416: turtle-syntax-bad-missing-ns-dot-start Input

.undefined:s .undefined:p .undefined:o .

Testturtle-syntax-bad-ns-dot-end

Prefix must not end in dot

Example 417: turtle-syntax-bad-ns-dot-end Input

@prefix eg. : http://www.w3.org/2013/TurtleTests/ .
eg.:s eg.:p eg.:o .

Testturtle-syntax-bad-ns-dot-start

Prefix must not start with dot

Example 418: turtle-syntax-bad-ns-dot-start Input

@prefix .eg : http://www.w3.org/2013/TurtleTests/ .
.eg:s .eg:p .eg:o .

Testturtle-syntax-bad-number-dot-in-anon

Dot delimeter may not appear in anonymous nodes

Example 419: turtle-syntax-bad-number-dot-in-anon Input

@prefix : http://www.w3.org/2013/TurtleTests/ .

:s
:p [
:p1 27.
] .

Testturtle-syntax-blank-label

Characters allowed in blank node labels

Example 420: turtle-syntax-blank-label Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
_:0b :p :o . # Starts with digit
_:_b :p :o . # Starts with underscore
_:b.0 :p :o . # Contains dot, ends with digit

Testturtle-syntax-ln-colons

Colons in pname local names

Example 421: turtle-syntax-ln-colons Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s:1 :p:1 :o:1 .
:s::2 :p::2 :o::2 .
:3:s :3:p :3 .
::s ::p ::o .
::s: ::p: ::o: .

Testturtle-syntax-ln-dots

Dots in pname local names

Example 422: turtle-syntax-ln-dots Input

@prefix : http://www.w3.org/2013/TurtleTests/ .
:s.1 :p.1 :o.1 .
:s..2 :p..2 :o..2.
:3.s :3.p :3.

Testturtle-syntax-ns-dots

Dots in namespace names

Example 423: turtle-syntax-ns-dots Input

@prefix e.g: http://www.w3.org/2013/TurtleTests/ .
e.g:s e.g:p e.g:o .