aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--NEWS6
-rw-r--r--src/reader.c11
-rw-r--r--src/writer.c70
-rw-r--r--tests/TurtleTests/HYPHEN_MINUS_in_localName.nt (renamed from tests/tests-ttl/HYPHEN_MINUS_in_localName.nt)0
-rw-r--r--tests/TurtleTests/HYPHEN_MINUS_in_localName.ttl (renamed from tests/tests-ttl/HYPHEN_MINUS_in_localName.ttl)0
-rw-r--r--tests/TurtleTests/IRIREF_datatype.nt (renamed from tests/tests-ttl/IRIREF_datatype.nt)0
-rw-r--r--tests/TurtleTests/IRIREF_datatype.ttl (renamed from tests/tests-ttl/IRIREF_datatype.ttl)0
-rw-r--r--tests/TurtleTests/IRI_spo.nt (renamed from tests/tests-ttl/IRI_spo.nt)0
-rw-r--r--tests/TurtleTests/IRI_subject.ttl (renamed from tests/tests-ttl/IRI_subject.ttl)0
-rw-r--r--tests/TurtleTests/IRI_with_all_punctuation.nt (renamed from tests/tests-ttl/IRI_with_all_punctuation.nt)0
-rw-r--r--tests/TurtleTests/IRI_with_all_punctuation.ttl (renamed from tests/tests-ttl/IRI_with_all_punctuation.ttl)0
-rw-r--r--tests/TurtleTests/IRI_with_eight_digit_numeric_escape.ttl (renamed from tests/tests-ttl/IRI_with_eight_digit_numeric_escape.ttl)0
-rw-r--r--tests/TurtleTests/IRI_with_four_digit_numeric_escape.ttl (renamed from tests/tests-ttl/IRI_with_four_digit_numeric_escape.ttl)0
-rw-r--r--tests/TurtleTests/LICENSE117
-rw-r--r--tests/TurtleTests/LITERAL1.nt (renamed from tests/tests-ttl/LITERAL1.nt)0
-rw-r--r--tests/TurtleTests/LITERAL1.ttl (renamed from tests/tests-ttl/LITERAL1.ttl)0
-rw-r--r--tests/TurtleTests/LITERAL1_all_controls.nt (renamed from tests/tests-ttl/LITERAL1_all_controls.nt)0
-rw-r--r--tests/TurtleTests/LITERAL1_all_controls.ttl (renamed from tests/tests-ttl/LITERAL1_all_controls.ttl)bin77 -> 77 bytes
-rw-r--r--tests/TurtleTests/LITERAL1_all_punctuation.nt (renamed from tests/tests-ttl/LITERAL1_all_punctuation.nt)0
-rw-r--r--tests/TurtleTests/LITERAL1_all_punctuation.ttl (renamed from tests/tests-ttl/LITERAL1_all_punctuation.ttl)0
-rw-r--r--tests/TurtleTests/LITERAL1_ascii_boundaries.nt (renamed from tests/tests-ttl/LITERAL1_ascii_boundaries.nt)0
-rw-r--r--tests/TurtleTests/LITERAL1_ascii_boundaries.ttl (renamed from tests/tests-ttl/LITERAL1_ascii_boundaries.ttl)bin57 -> 57 bytes
-rw-r--r--tests/TurtleTests/LITERAL1_with_UTF8_boundaries.ttl (renamed from tests/tests-ttl/LITERAL1_with_UTF8_boundaries.ttl)2
-rw-r--r--tests/TurtleTests/LITERAL2.ttl (renamed from tests/tests-ttl/LITERAL2.ttl)0
-rw-r--r--tests/TurtleTests/LITERAL2_ascii_boundaries.nt (renamed from tests/tests-ttl/LITERAL2_ascii_boundaries.nt)0
-rw-r--r--tests/TurtleTests/LITERAL2_ascii_boundaries.ttl (renamed from tests/tests-ttl/LITERAL2_ascii_boundaries.ttl)bin57 -> 57 bytes
-rw-r--r--tests/TurtleTests/LITERAL2_with_UTF8_boundaries.ttl (renamed from tests/tests-ttl/LITERAL2_with_UTF8_boundaries.ttl)2
-rw-r--r--tests/TurtleTests/LITERAL_LONG1.ttl (renamed from tests/tests-ttl/LITERAL_LONG1.ttl)0
-rw-r--r--tests/TurtleTests/LITERAL_LONG1_ascii_boundaries.nt (renamed from tests/tests-ttl/LITERAL_LONG1_ascii_boundaries.nt)0
-rw-r--r--tests/TurtleTests/LITERAL_LONG1_ascii_boundaries.ttl (renamed from tests/tests-ttl/LITERAL_LONG1_ascii_boundaries.ttl)bin53 -> 53 bytes
-rw-r--r--tests/TurtleTests/LITERAL_LONG1_with_1_squote.nt (renamed from tests/tests-ttl/LITERAL_LONG1_with_1_squote.nt)0
-rw-r--r--tests/TurtleTests/LITERAL_LONG1_with_1_squote.ttl (renamed from tests/tests-ttl/LITERAL_LONG1_with_1_squote.ttl)0
-rw-r--r--tests/TurtleTests/LITERAL_LONG1_with_2_squotes.nt (renamed from tests/tests-ttl/LITERAL_LONG1_with_2_squotes.nt)0
-rw-r--r--tests/TurtleTests/LITERAL_LONG1_with_2_squotes.ttl (renamed from tests/tests-ttl/LITERAL_LONG1_with_2_squotes.ttl)0
-rw-r--r--tests/TurtleTests/LITERAL_LONG1_with_UTF8_boundaries.ttl (renamed from tests/tests-ttl/LITERAL_LONG1_with_UTF8_boundaries.ttl)2
-rw-r--r--tests/TurtleTests/LITERAL_LONG2.ttl (renamed from tests/tests-ttl/LITERAL_LONG2.ttl)0
-rw-r--r--tests/TurtleTests/LITERAL_LONG2_ascii_boundaries.nt (renamed from tests/tests-ttl/LITERAL_LONG2_ascii_boundaries.nt)0
-rw-r--r--tests/TurtleTests/LITERAL_LONG2_ascii_boundaries.ttl (renamed from tests/tests-ttl/LITERAL_LONG2_ascii_boundaries.ttl)bin53 -> 53 bytes
-rw-r--r--tests/TurtleTests/LITERAL_LONG2_with_1_squote.nt (renamed from tests/tests-ttl/LITERAL_LONG2_with_1_squote.nt)0
-rw-r--r--tests/TurtleTests/LITERAL_LONG2_with_1_squote.ttl (renamed from tests/tests-ttl/LITERAL_LONG2_with_1_squote.ttl)0
-rw-r--r--tests/TurtleTests/LITERAL_LONG2_with_2_squotes.nt (renamed from tests/tests-ttl/LITERAL_LONG2_with_2_squotes.nt)0
-rw-r--r--tests/TurtleTests/LITERAL_LONG2_with_2_squotes.ttl (renamed from tests/tests-ttl/LITERAL_LONG2_with_2_squotes.ttl)0
-rw-r--r--tests/TurtleTests/LITERAL_LONG2_with_REVERSE_SOLIDUS.nt (renamed from tests/tests-ttl/LITERAL_LONG2_with_REVERSE_SOLIDUS.nt)0
-rw-r--r--tests/TurtleTests/LITERAL_LONG2_with_REVERSE_SOLIDUS.ttl (renamed from tests/tests-ttl/LITERAL_LONG2_with_REVERSE_SOLIDUS.ttl)0
-rw-r--r--tests/TurtleTests/LITERAL_LONG2_with_UTF8_boundaries.ttl (renamed from tests/tests-ttl/LITERAL_LONG2_with_UTF8_boundaries.ttl)2
-rw-r--r--tests/TurtleTests/LITERAL_with_UTF8_boundaries.nt1
-rw-r--r--tests/TurtleTests/README65
-rw-r--r--tests/TurtleTests/SPARQL_style_base.ttl2
-rw-r--r--tests/TurtleTests/SPARQL_style_prefix.ttl2
-rw-r--r--tests/TurtleTests/anonymous_blank_node_object.nt (renamed from tests/tests-ttl/anonymous_blank_node_object.nt)0
-rw-r--r--tests/TurtleTests/anonymous_blank_node_object.ttl (renamed from tests/tests-ttl/anonymous_blank_node_object.ttl)0
-rw-r--r--tests/TurtleTests/anonymous_blank_node_subject.nt (renamed from tests/tests-ttl/anonymous_blank_node_subject.nt)0
-rw-r--r--tests/TurtleTests/anonymous_blank_node_subject.ttl (renamed from tests/tests-ttl/anonymous_blank_node_subject.ttl)0
-rw-r--r--tests/TurtleTests/bareword_a_predicate.nt (renamed from tests/tests-ttl/bareword_a_predicate.nt)0
-rw-r--r--tests/TurtleTests/bareword_a_predicate.ttl (renamed from tests/tests-ttl/bareword_a_predicate.ttl)0
-rw-r--r--tests/TurtleTests/bareword_decimal.nt (renamed from tests/tests-ttl/bareword_decimal.nt)0
-rw-r--r--tests/TurtleTests/bareword_decimal.ttl (renamed from tests/tests-ttl/bareword_decimal.ttl)0
-rw-r--r--tests/TurtleTests/bareword_double.nt (renamed from tests/tests-ttl/bareword_double.nt)0
-rw-r--r--tests/TurtleTests/bareword_double.ttl (renamed from tests/tests-ttl/bareword_double.ttl)0
-rw-r--r--tests/TurtleTests/bareword_integer.ttl (renamed from tests/tests-ttl/bareword_integer.ttl)0
-rw-r--r--tests/TurtleTests/blankNodePropertyList_as_object.nt (renamed from tests/tests-ttl/blankNodePropertyList_as_object.nt)0
-rw-r--r--tests/TurtleTests/blankNodePropertyList_as_object.ttl (renamed from tests/tests-ttl/blankNodePropertyList_as_object.ttl)0
-rw-r--r--tests/TurtleTests/blankNodePropertyList_as_subject.nt (renamed from tests/tests-ttl/blankNodePropertyList_as_subject.nt)0
-rw-r--r--tests/TurtleTests/blankNodePropertyList_as_subject.ttl (renamed from tests/tests-ttl/blankNodePropertyList_as_subject.ttl)0
-rw-r--r--tests/TurtleTests/blankNodePropertyList_containing_collection.nt (renamed from tests/tests-ttl/blankNodePropertyList_containing_collection.nt)0
-rw-r--r--tests/TurtleTests/blankNodePropertyList_containing_collection.ttl (renamed from tests/tests-ttl/blankNodePropertyList_containing_collection.ttl)0
-rw-r--r--tests/TurtleTests/blankNodePropertyList_with_multiple_triples.nt (renamed from tests/tests-ttl/blankNodePropertyList_with_multiple_triples.nt)0
-rw-r--r--tests/TurtleTests/blankNodePropertyList_with_multiple_triples.ttl (renamed from tests/tests-ttl/blankNodePropertyList_with_multiple_triples.ttl)0
-rw-r--r--tests/TurtleTests/collection_object.nt (renamed from tests/tests-ttl/collection_object.nt)0
-rw-r--r--tests/TurtleTests/collection_object.ttl (renamed from tests/tests-ttl/collection_object.ttl)0
-rw-r--r--tests/TurtleTests/collection_subject.nt (renamed from tests/tests-ttl/collection_subject.nt)0
-rw-r--r--tests/TurtleTests/collection_subject.ttl (renamed from tests/tests-ttl/collection_subject.ttl)0
-rw-r--r--tests/TurtleTests/comment_following_PNAME_NS.nt1
-rw-r--r--tests/TurtleTests/comment_following_PNAME_NS.ttl3
-rw-r--r--tests/TurtleTests/comment_following_localName.ttl3
-rw-r--r--tests/TurtleTests/default_namespace_IRI.ttl (renamed from tests/tests-ttl/default_namespace_IRI.ttl)0
-rw-r--r--tests/TurtleTests/double_lower_case_e.nt (renamed from tests/tests-ttl/double_lower_case_e.nt)0
-rw-r--r--tests/TurtleTests/double_lower_case_e.ttl (renamed from tests/tests-ttl/double_lower_case_e.ttl)0
-rw-r--r--tests/TurtleTests/empty_collection.nt (renamed from tests/tests-ttl/empty_collection.nt)0
-rw-r--r--tests/TurtleTests/empty_collection.ttl (renamed from tests/tests-ttl/empty_collection.ttl)0
-rw-r--r--tests/TurtleTests/first.nt (renamed from tests/tests-ttl/first.nt)0
-rw-r--r--tests/TurtleTests/first.ttl (renamed from tests/tests-ttl/first.ttl)0
-rw-r--r--tests/TurtleTests/labeled_blank_node_object.nt (renamed from tests/tests-ttl/labeled_blank_node_object.nt)0
-rw-r--r--tests/TurtleTests/labeled_blank_node_object.ttl (renamed from tests/tests-ttl/labeled_blank_node_object.ttl)0
-rw-r--r--tests/TurtleTests/labeled_blank_node_subject.nt (renamed from tests/tests-ttl/labeled_blank_node_subject.nt)0
-rw-r--r--tests/TurtleTests/labeled_blank_node_subject.ttl (renamed from tests/tests-ttl/labeled_blank_node_subject.ttl)0
-rw-r--r--tests/TurtleTests/labeled_blank_node_with_PN_CHARS_BASE_character_boundaries.nt1
-rw-r--r--tests/TurtleTests/labeled_blank_node_with_PN_CHARS_BASE_character_boundaries.ttl1
-rw-r--r--tests/TurtleTests/labeled_blank_node_with_leading_digit.nt (renamed from tests/tests-ttl/labeled_blank_node_with_leading_digit.nt)0
-rw-r--r--tests/TurtleTests/labeled_blank_node_with_leading_digit.ttl (renamed from tests/tests-ttl/labeled_blank_node_with_leading_digit.ttl)0
-rw-r--r--tests/TurtleTests/labeled_blank_node_with_leading_underscore.nt (renamed from tests/tests-ttl/labeled_blank_node_with_leading_underscore.nt)0
-rw-r--r--tests/TurtleTests/labeled_blank_node_with_leading_underscore.ttl (renamed from tests/tests-ttl/labeled_blank_node_with_leading_underscore.ttl)0
-rw-r--r--tests/TurtleTests/labeled_blank_node_with_non_leading_extras.nt (renamed from tests/tests-ttl/labeled_blank_node_with_non_leading_extras.ttl)0
-rw-r--r--tests/TurtleTests/labeled_blank_node_with_non_leading_extras.ttl1
-rw-r--r--tests/TurtleTests/langtagged_LONG.ttl (renamed from tests/tests-ttl/langtagged_LONG.ttl)0
-rw-r--r--tests/TurtleTests/langtagged_LONG_with_subtag.nt (renamed from tests/tests-ttl/langtagged_LONG_with_subtag.nt)0
-rw-r--r--tests/TurtleTests/langtagged_LONG_with_subtag.ttl (renamed from tests/tests-ttl/langtagged_LONG_with_subtag.ttl)0
-rw-r--r--tests/TurtleTests/langtagged_non_LONG.nt (renamed from tests/tests-ttl/langtagged_non_LONG.nt)0
-rw-r--r--tests/TurtleTests/langtagged_non_LONG.ttl (renamed from tests/tests-ttl/langtagged_non_LONG.ttl)0
-rw-r--r--tests/TurtleTests/lantag_with_subtag.nt (renamed from tests/tests-ttl/lantag_with_subtag.nt)0
-rw-r--r--tests/TurtleTests/lantag_with_subtag.ttl (renamed from tests/tests-ttl/lantag_with_subtag.ttl)0
-rw-r--r--tests/TurtleTests/last.nt (renamed from tests/tests-ttl/last.nt)0
-rw-r--r--tests/TurtleTests/last.ttl (renamed from tests/tests-ttl/last.ttl)0
-rw-r--r--tests/TurtleTests/literal_false.nt (renamed from tests/tests-ttl/literal_false.nt)0
-rw-r--r--tests/TurtleTests/literal_false.ttl (renamed from tests/tests-ttl/literal_false.ttl)0
-rw-r--r--tests/TurtleTests/literal_true.nt (renamed from tests/tests-ttl/literal_true.nt)0
-rw-r--r--tests/TurtleTests/literal_true.ttl (renamed from tests/tests-ttl/literal_true.ttl)0
-rw-r--r--tests/TurtleTests/literal_with_BACKSPACE.nt (renamed from tests/tests-ttl/literal_with_BACKSPACE.nt)0
-rw-r--r--tests/TurtleTests/literal_with_BACKSPACE.ttl (renamed from tests/tests-ttl/literal_with_BACKSPACE.ttl)0
-rw-r--r--tests/TurtleTests/literal_with_CARRIAGE_RETURN.nt (renamed from tests/tests-ttl/literal_with_CARRIAGE_RETURN.nt)0
-rw-r--r--tests/TurtleTests/literal_with_CARRIAGE_RETURN.ttl (renamed from tests/tests-ttl/literal_with_CARRIAGE_RETURN.ttl)0
-rw-r--r--tests/TurtleTests/literal_with_CHARACTER_TABULATION.nt (renamed from tests/tests-ttl/literal_with_CHARACTER_TABULATION.nt)0
-rw-r--r--tests/TurtleTests/literal_with_CHARACTER_TABULATION.ttl (renamed from tests/tests-ttl/literal_with_CHARACTER_TABULATION.ttl)0
-rw-r--r--tests/TurtleTests/literal_with_FORM_FEED.nt (renamed from tests/tests-ttl/literal_with_FORM_FEED.nt)0
-rw-r--r--tests/TurtleTests/literal_with_FORM_FEED.ttl (renamed from tests/tests-ttl/literal_with_FORM_FEED.ttl)0
-rw-r--r--tests/TurtleTests/literal_with_LINE_FEED.nt (renamed from tests/tests-ttl/literal_with_LINE_FEED.nt)0
-rw-r--r--tests/TurtleTests/literal_with_LINE_FEED.ttl (renamed from tests/tests-ttl/literal_with_LINE_FEED.ttl)0
-rw-r--r--tests/TurtleTests/literal_with_REVERSE_SOLIDUS.nt (renamed from tests/tests-ttl/literal_with_REVERSE_SOLIDUS.nt)0
-rw-r--r--tests/TurtleTests/literal_with_REVERSE_SOLIDUS.ttl (renamed from tests/tests-ttl/literal_with_REVERSE_SOLIDUS.ttl)0
-rw-r--r--tests/TurtleTests/literal_with_escaped_BACKSPACE.ttl (renamed from tests/tests-ttl/literal_with_escaped_BACKSPACE.ttl)0
-rw-r--r--tests/TurtleTests/literal_with_escaped_CARRIAGE_RETURN.ttl (renamed from tests/tests-ttl/literal_with_escaped_CARRIAGE_RETURN.ttl)0
-rw-r--r--tests/TurtleTests/literal_with_escaped_CHARACTER_TABULATION.ttl (renamed from tests/tests-ttl/literal_with_escaped_CHARACTER_TABULATION.ttl)0
-rw-r--r--tests/TurtleTests/literal_with_escaped_FORM_FEED.ttl (renamed from tests/tests-ttl/literal_with_escaped_FORM_FEED.ttl)0
-rw-r--r--tests/TurtleTests/literal_with_escaped_LINE_FEED.ttl (renamed from tests/tests-ttl/literal_with_escaped_LINE_FEED.ttl)0
-rw-r--r--tests/TurtleTests/literal_with_numeric_escape4.nt (renamed from tests/tests-ttl/literal_with_numeric_escape4.nt)0
-rw-r--r--tests/TurtleTests/literal_with_numeric_escape4.ttl (renamed from tests/tests-ttl/literal_with_numeric_escape4.ttl)0
-rw-r--r--tests/TurtleTests/literal_with_numeric_escape8.ttl (renamed from tests/tests-ttl/literal_with_numeric_escape8.ttl)0
-rw-r--r--tests/TurtleTests/localName_with_assigned_nfc_PN_CHARS_BASE_character_boundaries.nt1
-rw-r--r--tests/TurtleTests/localName_with_assigned_nfc_PN_CHARS_BASE_character_boundaries.ttl2
-rw-r--r--tests/TurtleTests/localName_with_assigned_nfc_bmp_PN_CHARS_BASE_character_boundaries.nt1
-rw-r--r--tests/TurtleTests/localName_with_assigned_nfc_bmp_PN_CHARS_BASE_character_boundaries.ttl2
-rw-r--r--tests/TurtleTests/localName_with_leading_digit.nt (renamed from tests/tests-ttl/localName_with_leading_digit.nt)0
-rw-r--r--tests/TurtleTests/localName_with_leading_digit.ttl (renamed from tests/tests-ttl/localName_with_leading_digit.ttl)0
-rw-r--r--tests/TurtleTests/localName_with_leading_underscore.nt (renamed from tests/tests-ttl/localName_with_leading_underscore.nt)0
-rw-r--r--tests/TurtleTests/localName_with_leading_underscore.ttl (renamed from tests/tests-ttl/localName_with_leading_underscore.ttl)0
-rw-r--r--tests/TurtleTests/localName_with_nfc_PN_CHARS_BASE_character_boundaries.nt1
-rw-r--r--tests/TurtleTests/localName_with_nfc_PN_CHARS_BASE_character_boundaries.ttl2
-rw-r--r--tests/TurtleTests/localName_with_non_leading_extras.nt1
-rw-r--r--tests/TurtleTests/localName_with_non_leading_extras.ttl2
-rw-r--r--tests/TurtleTests/localname_with_COLON.nt (renamed from tests/tests-ttl/localname_with_COLON.nt)0
-rw-r--r--tests/TurtleTests/localname_with_COLON.ttl (renamed from tests/tests-ttl/localname_with_COLON.ttl)0
-rw-r--r--tests/TurtleTests/manifest.ttl (renamed from tests/tests-ttl/manifest.ttl)551
-rw-r--r--tests/TurtleTests/negative_numeric.nt (renamed from tests/tests-ttl/negative_numeric.nt)0
-rw-r--r--tests/TurtleTests/negative_numeric.ttl (renamed from tests/tests-ttl/negative_numeric.ttl)0
-rw-r--r--tests/TurtleTests/nested_blankNodePropertyLists.nt (renamed from tests/tests-ttl/nested_blankNodePropertyLists.nt)0
-rw-r--r--tests/TurtleTests/nested_blankNodePropertyLists.ttl (renamed from tests/tests-ttl/nested_blankNodePropertyLists.ttl)0
-rw-r--r--tests/TurtleTests/nested_collection.nt (renamed from tests/tests-ttl/nested_collection.nt)0
-rw-r--r--tests/TurtleTests/nested_collection.ttl (renamed from tests/tests-ttl/nested_collection.ttl)0
-rw-r--r--tests/TurtleTests/number_sign_following_PNAME_NS.nt1
-rw-r--r--tests/TurtleTests/number_sign_following_PNAME_NS.ttl3
-rw-r--r--tests/TurtleTests/number_sign_following_PNAME_NS.ttl.thru (renamed from tests/tests-ttl/LITERAL1_all_controls.ttl.thru)0
-rw-r--r--tests/TurtleTests/number_sign_following_localName.nt1
-rw-r--r--tests/TurtleTests/number_sign_following_localName.ttl3
-rw-r--r--tests/TurtleTests/numeric_with_leading_0.nt (renamed from tests/tests-ttl/numeric_with_leading_0.nt)0
-rw-r--r--tests/TurtleTests/numeric_with_leading_0.ttl (renamed from tests/tests-ttl/numeric_with_leading_0.ttl)0
-rw-r--r--tests/TurtleTests/objectList_with_two_objects.nt (renamed from tests/tests-ttl/objectList_with_two_objects.nt)0
-rw-r--r--tests/TurtleTests/objectList_with_two_objects.ttl (renamed from tests/tests-ttl/objectList_with_two_objects.ttl)0
-rw-r--r--tests/TurtleTests/old_style_base.ttl (renamed from tests/tests-ttl/old_style_base.ttl)0
-rw-r--r--tests/TurtleTests/old_style_prefix.ttl (renamed from tests/tests-ttl/old_style_prefix.ttl)0
-rw-r--r--tests/TurtleTests/percent_escaped_localName.nt (renamed from tests/tests-ttl/percent_escaped_localName.nt)0
-rw-r--r--tests/TurtleTests/percent_escaped_localName.ttl (renamed from tests/tests-ttl/percent_escaped_localName.ttl)0
-rw-r--r--tests/TurtleTests/positive_numeric.nt (renamed from tests/tests-ttl/positive_numeric.nt)0
-rw-r--r--tests/TurtleTests/positive_numeric.ttl (renamed from tests/tests-ttl/positive_numeric.ttl)0
-rw-r--r--tests/TurtleTests/predicateObjectList_with_two_objectLists.nt (renamed from tests/tests-ttl/predicateObjectList_with_two_objectLists.nt)0
-rw-r--r--tests/TurtleTests/predicateObjectList_with_two_objectLists.ttl (renamed from tests/tests-ttl/predicateObjectList_with_two_objectLists.ttl)0
-rw-r--r--tests/TurtleTests/prefix_only_IRI.ttl (renamed from tests/tests-ttl/prefix_only_IRI.ttl)0
-rw-r--r--tests/TurtleTests/prefix_reassigned_and_used.nt (renamed from tests/tests-ttl/prefix_reassigned_and_used.nt)0
-rw-r--r--tests/TurtleTests/prefix_reassigned_and_used.ttl (renamed from tests/tests-ttl/prefix_reassigned_and_used.ttl)0
-rw-r--r--tests/TurtleTests/prefix_with_PN_CHARS_BASE_character_boundaries.ttl2
-rw-r--r--tests/TurtleTests/prefix_with_non_leading_extras.ttl2
-rw-r--r--tests/TurtleTests/prefixed_IRI_object.ttl (renamed from tests/tests-ttl/prefixed_IRI_object.ttl)0
-rw-r--r--tests/TurtleTests/prefixed_IRI_predicate.ttl (renamed from tests/tests-ttl/prefixed_IRI_predicate.ttl)0
-rw-r--r--tests/TurtleTests/prefixed_name_datatype.ttl (renamed from tests/tests-ttl/prefixed_name_datatype.ttl)0
-rw-r--r--tests/TurtleTests/repeated_semis_at_end.ttl (renamed from tests/tests-ttl/repeated_semis_at_end.ttl)0
-rw-r--r--tests/TurtleTests/repeated_semis_not_at_end.nt (renamed from tests/tests-ttl/repeated_semis_not_at_end.nt)0
-rw-r--r--tests/TurtleTests/repeated_semis_not_at_end.ttl (renamed from tests/tests-ttl/repeated_semis_not_at_end.ttl)0
-rw-r--r--tests/TurtleTests/reserved_escaped_localName.nt1
-rw-r--r--tests/TurtleTests/reserved_escaped_localName.ttl2
-rw-r--r--tests/TurtleTests/reserved_escaped_localName.ttl.thru (renamed from tests/tests-ttl/turtle-syntax-file-01.ttl)0
-rw-r--r--tests/TurtleTests/sole_blankNodePropertyList.nt (renamed from tests/tests-ttl/sole_blankNodePropertyList.nt)0
-rw-r--r--tests/TurtleTests/sole_blankNodePropertyList.ttl (renamed from tests/tests-ttl/sole_blankNodePropertyList.ttl)0
-rw-r--r--tests/TurtleTests/turtle-eval-bad-01.ttl2
-rw-r--r--tests/TurtleTests/turtle-eval-bad-02.ttl2
-rw-r--r--tests/TurtleTests/turtle-eval-bad-03.ttl2
-rw-r--r--tests/TurtleTests/turtle-eval-bad-04.ttl2
-rw-r--r--tests/TurtleTests/turtle-eval-struct-01.nt1
-rw-r--r--tests/TurtleTests/turtle-eval-struct-01.ttl1
-rw-r--r--tests/TurtleTests/turtle-eval-struct-02.nt2
-rw-r--r--tests/TurtleTests/turtle-eval-struct-02.ttl4
-rw-r--r--tests/TurtleTests/turtle-subm-01.nt1
-rw-r--r--tests/TurtleTests/turtle-subm-01.ttl (renamed from tests/tests-ttl/turtle-subm-01.ttl)0
-rw-r--r--tests/TurtleTests/turtle-subm-02.nt (renamed from tests/tests-ttl/turtle-subm-02.nt)0
-rw-r--r--tests/TurtleTests/turtle-subm-02.ttl (renamed from tests/tests-ttl/turtle-subm-02.ttl)0
-rw-r--r--tests/TurtleTests/turtle-subm-03.nt (renamed from tests/tests-ttl/turtle-subm-03.nt)0
-rw-r--r--tests/TurtleTests/turtle-subm-03.ttl (renamed from tests/tests-ttl/turtle-subm-03.ttl)0
-rw-r--r--tests/TurtleTests/turtle-subm-04.nt (renamed from tests/tests-ttl/turtle-subm-04.nt)0
-rw-r--r--tests/TurtleTests/turtle-subm-04.ttl (renamed from tests/tests-ttl/turtle-subm-04.ttl)0
-rw-r--r--tests/TurtleTests/turtle-subm-05.nt (renamed from tests/tests-ttl/turtle-subm-05.nt)0
-rw-r--r--tests/TurtleTests/turtle-subm-05.ttl (renamed from tests/tests-ttl/turtle-subm-05.ttl)0
-rw-r--r--tests/TurtleTests/turtle-subm-06.nt (renamed from tests/tests-ttl/turtle-subm-06.nt)0
-rw-r--r--tests/TurtleTests/turtle-subm-06.ttl (renamed from tests/tests-ttl/turtle-subm-06.ttl)0
-rw-r--r--tests/TurtleTests/turtle-subm-07.nt (renamed from tests/tests-ttl/turtle-subm-07.nt)0
-rw-r--r--tests/TurtleTests/turtle-subm-07.ttl (renamed from tests/tests-ttl/turtle-subm-07.ttl)0
-rw-r--r--tests/TurtleTests/turtle-subm-08.nt (renamed from tests/tests-ttl/turtle-subm-08.nt)0
-rw-r--r--tests/TurtleTests/turtle-subm-08.ttl (renamed from tests/tests-ttl/turtle-subm-08.ttl)0
-rw-r--r--tests/TurtleTests/turtle-subm-09.nt (renamed from tests/tests-ttl/turtle-subm-09.nt)0
-rw-r--r--tests/TurtleTests/turtle-subm-09.ttl (renamed from tests/tests-ttl/turtle-subm-09.ttl)0
-rw-r--r--tests/TurtleTests/turtle-subm-10.nt (renamed from tests/tests-ttl/turtle-subm-10.nt)0
-rw-r--r--tests/TurtleTests/turtle-subm-10.ttl (renamed from tests/tests-ttl/turtle-subm-10.ttl)0
-rw-r--r--tests/TurtleTests/turtle-subm-11.nt (renamed from tests/tests-ttl/turtle-subm-11.nt)0
-rw-r--r--tests/TurtleTests/turtle-subm-11.ttl (renamed from tests/tests-ttl/turtle-subm-11.ttl)0
-rw-r--r--tests/TurtleTests/turtle-subm-12.nt (renamed from tests/tests-ttl/turtle-subm-12.nt)0
-rw-r--r--tests/TurtleTests/turtle-subm-12.ttl (renamed from tests/tests-ttl/turtle-subm-12.ttl)0
-rw-r--r--tests/TurtleTests/turtle-subm-13.nt (renamed from tests/tests-ttl/turtle-subm-13.nt)0
-rw-r--r--tests/TurtleTests/turtle-subm-13.ttl (renamed from tests/tests-ttl/turtle-subm-13.ttl)0
-rw-r--r--tests/TurtleTests/turtle-subm-14.nt (renamed from tests/tests-ttl/turtle-subm-14.nt)0
-rw-r--r--tests/TurtleTests/turtle-subm-14.ttl (renamed from tests/tests-ttl/turtle-subm-14.ttl)0
-rw-r--r--tests/TurtleTests/turtle-subm-15.nt (renamed from tests/tests-ttl/turtle-subm-15.nt)0
-rw-r--r--tests/TurtleTests/turtle-subm-15.ttl (renamed from tests/tests-ttl/turtle-subm-15.ttl)0
-rw-r--r--tests/TurtleTests/turtle-subm-16.nt (renamed from tests/tests-ttl/turtle-subm-16.nt)0
-rw-r--r--tests/TurtleTests/turtle-subm-16.ttl (renamed from tests/tests-ttl/turtle-subm-16.ttl)0
-rw-r--r--tests/TurtleTests/turtle-subm-17.nt (renamed from tests/tests-ttl/turtle-subm-17.nt)0
-rw-r--r--tests/TurtleTests/turtle-subm-17.ttl (renamed from tests/tests-ttl/turtle-subm-17.ttl)0
-rw-r--r--tests/TurtleTests/turtle-subm-18.nt (renamed from tests/tests-ttl/turtle-subm-18.nt)0
-rw-r--r--tests/TurtleTests/turtle-subm-18.ttl (renamed from tests/tests-ttl/turtle-subm-18.ttl)0
-rw-r--r--tests/TurtleTests/turtle-subm-19.nt (renamed from tests/tests-ttl/turtle-subm-19.nt)0
-rw-r--r--tests/TurtleTests/turtle-subm-19.ttl (renamed from tests/tests-ttl/turtle-subm-19.ttl)0
-rw-r--r--tests/TurtleTests/turtle-subm-20.nt (renamed from tests/tests-ttl/turtle-subm-20.nt)0
-rw-r--r--tests/TurtleTests/turtle-subm-20.ttl (renamed from tests/tests-ttl/turtle-subm-20.ttl)0
-rw-r--r--tests/TurtleTests/turtle-subm-21.nt (renamed from tests/tests-ttl/turtle-subm-21.nt)0
-rw-r--r--tests/TurtleTests/turtle-subm-21.ttl (renamed from tests/tests-ttl/turtle-subm-21.ttl)0
-rw-r--r--tests/TurtleTests/turtle-subm-22.nt (renamed from tests/tests-ttl/turtle-subm-22.nt)0
-rw-r--r--tests/TurtleTests/turtle-subm-22.ttl (renamed from tests/tests-ttl/turtle-subm-22.ttl)0
-rw-r--r--tests/TurtleTests/turtle-subm-23.nt (renamed from tests/tests-ttl/turtle-subm-23.nt)0
-rw-r--r--tests/TurtleTests/turtle-subm-23.ttl (renamed from tests/tests-ttl/turtle-subm-23.ttl)0
-rw-r--r--tests/TurtleTests/turtle-subm-24.nt (renamed from tests/tests-ttl/turtle-subm-24.nt)0
-rw-r--r--tests/TurtleTests/turtle-subm-24.ttl (renamed from tests/tests-ttl/turtle-subm-24.ttl)0
-rw-r--r--tests/TurtleTests/turtle-subm-25.nt (renamed from tests/tests-ttl/turtle-subm-25.nt)0
-rw-r--r--tests/TurtleTests/turtle-subm-25.ttl (renamed from tests/tests-ttl/turtle-subm-25.ttl)0
-rw-r--r--tests/TurtleTests/turtle-subm-26.nt (renamed from tests/tests-ttl/turtle-subm-26.nt)0
-rw-r--r--tests/TurtleTests/turtle-subm-26.ttl (renamed from tests/tests-ttl/turtle-subm-26.ttl)0
-rw-r--r--tests/TurtleTests/turtle-subm-27.nt (renamed from tests/tests-ttl/turtle-subm-27.nt)2
-rw-r--r--tests/TurtleTests/turtle-subm-27.ttl (renamed from tests/tests-ttl/turtle-subm-27.ttl)2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-LITERAL2_with_langtag_and_datatype.ttl (renamed from tests/tests-ttl/turtle-syntax-bad-LITERAL2_with_langtag_and_datatype.ttl)0
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-base-01.ttl (renamed from tests/tests-ttl/turtle-syntax-bad-base-01.ttl)0
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-base-02.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-base-03.ttl (renamed from tests/tests-ttl/turtle-syntax-bad-base-03.ttl)2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-blank-label-dot-end.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-esc-01.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-esc-02.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-esc-03.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-esc-04.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-kw-01.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-kw-02.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-kw-03.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-kw-04.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-kw-05.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-lang-01.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-ln-dash-start.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-ln-escape-start.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-ln-escape.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-missing-ns-dot-end.ttl (renamed from tests/tests-ttl/turtle-syntax-bad-missing-ns-dot-end.ttl)0
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-missing-ns-dot-start.ttl (renamed from tests/tests-ttl/turtle-syntax-bad-missing-ns-dot-start.ttl)0
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-n3-extras-01.ttl (renamed from tests/tests-ttl/turtle-syntax-bad-n3-extras-01.ttl)2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-n3-extras-02.ttl4
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-n3-extras-03.ttl7
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-n3-extras-04.ttl5
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-n3-extras-05.ttl4
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-n3-extras-06.ttl4
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-n3-extras-07.ttl (renamed from tests/tests-ttl/turtle-syntax-bad-n3-extras-07.ttl)0
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-n3-extras-08.ttl (renamed from tests/tests-ttl/turtle-syntax-bad-n3-extras-08.ttl)0
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-n3-extras-09.ttl3
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-n3-extras-10.ttl3
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-n3-extras-11.ttl3
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-n3-extras-12.ttl3
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-n3-extras-13.ttl (renamed from tests/tests-ttl/turtle-syntax-bad-n3-extras-13.ttl)0
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-ns-dot-end.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-ns-dot-start.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-num-01.ttl1
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-num-02.ttl1
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-num-03.ttl1
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-num-04.ttl1
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-num-05.ttl1
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-number-dot-in-anon.ttl6
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-pname-01.ttl3
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-pname-02.ttl3
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-pname-03.ttl3
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-prefix-01.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-prefix-02.ttl (renamed from tests/tests-ttl/turtle-syntax-bad-prefix-02.ttl)2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-prefix-03.ttl (renamed from tests/tests-ttl/turtle-syntax-bad-prefix-03.ttl)0
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-prefix-04.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-prefix-05.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-string-01.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-string-02.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-string-03.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-string-04.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-string-05.ttl4
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-string-06.ttl3
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-string-07.ttl3
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-struct-01.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-struct-02.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-struct-03.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-struct-04.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-struct-05.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-struct-06.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-struct-07.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-struct-08.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-struct-09.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-struct-10.ttl3
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-struct-11.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-struct-12.ttl1
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-struct-13.ttl1
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-struct-14.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-struct-15.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-struct-16.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-struct-17.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-uri-01.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-uri-02.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-uri-03.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-uri-04.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bad-uri-05.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-base-01.ttl1
-rw-r--r--tests/TurtleTests/turtle-syntax-base-02.ttl1
-rw-r--r--tests/TurtleTests/turtle-syntax-base-03.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-base-04.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-blank-label.ttl (renamed from tests/tests-ttl/turtle-syntax-blank-label.ttl)2
-rw-r--r--tests/TurtleTests/turtle-syntax-bnode-01.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bnode-02.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bnode-03.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bnode-04.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bnode-05.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bnode-06.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bnode-07.ttl3
-rw-r--r--tests/TurtleTests/turtle-syntax-bnode-08.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-bnode-09.ttl3
-rw-r--r--tests/TurtleTests/turtle-syntax-bnode-10.ttl (renamed from tests/tests-ttl/turtle-syntax-bnode-10.ttl)2
-rw-r--r--tests/TurtleTests/turtle-syntax-datatypes-01.ttl (renamed from tests/tests-ttl/turtle-syntax-datatypes-01.ttl)0
-rw-r--r--tests/TurtleTests/turtle-syntax-datatypes-02.ttl (renamed from tests/tests-ttl/turtle-syntax-datatypes-02.ttl)0
-rw-r--r--tests/TurtleTests/turtle-syntax-file-01.ttl0
-rw-r--r--tests/TurtleTests/turtle-syntax-file-02.ttl (renamed from tests/tests-ttl/turtle-syntax-file-02.ttl)0
-rw-r--r--tests/TurtleTests/turtle-syntax-file-03.ttl (renamed from tests/tests-ttl/turtle-syntax-file-03.ttl)0
-rw-r--r--tests/TurtleTests/turtle-syntax-kw-01.ttl (renamed from tests/tests-ttl/turtle-syntax-kw-01.ttl)0
-rw-r--r--tests/TurtleTests/turtle-syntax-kw-02.ttl (renamed from tests/tests-ttl/turtle-syntax-kw-02.ttl)0
-rw-r--r--tests/TurtleTests/turtle-syntax-kw-03.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-lists-01.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-lists-02.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-lists-03.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-lists-04.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-lists-05.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-ln-colons.ttl (renamed from tests/tests-ttl/turtle-syntax-ln-colons.ttl)2
-rw-r--r--tests/TurtleTests/turtle-syntax-ln-dots.ttl (renamed from tests/tests-ttl/turtle-syntax-ln-dots.ttl)2
-rw-r--r--tests/TurtleTests/turtle-syntax-ns-dots.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-number-01.ttl (renamed from tests/tests-ttl/turtle-syntax-number-01.ttl)0
-rw-r--r--tests/TurtleTests/turtle-syntax-number-02.ttl (renamed from tests/tests-ttl/turtle-syntax-number-02.ttl)0
-rw-r--r--tests/TurtleTests/turtle-syntax-number-03.ttl (renamed from tests/tests-ttl/turtle-syntax-number-03.ttl)0
-rw-r--r--tests/TurtleTests/turtle-syntax-number-04.ttl (renamed from tests/tests-ttl/turtle-syntax-number-04.ttl)0
-rw-r--r--tests/TurtleTests/turtle-syntax-number-05.ttl (renamed from tests/tests-ttl/turtle-syntax-number-05.ttl)0
-rw-r--r--tests/TurtleTests/turtle-syntax-number-06.ttl (renamed from tests/tests-ttl/turtle-syntax-number-06.ttl)0
-rw-r--r--tests/TurtleTests/turtle-syntax-number-07.ttl (renamed from tests/tests-ttl/turtle-syntax-number-07.ttl)0
-rw-r--r--tests/TurtleTests/turtle-syntax-number-08.ttl (renamed from tests/tests-ttl/turtle-syntax-number-08.ttl)0
-rw-r--r--tests/TurtleTests/turtle-syntax-number-09.ttl (renamed from tests/tests-ttl/turtle-syntax-number-09.ttl)0
-rw-r--r--tests/TurtleTests/turtle-syntax-number-10.ttl (renamed from tests/tests-ttl/turtle-syntax-number-10.ttl)0
-rw-r--r--tests/TurtleTests/turtle-syntax-number-11.ttl (renamed from tests/tests-ttl/turtle-syntax-number-11.ttl)0
-rw-r--r--tests/TurtleTests/turtle-syntax-pname-esc-01.ttl (renamed from tests/tests-ttl/turtle-syntax-pname-esc-01.ttl)2
-rw-r--r--tests/TurtleTests/turtle-syntax-pname-esc-02.ttl (renamed from tests/tests-ttl/turtle-syntax-pname-esc-02.ttl)2
-rw-r--r--tests/TurtleTests/turtle-syntax-pname-esc-03.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-prefix-01.ttl1
-rw-r--r--tests/TurtleTests/turtle-syntax-prefix-02.ttl1
-rw-r--r--tests/TurtleTests/turtle-syntax-prefix-03.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-prefix-04.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-prefix-05.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-prefix-06.ttl4
-rw-r--r--tests/TurtleTests/turtle-syntax-prefix-07.ttl (renamed from tests/tests-ttl/turtle-syntax-prefix-07.ttl)2
-rw-r--r--tests/TurtleTests/turtle-syntax-prefix-08.ttl (renamed from tests/tests-ttl/turtle-syntax-prefix-08.ttl)2
-rw-r--r--tests/TurtleTests/turtle-syntax-prefix-09.ttl4
-rw-r--r--tests/TurtleTests/turtle-syntax-str-esc-01.ttl1
-rw-r--r--tests/TurtleTests/turtle-syntax-str-esc-02.ttl1
-rw-r--r--tests/TurtleTests/turtle-syntax-str-esc-03.ttl1
-rw-r--r--tests/TurtleTests/turtle-syntax-string-01.ttl1
-rw-r--r--tests/TurtleTests/turtle-syntax-string-02.ttl1
-rw-r--r--tests/TurtleTests/turtle-syntax-string-03.ttl1
-rw-r--r--tests/TurtleTests/turtle-syntax-string-04.ttl1
-rw-r--r--tests/TurtleTests/turtle-syntax-string-05.ttl1
-rw-r--r--tests/TurtleTests/turtle-syntax-string-06.ttl1
-rw-r--r--tests/TurtleTests/turtle-syntax-string-07.ttl1
-rw-r--r--tests/TurtleTests/turtle-syntax-string-08.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-string-09.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-string-10.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-string-11.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-struct-01.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-struct-02.ttl3
-rw-r--r--tests/TurtleTests/turtle-syntax-struct-03.ttl4
-rw-r--r--tests/TurtleTests/turtle-syntax-struct-04.ttl4
-rw-r--r--tests/TurtleTests/turtle-syntax-struct-05.ttl4
-rw-r--r--tests/TurtleTests/turtle-syntax-uri-01.ttl1
-rw-r--r--tests/TurtleTests/turtle-syntax-uri-02.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-uri-03.ttl2
-rw-r--r--tests/TurtleTests/turtle-syntax-uri-04.ttl (renamed from tests/tests-ttl/turtle-syntax-uri-04.ttl)2
-rw-r--r--tests/TurtleTests/two_LITERAL_LONG2s.nt (renamed from tests/tests-ttl/two_LITERAL_LONG2s.nt)0
-rw-r--r--tests/TurtleTests/two_LITERAL_LONG2s.ttl (renamed from tests/tests-ttl/two_LITERAL_LONG2s.ttl)0
-rw-r--r--tests/TurtleTests/underscore_in_localName.nt (renamed from tests/tests-ttl/underscore_in_localName.nt)0
-rw-r--r--tests/TurtleTests/underscore_in_localName.ttl (renamed from tests/tests-ttl/underscore_in_localName.ttl)0
-rw-r--r--tests/tests-ttl/LICENSE40
-rw-r--r--tests/tests-ttl/LITERAL_with_UTF8_boundaries.nt1
-rw-r--r--tests/tests-ttl/README1
-rw-r--r--tests/tests-ttl/turtle-eval-bad-01.ttl2
-rw-r--r--tests/tests-ttl/turtle-eval-bad-02.ttl2
-rw-r--r--tests/tests-ttl/turtle-eval-bad-03.ttl2
-rw-r--r--tests/tests-ttl/turtle-eval-bad-04.ttl2
-rw-r--r--tests/tests-ttl/turtle-eval-struct-01.nt1
-rw-r--r--tests/tests-ttl/turtle-eval-struct-01.ttl1
-rw-r--r--tests/tests-ttl/turtle-eval-struct-02.nt2
-rw-r--r--tests/tests-ttl/turtle-eval-struct-02.ttl4
-rw-r--r--tests/tests-ttl/turtle-subm-01.nt1
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-base-02.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-blank-label-dot-end.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-esc-01.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-esc-02.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-esc-03.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-esc-04.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-kw-01.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-kw-02.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-kw-03.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-kw-04.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-kw-05.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-lang-01.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-ln-dash-start.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-ln-escape-start.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-ln-escape.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-n3-extras-02.ttl4
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-n3-extras-03.ttl7
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-n3-extras-04.ttl5
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-n3-extras-05.ttl4
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-n3-extras-06.ttl4
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-n3-extras-09.ttl3
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-n3-extras-10.ttl3
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-n3-extras-11.ttl3
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-n3-extras-12.ttl3
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-ns-dot-end.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-ns-dot-start.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-num-01.ttl1
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-num-02.ttl1
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-num-03.ttl1
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-num-04.ttl1
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-num-05.ttl1
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-number-dot-in-anon.ttl6
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-pname-01.ttl3
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-pname-02.ttl3
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-pname-03.ttl3
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-prefix-01.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-prefix-04.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-prefix-05.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-string-01.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-string-02.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-string-03.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-string-04.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-string-05.ttl4
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-string-06.ttl3
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-string-07.ttl3
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-struct-01.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-struct-02.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-struct-03.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-struct-04.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-struct-05.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-struct-06.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-struct-07.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-struct-08.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-struct-09.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-struct-10.ttl3
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-struct-11.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-struct-12.ttl1
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-struct-13.ttl1
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-struct-14.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-struct-15.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-struct-16.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-struct-17.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-uri-01.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-uri-02.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-uri-03.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-uri-04.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bad-uri-05.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-base-01.ttl1
-rw-r--r--tests/tests-ttl/turtle-syntax-base-03.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bnode-01.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bnode-02.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bnode-03.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bnode-04.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bnode-05.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bnode-06.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bnode-07.ttl3
-rw-r--r--tests/tests-ttl/turtle-syntax-bnode-08.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-bnode-09.ttl3
-rw-r--r--tests/tests-ttl/turtle-syntax-kw-03.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-lists-01.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-lists-02.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-lists-03.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-lists-04.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-lists-05.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-ns-dots.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-pname-esc-03.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-prefix-01.ttl1
-rw-r--r--tests/tests-ttl/turtle-syntax-prefix-04.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-prefix-05.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-prefix-06.ttl4
-rw-r--r--tests/tests-ttl/turtle-syntax-prefix-09.ttl4
-rw-r--r--tests/tests-ttl/turtle-syntax-str-esc-01.ttl1
-rw-r--r--tests/tests-ttl/turtle-syntax-str-esc-02.ttl1
-rw-r--r--tests/tests-ttl/turtle-syntax-str-esc-03.ttl1
-rw-r--r--tests/tests-ttl/turtle-syntax-string-01.ttl1
-rw-r--r--tests/tests-ttl/turtle-syntax-string-02.ttl1
-rw-r--r--tests/tests-ttl/turtle-syntax-string-03.ttl1
-rw-r--r--tests/tests-ttl/turtle-syntax-string-04.ttl1
-rw-r--r--tests/tests-ttl/turtle-syntax-string-05.ttl1
-rw-r--r--tests/tests-ttl/turtle-syntax-string-06.ttl1
-rw-r--r--tests/tests-ttl/turtle-syntax-string-07.ttl1
-rw-r--r--tests/tests-ttl/turtle-syntax-string-08.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-string-09.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-string-10.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-string-11.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-struct-01.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-struct-02.ttl3
-rw-r--r--tests/tests-ttl/turtle-syntax-struct-03.ttl4
-rw-r--r--tests/tests-ttl/turtle-syntax-struct-04.ttl4
-rw-r--r--tests/tests-ttl/turtle-syntax-struct-05.ttl4
-rw-r--r--tests/tests-ttl/turtle-syntax-uri-01.ttl1
-rw-r--r--tests/tests-ttl/turtle-syntax-uri-02.ttl2
-rw-r--r--tests/tests-ttl/turtle-syntax-uri-03.ttl2
-rw-r--r--wscript28
528 files changed, 1050 insertions, 456 deletions
diff --git a/NEWS b/NEWS
index c0b9eed6..05b719a5 100644
--- a/NEWS
+++ b/NEWS
@@ -1,14 +1,14 @@
serd (0.18.3) unstable;
- * Support most of the latest Turtle Draft
+ * Support the latest Turtle Draft
* Don't write xsd:decimal literals to Turtle bare if they would not be read
back with the same type
* Fix possible crash in serd_writer_end_anon() when writing invalid lists
* Generate blank names like _:b1 and _:B2 not _:genid1 _:docid2
* Correctly handle posix_memalign failure
- * Update to waf 1.7.11
+ * Update to waf 1.7.14
- -- David Robillard <d@drobilla.net> Tue, 20 Aug 2013 11:33:48 -0400
+ -- David Robillard <d@drobilla.net> Tue, 24 Dec 2013 16:34:13 -0500
serd (0.18.2) stable;
diff --git a/src/reader.c b/src/reader.c
index f86bb630..664cb361 100644
--- a/src/reader.c
+++ b/src/reader.c
@@ -615,7 +615,10 @@ static bool
read_PN_CHARS_BASE(SerdReader* reader, Ref dest)
{
const uint8_t c = peek_byte(reader);
- if (is_alpha(c)) { // TODO: UTF-8
+ if ((c & 0x80)) { // Multi-byte character
+ return !read_utf8_character(reader, dest, eat_byte_safe(reader, c));
+ }
+ if (is_alpha(c)) {
push_byte(reader, dest, eat_byte_safe(reader, c));
return true;
}
@@ -626,7 +629,11 @@ static bool
read_PN_CHARS(SerdReader* reader, Ref dest)
{
const uint8_t c = peek_byte(reader);
- if (is_alpha(c) || is_digit(c) || c == '_' || c == '-') { // TODO: UTF-8
+ if ((c & 0x80)) { // Multi-byte character
+ return !read_utf8_character(reader, dest, eat_byte_safe(reader, c));
+ }
+
+ if (is_alpha(c) || is_digit(c) || c == '_' || c == '-') {
push_byte(reader, dest, eat_byte_safe(reader, c));
return true;
}
diff --git a/src/writer.c b/src/writer.c
index b0e61cb1..69d51b53 100644
--- a/src/writer.c
+++ b/src/writer.c
@@ -137,7 +137,9 @@ copy_node(SerdNode* dst, const SerdNode* src)
static inline size_t
sink(const void* buf, size_t len, SerdWriter* writer)
{
- if (writer->style & SERD_STYLE_BULK) {
+ if (len == 0) {
+ return 0;
+ } else if (writer->style & SERD_STYLE_BULK) {
return serd_bulk_sink_write(buf, len, &writer->bulk_sink);
} else {
return writer->sink(buf, len, writer->stream);
@@ -171,7 +173,7 @@ parse_utf8_char(SerdWriter* writer, const uint8_t* utf8, size_t* size)
uint8_t in = utf8[i++];
#define READ_BYTE() \
- in = utf8[i++] & 0x3f; \
+ in = utf8[i++] & 0x3F; \
c = (c << 6) | in;
switch (*size) {
@@ -242,21 +244,62 @@ write_uri(SerdWriter* writer, const uint8_t* utf8, size_t n_bytes)
}
}
- if (j > i) {
- // Bulk write all characters up to this special one
- len += sink(&utf8[i], j - i, writer);
- i = j;
- continue;
+ // Bulk write all characters up to this special one
+ len += sink(&utf8[i], j - i, writer);
+ if ((i = j) == n_bytes) {
+ break; // Reached end
}
// Write UTF-8 character
size_t size = 0;
len += write_character(writer, utf8 + i, &size);
i += size;
+ }
+ return len;
+}
- if (size == 0) {
- return len;
+static bool
+lname_must_escape(const uint8_t c)
+{
+ /* This arbitrary list of characters, most of which have nothing to do with
+ Turtle, must be handled as special cases here because the RDF and SPARQL
+ WGs are apparently intent on making the once elegant Turtle a baroque
+ and inconsistent mess, throwing elegance and extensibility completely
+ out the window for no good reason.
+
+ Note '-', '.', and '_' are also in PN_LOCAL_ESC, but are valid unescaped
+ in local names, so they are not escaped here. */
+
+ switch (c) {
+ case '\'': case '!': case '#': case '$': case '%': case '&':
+ case '(': case ')': case '*': case '+': case ',': case '/':
+ case ';': case '=': case '?': case '@': case '~':
+ return true;
+ }
+ return false;
+}
+
+static size_t
+write_lname(SerdWriter* writer, const uint8_t* utf8, size_t n_bytes)
+{
+ size_t len = 0;
+ for (size_t i = 0; i < n_bytes; ++i) {
+ size_t j = i; // Index of next character that must be escaped
+ for (; j < n_bytes; ++j) {
+ if (lname_must_escape(utf8[j])) {
+ break;
+ }
}
+
+ // Bulk write all characters up to this special one
+ len += sink(&utf8[i], j - i, writer);
+ if ((i = j) == n_bytes) {
+ break; // Reached end
+ }
+
+ // Write escape
+ len += sink("\\", 1, writer);
+ len += sink(&utf8[i], 1, writer);
}
return len;
}
@@ -276,10 +319,9 @@ write_text(SerdWriter* writer, TextContext ctx,
}
}
- if (j > i) {
- len += sink(&utf8[i], j - i, writer);
- i = j;
- continue;
+ len += sink(&utf8[i], j - i, writer);
+ if ((i = j) == n_bytes) {
+ break; // Reached end
}
uint8_t in = utf8[i++];
@@ -447,7 +489,7 @@ write_node(SerdWriter* writer,
sink(">", 1, writer);
break;
case SERD_TURTLE:
- sink(node->buf, node->n_bytes, writer);
+ write_lname(writer, node->buf, node->n_bytes);
}
break;
case SERD_LITERAL:
diff --git a/tests/tests-ttl/HYPHEN_MINUS_in_localName.nt b/tests/TurtleTests/HYPHEN_MINUS_in_localName.nt
index 25546b38..25546b38 100644
--- a/tests/tests-ttl/HYPHEN_MINUS_in_localName.nt
+++ b/tests/TurtleTests/HYPHEN_MINUS_in_localName.nt
diff --git a/tests/tests-ttl/HYPHEN_MINUS_in_localName.ttl b/tests/TurtleTests/HYPHEN_MINUS_in_localName.ttl
index 0340b8c8..0340b8c8 100644
--- a/tests/tests-ttl/HYPHEN_MINUS_in_localName.ttl
+++ b/tests/TurtleTests/HYPHEN_MINUS_in_localName.ttl
diff --git a/tests/tests-ttl/IRIREF_datatype.nt b/tests/TurtleTests/IRIREF_datatype.nt
index c333a5f6..c333a5f6 100644
--- a/tests/tests-ttl/IRIREF_datatype.nt
+++ b/tests/TurtleTests/IRIREF_datatype.nt
diff --git a/tests/tests-ttl/IRIREF_datatype.ttl b/tests/TurtleTests/IRIREF_datatype.ttl
index c333a5f6..c333a5f6 100644
--- a/tests/tests-ttl/IRIREF_datatype.ttl
+++ b/tests/TurtleTests/IRIREF_datatype.ttl
diff --git a/tests/tests-ttl/IRI_spo.nt b/tests/TurtleTests/IRI_spo.nt
index 01125e50..01125e50 100644
--- a/tests/tests-ttl/IRI_spo.nt
+++ b/tests/TurtleTests/IRI_spo.nt
diff --git a/tests/tests-ttl/IRI_subject.ttl b/tests/TurtleTests/IRI_subject.ttl
index 01125e50..01125e50 100644
--- a/tests/tests-ttl/IRI_subject.ttl
+++ b/tests/TurtleTests/IRI_subject.ttl
diff --git a/tests/tests-ttl/IRI_with_all_punctuation.nt b/tests/TurtleTests/IRI_with_all_punctuation.nt
index 94158773..94158773 100644
--- a/tests/tests-ttl/IRI_with_all_punctuation.nt
+++ b/tests/TurtleTests/IRI_with_all_punctuation.nt
diff --git a/tests/tests-ttl/IRI_with_all_punctuation.ttl b/tests/TurtleTests/IRI_with_all_punctuation.ttl
index 94158773..94158773 100644
--- a/tests/tests-ttl/IRI_with_all_punctuation.ttl
+++ b/tests/TurtleTests/IRI_with_all_punctuation.ttl
diff --git a/tests/tests-ttl/IRI_with_eight_digit_numeric_escape.ttl b/tests/TurtleTests/IRI_with_eight_digit_numeric_escape.ttl
index 434034e7..434034e7 100644
--- a/tests/tests-ttl/IRI_with_eight_digit_numeric_escape.ttl
+++ b/tests/TurtleTests/IRI_with_eight_digit_numeric_escape.ttl
diff --git a/tests/tests-ttl/IRI_with_four_digit_numeric_escape.ttl b/tests/TurtleTests/IRI_with_four_digit_numeric_escape.ttl
index 4163636e..4163636e 100644
--- a/tests/tests-ttl/IRI_with_four_digit_numeric_escape.ttl
+++ b/tests/TurtleTests/IRI_with_four_digit_numeric_escape.ttl
diff --git a/tests/TurtleTests/LICENSE b/tests/TurtleTests/LICENSE
new file mode 100644
index 00000000..1ac8f4e1
--- /dev/null
+++ b/tests/TurtleTests/LICENSE
@@ -0,0 +1,117 @@
+Summary
+=======
+
+Distributed under both the W3C Test Suite License[1] and the W3C 3-clause BSD
+License[2]. To contribute to a W3C Test Suite, see the policies and contribution
+forms [3]
+
+1. http://www.w3.org/Consortium/Legal/2008/04-testsuite-license
+2. http://www.w3.org/Consortium/Legal/2008/03-bsd-license
+3. http://www.w3.org/2004/10/27-testcases
+
+DISCLAIMER
+
+UNDER BOTH MUTUALLY EXCLUSIVE LICENSES, THIS DOCUMENT AND ALL DOCUMENTS, TESTS
+AND SOFTWARE THAT LINK THIS STATEMENT ARE PROVIDED "AS IS," AND COPYRIGHT
+HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING,
+BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
+PURPOSE, NON-INFRINGEMENT, OR TITLE; THAT THE CONTENTS OF THE DOCUMENT ARE
+SUITABLE FOR ANY PURPOSE; NOR THAT THE IMPLEMENTATION OF SUCH CONTENTS WILL NOT
+INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
+COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR
+CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE DOCUMENT OR THE PERFORMANCE
+OR IMPLEMENTATION OF THE CONTENTS THEREOF.
+
+
+W3C Test Suite License
+======================
+
+This document, Test Suites and other documents that link to this statement are
+provided by the copyright holders under the following license: By using and/or
+copying this document, or the W3C document from which this statement is linked,
+you (the licensee) agree that you have read, understood, and will comply with
+the following terms and conditions:
+
+Permission to copy, and distribute the contents of this document, or the W3C
+document from which this statement is linked, in any medium for any purpose and
+without fee or royalty is hereby granted, provided that you include the
+following on ALL copies of the document, or portions thereof, that you use:
+
+1 A link or URL to the original W3C document.
+
+2 The pre-existing copyright notice of the original author, or if it doesn't
+ exist, a notice (hypertext is preferred, but a textual representation is
+ permitted) of the form: "Copyright © [$date-of-document] World Wide Web
+ Consortium, (Massachusetts Institute of Technology, European Research
+ Consortium for Informatics and Mathematics, Keio University) and others. All
+ Rights
+ Reserved. http://www.w3.org/Consortium/Legal/2008/04-testsuite-copyright.html"
+
+3 If it exists, the STATUS of the W3C document.
+
+4 When space permits, inclusion of the full text of this NOTICE should be
+ provided. We request that authorship attribution be provided in any software,
+ documents, or other items or products that you create pursuant to the
+ implementation of the contents of this document, or any portion thereof.
+
+
+No right to create modifications or derivatives of W3C documents is granted
+pursuant to this license. However, if additional requirements (documented in the
+Copyright FAQ) are satisfied, the right to create modifications or derivatives
+is sometimes granted by the W3C to individuals complying with those
+requirements.
+
+If a Test Suite distinguishes the test harness (or, framework for navigation)
+and the actual tests, permission is given to remove or alter the harness or
+navigation if the Test Suite in question allows to do so. The tests themselves
+shall NOT be changed in any way.
+
+The name and trademarks of W3C and other copyright holders may NOT be used in
+advertising or publicity pertaining to this document or other documents that
+link to this statement without specific, written prior permission. Title to
+copyright in this document will at all times remain with copyright
+holders. Permission is given to use the trademarked string W3C within claims of
+performance concerning W3C Specifications or features described therein, and
+there only, if the test suite so authorizes.
+
+THIS WORK IS PROVIDED BY W3C, MIT, ERCIM, KEIO UNIVERSITY, THE COPYRIGHT HOLDERS
+AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
+NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL W3C, MIT, ERCIM, KEIO
+UNIVERSITY, THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+W3C 3-clause BSD License
+========================
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+1 Redistributions of works must retain the original copyright notice, this list
+ of conditions and the following disclaimer.
+
+2 Redistributions in binary form must reproduce the original copyright notice,
+ this list of conditions and the following disclaimer in the documentation
+ and/or other materials provided with the distribution.
+
+3 Neither the name of the W3C nor the names of its contributors may be used to
+ endorse or promote products derived from this work without specific prior
+ written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
+ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
diff --git a/tests/tests-ttl/LITERAL1.nt b/tests/TurtleTests/LITERAL1.nt
index 3aba89e4..3aba89e4 100644
--- a/tests/tests-ttl/LITERAL1.nt
+++ b/tests/TurtleTests/LITERAL1.nt
diff --git a/tests/tests-ttl/LITERAL1.ttl b/tests/TurtleTests/LITERAL1.ttl
index 725a2403..725a2403 100644
--- a/tests/tests-ttl/LITERAL1.ttl
+++ b/tests/TurtleTests/LITERAL1.ttl
diff --git a/tests/tests-ttl/LITERAL1_all_controls.nt b/tests/TurtleTests/LITERAL1_all_controls.nt
index 91c8af14..91c8af14 100644
--- a/tests/tests-ttl/LITERAL1_all_controls.nt
+++ b/tests/TurtleTests/LITERAL1_all_controls.nt
diff --git a/tests/tests-ttl/LITERAL1_all_controls.ttl b/tests/TurtleTests/LITERAL1_all_controls.ttl
index dbf3721c..dbf3721c 100644
--- a/tests/tests-ttl/LITERAL1_all_controls.ttl
+++ b/tests/TurtleTests/LITERAL1_all_controls.ttl
Binary files differ
diff --git a/tests/tests-ttl/LITERAL1_all_punctuation.nt b/tests/TurtleTests/LITERAL1_all_punctuation.nt
index c25d818f..c25d818f 100644
--- a/tests/tests-ttl/LITERAL1_all_punctuation.nt
+++ b/tests/TurtleTests/LITERAL1_all_punctuation.nt
diff --git a/tests/tests-ttl/LITERAL1_all_punctuation.ttl b/tests/TurtleTests/LITERAL1_all_punctuation.ttl
index 7b1d9e54..7b1d9e54 100644
--- a/tests/tests-ttl/LITERAL1_all_punctuation.ttl
+++ b/tests/TurtleTests/LITERAL1_all_punctuation.ttl
diff --git a/tests/tests-ttl/LITERAL1_ascii_boundaries.nt b/tests/TurtleTests/LITERAL1_ascii_boundaries.nt
index 69c41447..69c41447 100644
--- a/tests/tests-ttl/LITERAL1_ascii_boundaries.nt
+++ b/tests/TurtleTests/LITERAL1_ascii_boundaries.nt
diff --git a/tests/tests-ttl/LITERAL1_ascii_boundaries.ttl b/tests/TurtleTests/LITERAL1_ascii_boundaries.ttl
index 7d65396f..7d65396f 100644
--- a/tests/tests-ttl/LITERAL1_ascii_boundaries.ttl
+++ b/tests/TurtleTests/LITERAL1_ascii_boundaries.ttl
Binary files differ
diff --git a/tests/tests-ttl/LITERAL1_with_UTF8_boundaries.ttl b/tests/TurtleTests/LITERAL1_with_UTF8_boundaries.ttl
index ce3a4919..b72eb040 100644
--- a/tests/tests-ttl/LITERAL1_with_UTF8_boundaries.ttl
+++ b/tests/TurtleTests/LITERAL1_with_UTF8_boundaries.ttl
@@ -1 +1 @@
-<http://a.example/s> <http://a.example/p> '€߿ࠀ࿿က쿿퀀퟿￿𐀀𿿿񀀀󿿿􀀀􏿽' .
+<http://a.example/s> <http://a.example/p> '€߿ࠀ࿿က쿿퀀퟿�𐀀𿿽񀀀󿿽􀀀􏿽' .
diff --git a/tests/tests-ttl/LITERAL2.ttl b/tests/TurtleTests/LITERAL2.ttl
index 3aba89e4..3aba89e4 100644
--- a/tests/tests-ttl/LITERAL2.ttl
+++ b/tests/TurtleTests/LITERAL2.ttl
diff --git a/tests/tests-ttl/LITERAL2_ascii_boundaries.nt b/tests/TurtleTests/LITERAL2_ascii_boundaries.nt
index 270a51e3..270a51e3 100644
--- a/tests/tests-ttl/LITERAL2_ascii_boundaries.nt
+++ b/tests/TurtleTests/LITERAL2_ascii_boundaries.nt
diff --git a/tests/tests-ttl/LITERAL2_ascii_boundaries.ttl b/tests/TurtleTests/LITERAL2_ascii_boundaries.ttl
index 90b4cd69..90b4cd69 100644
--- a/tests/tests-ttl/LITERAL2_ascii_boundaries.ttl
+++ b/tests/TurtleTests/LITERAL2_ascii_boundaries.ttl
Binary files differ
diff --git a/tests/tests-ttl/LITERAL2_with_UTF8_boundaries.ttl b/tests/TurtleTests/LITERAL2_with_UTF8_boundaries.ttl
index f7e71af4..0e1616db 100644
--- a/tests/tests-ttl/LITERAL2_with_UTF8_boundaries.ttl
+++ b/tests/TurtleTests/LITERAL2_with_UTF8_boundaries.ttl
@@ -1 +1 @@
-<http://a.example/s> <http://a.example/p> "€߿ࠀ࿿က쿿퀀퟿￿𐀀𿿿񀀀󿿿􀀀􏿽" .
+<http://a.example/s> <http://a.example/p> "€߿ࠀ࿿က쿿퀀퟿�𐀀𿿽񀀀󿿽􀀀􏿽" .
diff --git a/tests/tests-ttl/LITERAL_LONG1.ttl b/tests/TurtleTests/LITERAL_LONG1.ttl
index ab6baa93..ab6baa93 100644
--- a/tests/tests-ttl/LITERAL_LONG1.ttl
+++ b/tests/TurtleTests/LITERAL_LONG1.ttl
diff --git a/tests/tests-ttl/LITERAL_LONG1_ascii_boundaries.nt b/tests/TurtleTests/LITERAL_LONG1_ascii_boundaries.nt
index a592b4a1..a592b4a1 100644
--- a/tests/tests-ttl/LITERAL_LONG1_ascii_boundaries.nt
+++ b/tests/TurtleTests/LITERAL_LONG1_ascii_boundaries.nt
diff --git a/tests/tests-ttl/LITERAL_LONG1_ascii_boundaries.ttl b/tests/TurtleTests/LITERAL_LONG1_ascii_boundaries.ttl
index f943e249..f943e249 100644
--- a/tests/tests-ttl/LITERAL_LONG1_ascii_boundaries.ttl
+++ b/tests/TurtleTests/LITERAL_LONG1_ascii_boundaries.ttl
Binary files differ
diff --git a/tests/tests-ttl/LITERAL_LONG1_with_1_squote.nt b/tests/TurtleTests/LITERAL_LONG1_with_1_squote.nt
index acf7f58f..acf7f58f 100644
--- a/tests/tests-ttl/LITERAL_LONG1_with_1_squote.nt
+++ b/tests/TurtleTests/LITERAL_LONG1_with_1_squote.nt
diff --git a/tests/tests-ttl/LITERAL_LONG1_with_1_squote.ttl b/tests/TurtleTests/LITERAL_LONG1_with_1_squote.ttl
index 3b93046b..3b93046b 100644
--- a/tests/tests-ttl/LITERAL_LONG1_with_1_squote.ttl
+++ b/tests/TurtleTests/LITERAL_LONG1_with_1_squote.ttl
diff --git a/tests/tests-ttl/LITERAL_LONG1_with_2_squotes.nt b/tests/TurtleTests/LITERAL_LONG1_with_2_squotes.nt
index 8ddc52e8..8ddc52e8 100644
--- a/tests/tests-ttl/LITERAL_LONG1_with_2_squotes.nt
+++ b/tests/TurtleTests/LITERAL_LONG1_with_2_squotes.nt
diff --git a/tests/tests-ttl/LITERAL_LONG1_with_2_squotes.ttl b/tests/TurtleTests/LITERAL_LONG1_with_2_squotes.ttl
index 1219bad3..1219bad3 100644
--- a/tests/tests-ttl/LITERAL_LONG1_with_2_squotes.ttl
+++ b/tests/TurtleTests/LITERAL_LONG1_with_2_squotes.ttl
diff --git a/tests/tests-ttl/LITERAL_LONG1_with_UTF8_boundaries.ttl b/tests/TurtleTests/LITERAL_LONG1_with_UTF8_boundaries.ttl
index 59a70515..e04b675e 100644
--- a/tests/tests-ttl/LITERAL_LONG1_with_UTF8_boundaries.ttl
+++ b/tests/TurtleTests/LITERAL_LONG1_with_UTF8_boundaries.ttl
@@ -1 +1 @@
-<http://a.example/s> <http://a.example/p> '''€߿ࠀ࿿က쿿퀀퟿￿𐀀𿿿񀀀󿿿􀀀􏿽''' .
+<http://a.example/s> <http://a.example/p> '''€߿ࠀ࿿က쿿퀀퟿�𐀀𿿽񀀀󿿽􀀀􏿽''' .
diff --git a/tests/tests-ttl/LITERAL_LONG2.ttl b/tests/TurtleTests/LITERAL_LONG2.ttl
index e37bf4a3..e37bf4a3 100644
--- a/tests/tests-ttl/LITERAL_LONG2.ttl
+++ b/tests/TurtleTests/LITERAL_LONG2.ttl
diff --git a/tests/tests-ttl/LITERAL_LONG2_ascii_boundaries.nt b/tests/TurtleTests/LITERAL_LONG2_ascii_boundaries.nt
index 28785039..28785039 100644
--- a/tests/tests-ttl/LITERAL_LONG2_ascii_boundaries.nt
+++ b/tests/TurtleTests/LITERAL_LONG2_ascii_boundaries.nt
diff --git a/tests/tests-ttl/LITERAL_LONG2_ascii_boundaries.ttl b/tests/TurtleTests/LITERAL_LONG2_ascii_boundaries.ttl
index e919865f..e919865f 100644
--- a/tests/tests-ttl/LITERAL_LONG2_ascii_boundaries.ttl
+++ b/tests/TurtleTests/LITERAL_LONG2_ascii_boundaries.ttl
Binary files differ
diff --git a/tests/tests-ttl/LITERAL_LONG2_with_1_squote.nt b/tests/TurtleTests/LITERAL_LONG2_with_1_squote.nt
index 05a1fd3a..05a1fd3a 100644
--- a/tests/tests-ttl/LITERAL_LONG2_with_1_squote.nt
+++ b/tests/TurtleTests/LITERAL_LONG2_with_1_squote.nt
diff --git a/tests/tests-ttl/LITERAL_LONG2_with_1_squote.ttl b/tests/TurtleTests/LITERAL_LONG2_with_1_squote.ttl
index 80e389b8..80e389b8 100644
--- a/tests/tests-ttl/LITERAL_LONG2_with_1_squote.ttl
+++ b/tests/TurtleTests/LITERAL_LONG2_with_1_squote.ttl
diff --git a/tests/tests-ttl/LITERAL_LONG2_with_2_squotes.nt b/tests/TurtleTests/LITERAL_LONG2_with_2_squotes.nt
index 3e69dc10..3e69dc10 100644
--- a/tests/tests-ttl/LITERAL_LONG2_with_2_squotes.nt
+++ b/tests/TurtleTests/LITERAL_LONG2_with_2_squotes.nt
diff --git a/tests/tests-ttl/LITERAL_LONG2_with_2_squotes.ttl b/tests/TurtleTests/LITERAL_LONG2_with_2_squotes.ttl
index 2f14f5b3..2f14f5b3 100644
--- a/tests/tests-ttl/LITERAL_LONG2_with_2_squotes.ttl
+++ b/tests/TurtleTests/LITERAL_LONG2_with_2_squotes.ttl
diff --git a/tests/tests-ttl/LITERAL_LONG2_with_REVERSE_SOLIDUS.nt b/tests/TurtleTests/LITERAL_LONG2_with_REVERSE_SOLIDUS.nt
index 586e364d..586e364d 100644
--- a/tests/tests-ttl/LITERAL_LONG2_with_REVERSE_SOLIDUS.nt
+++ b/tests/TurtleTests/LITERAL_LONG2_with_REVERSE_SOLIDUS.nt
diff --git a/tests/tests-ttl/LITERAL_LONG2_with_REVERSE_SOLIDUS.ttl b/tests/TurtleTests/LITERAL_LONG2_with_REVERSE_SOLIDUS.ttl
index 2206e33b..2206e33b 100644
--- a/tests/tests-ttl/LITERAL_LONG2_with_REVERSE_SOLIDUS.ttl
+++ b/tests/TurtleTests/LITERAL_LONG2_with_REVERSE_SOLIDUS.ttl
diff --git a/tests/tests-ttl/LITERAL_LONG2_with_UTF8_boundaries.ttl b/tests/TurtleTests/LITERAL_LONG2_with_UTF8_boundaries.ttl
index c90d9a0f..644b32d8 100644
--- a/tests/tests-ttl/LITERAL_LONG2_with_UTF8_boundaries.ttl
+++ b/tests/TurtleTests/LITERAL_LONG2_with_UTF8_boundaries.ttl
@@ -1 +1 @@
-<http://a.example/s> <http://a.example/p> """€߿ࠀ࿿က쿿퀀퟿￿𐀀𿿿񀀀󿿿􀀀􏿽""" .
+<http://a.example/s> <http://a.example/p> """€߿ࠀ࿿က쿿퀀퟿�𐀀𿿽񀀀󿿽􀀀􏿽""" .
diff --git a/tests/TurtleTests/LITERAL_with_UTF8_boundaries.nt b/tests/TurtleTests/LITERAL_with_UTF8_boundaries.nt
new file mode 100644
index 00000000..47a2527a
--- /dev/null
+++ b/tests/TurtleTests/LITERAL_with_UTF8_boundaries.nt
@@ -0,0 +1 @@
+<http://a.example/s> <http://a.example/p> "\u0080\u07FF\u0800\u0FFF\u1000\uCFFF\uD000\uD7FF\uE000\uFFFD\U00010000\U0003FFFD\U00040000\U000FFFFD\U00100000\U0010FFFD" .
diff --git a/tests/TurtleTests/README b/tests/TurtleTests/README
new file mode 100644
index 00000000..1b049b9c
--- /dev/null
+++ b/tests/TurtleTests/README
@@ -0,0 +1,65 @@
+This README is for the W3C RDF Working Group's Turtle test suite.
+This test suite contains four kinds of tests:
+
+ 132 Evaluation (rdft:TestTurtleEval) - a pair of an input turtle
+ file and reference ntriples file.
+
+ 77 Positive syntax (rdft:TestTurtlePositiveSyntax) - an input turtle
+ file with no syntax errors.
+
+ 78 Negative syntax (rdft:TestTurtleNegativeSyntax) - an input turtle
+ file with at least one syntax error.
+
+ 4 Negative Evaluation (rdft:TestTurtleNegativeEval) - a pair of an
+ input turtle file and reference ntriples file. These tests have the
+ same properties as rdft:TestTurtleNegativeSyntax.
+
+The manifest.ttl file in this directory lists all of the tests in the
+RDF WG's Turtle test suite. Each test is one of the above tests. All
+tests have a name (mf:name) and an input (mf:action). The Evaluation
+tests have an expected result (mf:result).
+
+• An implementation passes an Evaluation test if it parses the input
+ into a graph, parses the expecte result into another graph, and
+ those two graphs are isomorphic (see
+ <http://www.w3.org/TR/rdf11-concepts/#graph-isomorphism>).
+
+• An implementation passes a positive syntax test if it parses the
+ input.
+
+• An implementation passes a negative syntax test if it fails to parse
+ the input.
+
+
+RELATIVE IRI RESOLUTION:
+
+The home of the test suite is <http://www.w3.org/2013/TurtleTests/>.
+Per RFC 3986 section 5.1.3, the base IRI for parsing each file is the
+retrieval IRI for that file. For example, the tests turtle-subm-01 and
+turtle-subm-27 require relative IRI resolution against a base of
+<http://www.w3.org/2013/TurtleTests/turtle-subm-01.ttl> and
+<http://www.w3.org/2013/TurtleTests/turtle-subm-27.ttl> respectively.
+
+
+CHARACTER ENCODING:
+
+The Turtle language uses UTF-8 encoding. The following tests include
+non-ascii characters:
+ localName_with_assigned_nfc_bmp_PN_CHARS_BASE_character_boundaries
+ localName_with_assigned_nfc_PN_CHARS_BASE_character_boundaries *
+ localName_with_nfc_PN_CHARS_BASE_character_boundaries *
+ labeled_blank_node_with_PN_CHARS_BASE_character_boundaries *
+ LITERAL1_with_UTF8_boundaries *
+ LITERAL_LONG1_with_UTF8_boundaries *
+ LITERAL2_with_UTF8_boundaries *
+ LITERAL_LONG2_with_UTF8_boundaries *
+
+Those marked with a * include characters with codepoints greater than
+U+FFFD and are thus expressed as a pair of surrogate characters when
+represented in UCS2.
+
+
+See http://www.w3.org/2011/rdf-wg/wiki/Turtle_Test_Suite for more details.
+
+
+Eric Prud'hommeaux <eric+turtle@w3.org> - 11 June 2013.
diff --git a/tests/TurtleTests/SPARQL_style_base.ttl b/tests/TurtleTests/SPARQL_style_base.ttl
new file mode 100644
index 00000000..d134ea81
--- /dev/null
+++ b/tests/TurtleTests/SPARQL_style_base.ttl
@@ -0,0 +1,2 @@
+BASE <http://a.example/>
+<s> <http://a.example/p> <http://a.example/o> .
diff --git a/tests/TurtleTests/SPARQL_style_prefix.ttl b/tests/TurtleTests/SPARQL_style_prefix.ttl
new file mode 100644
index 00000000..e7e4a3da
--- /dev/null
+++ b/tests/TurtleTests/SPARQL_style_prefix.ttl
@@ -0,0 +1,2 @@
+PREFIX p: <http://a.example/>
+p:s <http://a.example/p> <http://a.example/o> .
diff --git a/tests/tests-ttl/anonymous_blank_node_object.nt b/tests/TurtleTests/anonymous_blank_node_object.nt
index 89e88f63..89e88f63 100644
--- a/tests/tests-ttl/anonymous_blank_node_object.nt
+++ b/tests/TurtleTests/anonymous_blank_node_object.nt
diff --git a/tests/tests-ttl/anonymous_blank_node_object.ttl b/tests/TurtleTests/anonymous_blank_node_object.ttl
index 0b2ce436..0b2ce436 100644
--- a/tests/tests-ttl/anonymous_blank_node_object.ttl
+++ b/tests/TurtleTests/anonymous_blank_node_object.ttl
diff --git a/tests/tests-ttl/anonymous_blank_node_subject.nt b/tests/TurtleTests/anonymous_blank_node_subject.nt
index b48df9a7..b48df9a7 100644
--- a/tests/tests-ttl/anonymous_blank_node_subject.nt
+++ b/tests/TurtleTests/anonymous_blank_node_subject.nt
diff --git a/tests/tests-ttl/anonymous_blank_node_subject.ttl b/tests/TurtleTests/anonymous_blank_node_subject.ttl
index 17b378c2..17b378c2 100644
--- a/tests/tests-ttl/anonymous_blank_node_subject.ttl
+++ b/tests/TurtleTests/anonymous_blank_node_subject.ttl
diff --git a/tests/tests-ttl/bareword_a_predicate.nt b/tests/TurtleTests/bareword_a_predicate.nt
index afe14252..afe14252 100644
--- a/tests/tests-ttl/bareword_a_predicate.nt
+++ b/tests/TurtleTests/bareword_a_predicate.nt
diff --git a/tests/tests-ttl/bareword_a_predicate.ttl b/tests/TurtleTests/bareword_a_predicate.ttl
index 66fa0d0c..66fa0d0c 100644
--- a/tests/tests-ttl/bareword_a_predicate.ttl
+++ b/tests/TurtleTests/bareword_a_predicate.ttl
diff --git a/tests/tests-ttl/bareword_decimal.nt b/tests/TurtleTests/bareword_decimal.nt
index e177a9c6..e177a9c6 100644
--- a/tests/tests-ttl/bareword_decimal.nt
+++ b/tests/TurtleTests/bareword_decimal.nt
diff --git a/tests/tests-ttl/bareword_decimal.ttl b/tests/TurtleTests/bareword_decimal.ttl
index 20955d51..20955d51 100644
--- a/tests/tests-ttl/bareword_decimal.ttl
+++ b/tests/TurtleTests/bareword_decimal.ttl
diff --git a/tests/tests-ttl/bareword_double.nt b/tests/TurtleTests/bareword_double.nt
index dd8be2fd..dd8be2fd 100644
--- a/tests/tests-ttl/bareword_double.nt
+++ b/tests/TurtleTests/bareword_double.nt
diff --git a/tests/tests-ttl/bareword_double.ttl b/tests/TurtleTests/bareword_double.ttl
index 7ce25b11..7ce25b11 100644
--- a/tests/tests-ttl/bareword_double.ttl
+++ b/tests/TurtleTests/bareword_double.ttl
diff --git a/tests/tests-ttl/bareword_integer.ttl b/tests/TurtleTests/bareword_integer.ttl
index 087e71b6..087e71b6 100644
--- a/tests/tests-ttl/bareword_integer.ttl
+++ b/tests/TurtleTests/bareword_integer.ttl
diff --git a/tests/tests-ttl/blankNodePropertyList_as_object.nt b/tests/TurtleTests/blankNodePropertyList_as_object.nt
index 528bd844..528bd844 100644
--- a/tests/tests-ttl/blankNodePropertyList_as_object.nt
+++ b/tests/TurtleTests/blankNodePropertyList_as_object.nt
diff --git a/tests/tests-ttl/blankNodePropertyList_as_object.ttl b/tests/TurtleTests/blankNodePropertyList_as_object.ttl
index aa85a746..aa85a746 100644
--- a/tests/tests-ttl/blankNodePropertyList_as_object.ttl
+++ b/tests/TurtleTests/blankNodePropertyList_as_object.ttl
diff --git a/tests/tests-ttl/blankNodePropertyList_as_subject.nt b/tests/TurtleTests/blankNodePropertyList_as_subject.nt
index f0768879..f0768879 100644
--- a/tests/tests-ttl/blankNodePropertyList_as_subject.nt
+++ b/tests/TurtleTests/blankNodePropertyList_as_subject.nt
diff --git a/tests/tests-ttl/blankNodePropertyList_as_subject.ttl b/tests/TurtleTests/blankNodePropertyList_as_subject.ttl
index cb2e52aa..cb2e52aa 100644
--- a/tests/tests-ttl/blankNodePropertyList_as_subject.ttl
+++ b/tests/TurtleTests/blankNodePropertyList_as_subject.ttl
diff --git a/tests/tests-ttl/blankNodePropertyList_containing_collection.nt b/tests/TurtleTests/blankNodePropertyList_containing_collection.nt
index e590826b..e590826b 100644
--- a/tests/tests-ttl/blankNodePropertyList_containing_collection.nt
+++ b/tests/TurtleTests/blankNodePropertyList_containing_collection.nt
diff --git a/tests/tests-ttl/blankNodePropertyList_containing_collection.ttl b/tests/TurtleTests/blankNodePropertyList_containing_collection.ttl
index bf164c83..bf164c83 100644
--- a/tests/tests-ttl/blankNodePropertyList_containing_collection.ttl
+++ b/tests/TurtleTests/blankNodePropertyList_containing_collection.ttl
diff --git a/tests/tests-ttl/blankNodePropertyList_with_multiple_triples.nt b/tests/TurtleTests/blankNodePropertyList_with_multiple_triples.nt
index 8f3fc507..8f3fc507 100644
--- a/tests/tests-ttl/blankNodePropertyList_with_multiple_triples.nt
+++ b/tests/TurtleTests/blankNodePropertyList_with_multiple_triples.nt
diff --git a/tests/tests-ttl/blankNodePropertyList_with_multiple_triples.ttl b/tests/TurtleTests/blankNodePropertyList_with_multiple_triples.ttl
index 6153c13d..6153c13d 100644
--- a/tests/tests-ttl/blankNodePropertyList_with_multiple_triples.ttl
+++ b/tests/TurtleTests/blankNodePropertyList_with_multiple_triples.ttl
diff --git a/tests/tests-ttl/collection_object.nt b/tests/TurtleTests/collection_object.nt
index 391162e0..391162e0 100644
--- a/tests/tests-ttl/collection_object.nt
+++ b/tests/TurtleTests/collection_object.nt
diff --git a/tests/tests-ttl/collection_object.ttl b/tests/TurtleTests/collection_object.ttl
index 6af34715..6af34715 100644
--- a/tests/tests-ttl/collection_object.ttl
+++ b/tests/TurtleTests/collection_object.ttl
diff --git a/tests/tests-ttl/collection_subject.nt b/tests/TurtleTests/collection_subject.nt
index 502768c8..502768c8 100644
--- a/tests/tests-ttl/collection_subject.nt
+++ b/tests/TurtleTests/collection_subject.nt
diff --git a/tests/tests-ttl/collection_subject.ttl b/tests/TurtleTests/collection_subject.ttl
index 00a4c0bc..00a4c0bc 100644
--- a/tests/tests-ttl/collection_subject.ttl
+++ b/tests/TurtleTests/collection_subject.ttl
diff --git a/tests/TurtleTests/comment_following_PNAME_NS.nt b/tests/TurtleTests/comment_following_PNAME_NS.nt
new file mode 100644
index 00000000..a8ca81c5
--- /dev/null
+++ b/tests/TurtleTests/comment_following_PNAME_NS.nt
@@ -0,0 +1 @@
+<http://a.example/s> <http://a.example/p> <http://a.example/> .
diff --git a/tests/TurtleTests/comment_following_PNAME_NS.ttl b/tests/TurtleTests/comment_following_PNAME_NS.ttl
new file mode 100644
index 00000000..c03124c4
--- /dev/null
+++ b/tests/TurtleTests/comment_following_PNAME_NS.ttl
@@ -0,0 +1,3 @@
+@prefix p: <http://a.example/> .
+<http://a.example/s> <http://a.example/p> p:#comment
+.
diff --git a/tests/TurtleTests/comment_following_localName.ttl b/tests/TurtleTests/comment_following_localName.ttl
new file mode 100644
index 00000000..919f876b
--- /dev/null
+++ b/tests/TurtleTests/comment_following_localName.ttl
@@ -0,0 +1,3 @@
+@prefix p: <http://a.example/> .
+<http://a.example/s> <http://a.example/p> p:o#comment
+.
diff --git a/tests/tests-ttl/default_namespace_IRI.ttl b/tests/TurtleTests/default_namespace_IRI.ttl
index f1f83fd5..f1f83fd5 100644
--- a/tests/tests-ttl/default_namespace_IRI.ttl
+++ b/tests/TurtleTests/default_namespace_IRI.ttl
diff --git a/tests/tests-ttl/double_lower_case_e.nt b/tests/TurtleTests/double_lower_case_e.nt
index 49a792b9..49a792b9 100644
--- a/tests/tests-ttl/double_lower_case_e.nt
+++ b/tests/TurtleTests/double_lower_case_e.nt
diff --git a/tests/tests-ttl/double_lower_case_e.ttl b/tests/TurtleTests/double_lower_case_e.ttl
index 5f4552bf..5f4552bf 100644
--- a/tests/tests-ttl/double_lower_case_e.ttl
+++ b/tests/TurtleTests/double_lower_case_e.ttl
diff --git a/tests/tests-ttl/empty_collection.nt b/tests/TurtleTests/empty_collection.nt
index 82726a3f..82726a3f 100644
--- a/tests/tests-ttl/empty_collection.nt
+++ b/tests/TurtleTests/empty_collection.nt
diff --git a/tests/tests-ttl/empty_collection.ttl b/tests/TurtleTests/empty_collection.ttl
index 02f9cc07..02f9cc07 100644
--- a/tests/tests-ttl/empty_collection.ttl
+++ b/tests/TurtleTests/empty_collection.ttl
diff --git a/tests/tests-ttl/first.nt b/tests/TurtleTests/first.nt
index d50539f6..d50539f6 100644
--- a/tests/tests-ttl/first.nt
+++ b/tests/TurtleTests/first.nt
diff --git a/tests/tests-ttl/first.ttl b/tests/TurtleTests/first.ttl
index 44f496cb..44f496cb 100644
--- a/tests/tests-ttl/first.ttl
+++ b/tests/TurtleTests/first.ttl
diff --git a/tests/tests-ttl/labeled_blank_node_object.nt b/tests/TurtleTests/labeled_blank_node_object.nt
index 2645d4ee..2645d4ee 100644
--- a/tests/tests-ttl/labeled_blank_node_object.nt
+++ b/tests/TurtleTests/labeled_blank_node_object.nt
diff --git a/tests/tests-ttl/labeled_blank_node_object.ttl b/tests/TurtleTests/labeled_blank_node_object.ttl
index 2645d4ee..2645d4ee 100644
--- a/tests/tests-ttl/labeled_blank_node_object.ttl
+++ b/tests/TurtleTests/labeled_blank_node_object.ttl
diff --git a/tests/tests-ttl/labeled_blank_node_subject.nt b/tests/TurtleTests/labeled_blank_node_subject.nt
index d0c7f458..d0c7f458 100644
--- a/tests/tests-ttl/labeled_blank_node_subject.nt
+++ b/tests/TurtleTests/labeled_blank_node_subject.nt
diff --git a/tests/tests-ttl/labeled_blank_node_subject.ttl b/tests/TurtleTests/labeled_blank_node_subject.ttl
index d0c7f458..d0c7f458 100644
--- a/tests/tests-ttl/labeled_blank_node_subject.ttl
+++ b/tests/TurtleTests/labeled_blank_node_subject.ttl
diff --git a/tests/TurtleTests/labeled_blank_node_with_PN_CHARS_BASE_character_boundaries.nt b/tests/TurtleTests/labeled_blank_node_with_PN_CHARS_BASE_character_boundaries.nt
new file mode 100644
index 00000000..50be8d6f
--- /dev/null
+++ b/tests/TurtleTests/labeled_blank_node_with_PN_CHARS_BASE_character_boundaries.nt
@@ -0,0 +1 @@
+<http://a.example/s> <http://a.example/p> _:AZazÀÖØöø˿ͰͽͿ῿‌‍⁰↏Ⰰ⿯、퟿豈﷏ﷰ�𐀀󯿽 .
diff --git a/tests/TurtleTests/labeled_blank_node_with_PN_CHARS_BASE_character_boundaries.ttl b/tests/TurtleTests/labeled_blank_node_with_PN_CHARS_BASE_character_boundaries.ttl
new file mode 100644
index 00000000..50be8d6f
--- /dev/null
+++ b/tests/TurtleTests/labeled_blank_node_with_PN_CHARS_BASE_character_boundaries.ttl
@@ -0,0 +1 @@
+<http://a.example/s> <http://a.example/p> _:AZazÀÖØöø˿ͰͽͿ῿‌‍⁰↏Ⰰ⿯、퟿豈﷏ﷰ�𐀀󯿽 .
diff --git a/tests/tests-ttl/labeled_blank_node_with_leading_digit.nt b/tests/TurtleTests/labeled_blank_node_with_leading_digit.nt
index 7244d806..7244d806 100644
--- a/tests/tests-ttl/labeled_blank_node_with_leading_digit.nt
+++ b/tests/TurtleTests/labeled_blank_node_with_leading_digit.nt
diff --git a/tests/tests-ttl/labeled_blank_node_with_leading_digit.ttl b/tests/TurtleTests/labeled_blank_node_with_leading_digit.ttl
index 7244d806..7244d806 100644
--- a/tests/tests-ttl/labeled_blank_node_with_leading_digit.ttl
+++ b/tests/TurtleTests/labeled_blank_node_with_leading_digit.ttl
diff --git a/tests/tests-ttl/labeled_blank_node_with_leading_underscore.nt b/tests/TurtleTests/labeled_blank_node_with_leading_underscore.nt
index 15d9ffc8..15d9ffc8 100644
--- a/tests/tests-ttl/labeled_blank_node_with_leading_underscore.nt
+++ b/tests/TurtleTests/labeled_blank_node_with_leading_underscore.nt
diff --git a/tests/tests-ttl/labeled_blank_node_with_leading_underscore.ttl b/tests/TurtleTests/labeled_blank_node_with_leading_underscore.ttl
index 15d9ffc8..15d9ffc8 100644
--- a/tests/tests-ttl/labeled_blank_node_with_leading_underscore.ttl
+++ b/tests/TurtleTests/labeled_blank_node_with_leading_underscore.ttl
diff --git a/tests/tests-ttl/labeled_blank_node_with_non_leading_extras.ttl b/tests/TurtleTests/labeled_blank_node_with_non_leading_extras.nt
index 5ae09b7c..5ae09b7c 100644
--- a/tests/tests-ttl/labeled_blank_node_with_non_leading_extras.ttl
+++ b/tests/TurtleTests/labeled_blank_node_with_non_leading_extras.nt
diff --git a/tests/TurtleTests/labeled_blank_node_with_non_leading_extras.ttl b/tests/TurtleTests/labeled_blank_node_with_non_leading_extras.ttl
new file mode 100644
index 00000000..5ae09b7c
--- /dev/null
+++ b/tests/TurtleTests/labeled_blank_node_with_non_leading_extras.ttl
@@ -0,0 +1 @@
+<http://a.example/s> <http://a.example/p> _:a·̀ͯ‿.⁀ .
diff --git a/tests/tests-ttl/langtagged_LONG.ttl b/tests/TurtleTests/langtagged_LONG.ttl
index 2baefe5d..2baefe5d 100644
--- a/tests/tests-ttl/langtagged_LONG.ttl
+++ b/tests/TurtleTests/langtagged_LONG.ttl
diff --git a/tests/tests-ttl/langtagged_LONG_with_subtag.nt b/tests/TurtleTests/langtagged_LONG_with_subtag.nt
index 629cbf42..629cbf42 100644
--- a/tests/tests-ttl/langtagged_LONG_with_subtag.nt
+++ b/tests/TurtleTests/langtagged_LONG_with_subtag.nt
diff --git a/tests/tests-ttl/langtagged_LONG_with_subtag.ttl b/tests/TurtleTests/langtagged_LONG_with_subtag.ttl
index 7fd527c4..7fd527c4 100644
--- a/tests/tests-ttl/langtagged_LONG_with_subtag.ttl
+++ b/tests/TurtleTests/langtagged_LONG_with_subtag.ttl
diff --git a/tests/tests-ttl/langtagged_non_LONG.nt b/tests/TurtleTests/langtagged_non_LONG.nt
index 1bddb04e..1bddb04e 100644
--- a/tests/tests-ttl/langtagged_non_LONG.nt
+++ b/tests/TurtleTests/langtagged_non_LONG.nt
diff --git a/tests/tests-ttl/langtagged_non_LONG.ttl b/tests/TurtleTests/langtagged_non_LONG.ttl
index 1bddb04e..1bddb04e 100644
--- a/tests/tests-ttl/langtagged_non_LONG.ttl
+++ b/tests/TurtleTests/langtagged_non_LONG.ttl
diff --git a/tests/tests-ttl/lantag_with_subtag.nt b/tests/TurtleTests/lantag_with_subtag.nt
index 46c9d53a..46c9d53a 100644
--- a/tests/tests-ttl/lantag_with_subtag.nt
+++ b/tests/TurtleTests/lantag_with_subtag.nt
diff --git a/tests/tests-ttl/lantag_with_subtag.ttl b/tests/TurtleTests/lantag_with_subtag.ttl
index 46c9d53a..46c9d53a 100644
--- a/tests/tests-ttl/lantag_with_subtag.ttl
+++ b/tests/TurtleTests/lantag_with_subtag.ttl
diff --git a/tests/tests-ttl/last.nt b/tests/TurtleTests/last.nt
index 27c21b3d..27c21b3d 100644
--- a/tests/tests-ttl/last.nt
+++ b/tests/TurtleTests/last.nt
diff --git a/tests/tests-ttl/last.ttl b/tests/TurtleTests/last.ttl
index 1254c261..1254c261 100644
--- a/tests/tests-ttl/last.ttl
+++ b/tests/TurtleTests/last.ttl
diff --git a/tests/tests-ttl/literal_false.nt b/tests/TurtleTests/literal_false.nt
index 5bbbae84..5bbbae84 100644
--- a/tests/tests-ttl/literal_false.nt
+++ b/tests/TurtleTests/literal_false.nt
diff --git a/tests/tests-ttl/literal_false.ttl b/tests/TurtleTests/literal_false.ttl
index 6a32e362..6a32e362 100644
--- a/tests/tests-ttl/literal_false.ttl
+++ b/tests/TurtleTests/literal_false.ttl
diff --git a/tests/tests-ttl/literal_true.nt b/tests/TurtleTests/literal_true.nt
index 054b229f..054b229f 100644
--- a/tests/tests-ttl/literal_true.nt
+++ b/tests/TurtleTests/literal_true.nt
diff --git a/tests/tests-ttl/literal_true.ttl b/tests/TurtleTests/literal_true.ttl
index 6c5bb742..6c5bb742 100644
--- a/tests/tests-ttl/literal_true.ttl
+++ b/tests/TurtleTests/literal_true.ttl
diff --git a/tests/tests-ttl/literal_with_BACKSPACE.nt b/tests/TurtleTests/literal_with_BACKSPACE.nt
index 7dba113b..7dba113b 100644
--- a/tests/tests-ttl/literal_with_BACKSPACE.nt
+++ b/tests/TurtleTests/literal_with_BACKSPACE.nt
diff --git a/tests/tests-ttl/literal_with_BACKSPACE.ttl b/tests/TurtleTests/literal_with_BACKSPACE.ttl
index 17b2880f..17b2880f 100644
--- a/tests/tests-ttl/literal_with_BACKSPACE.ttl
+++ b/tests/TurtleTests/literal_with_BACKSPACE.ttl
diff --git a/tests/tests-ttl/literal_with_CARRIAGE_RETURN.nt b/tests/TurtleTests/literal_with_CARRIAGE_RETURN.nt
index 91b85c89..91b85c89 100644
--- a/tests/tests-ttl/literal_with_CARRIAGE_RETURN.nt
+++ b/tests/TurtleTests/literal_with_CARRIAGE_RETURN.nt
diff --git a/tests/tests-ttl/literal_with_CARRIAGE_RETURN.ttl b/tests/TurtleTests/literal_with_CARRIAGE_RETURN.ttl
index 3cd1d89c..3cd1d89c 100644
--- a/tests/tests-ttl/literal_with_CARRIAGE_RETURN.ttl
+++ b/tests/TurtleTests/literal_with_CARRIAGE_RETURN.ttl
diff --git a/tests/tests-ttl/literal_with_CHARACTER_TABULATION.nt b/tests/TurtleTests/literal_with_CHARACTER_TABULATION.nt
index a6a9d9f0..a6a9d9f0 100644
--- a/tests/tests-ttl/literal_with_CHARACTER_TABULATION.nt
+++ b/tests/TurtleTests/literal_with_CHARACTER_TABULATION.nt
diff --git a/tests/tests-ttl/literal_with_CHARACTER_TABULATION.ttl b/tests/TurtleTests/literal_with_CHARACTER_TABULATION.ttl
index 37fbd9d1..37fbd9d1 100644
--- a/tests/tests-ttl/literal_with_CHARACTER_TABULATION.ttl
+++ b/tests/TurtleTests/literal_with_CHARACTER_TABULATION.ttl
diff --git a/tests/tests-ttl/literal_with_FORM_FEED.nt b/tests/TurtleTests/literal_with_FORM_FEED.nt
index 2a4490b3..2a4490b3 100644
--- a/tests/tests-ttl/literal_with_FORM_FEED.nt
+++ b/tests/TurtleTests/literal_with_FORM_FEED.nt
diff --git a/tests/tests-ttl/literal_with_FORM_FEED.ttl b/tests/TurtleTests/literal_with_FORM_FEED.ttl
index 76d6ee77..76d6ee77 100644
--- a/tests/tests-ttl/literal_with_FORM_FEED.ttl
+++ b/tests/TurtleTests/literal_with_FORM_FEED.ttl
diff --git a/tests/tests-ttl/literal_with_LINE_FEED.nt b/tests/TurtleTests/literal_with_LINE_FEED.nt
index 462f97ac..462f97ac 100644
--- a/tests/tests-ttl/literal_with_LINE_FEED.nt
+++ b/tests/TurtleTests/literal_with_LINE_FEED.nt
diff --git a/tests/tests-ttl/literal_with_LINE_FEED.ttl b/tests/TurtleTests/literal_with_LINE_FEED.ttl
index 50cc8a8b..50cc8a8b 100644
--- a/tests/tests-ttl/literal_with_LINE_FEED.ttl
+++ b/tests/TurtleTests/literal_with_LINE_FEED.ttl
diff --git a/tests/tests-ttl/literal_with_REVERSE_SOLIDUS.nt b/tests/TurtleTests/literal_with_REVERSE_SOLIDUS.nt
index ebc846ed..ebc846ed 100644
--- a/tests/tests-ttl/literal_with_REVERSE_SOLIDUS.nt
+++ b/tests/TurtleTests/literal_with_REVERSE_SOLIDUS.nt
diff --git a/tests/tests-ttl/literal_with_REVERSE_SOLIDUS.ttl b/tests/TurtleTests/literal_with_REVERSE_SOLIDUS.ttl
index 380a3d04..380a3d04 100644
--- a/tests/tests-ttl/literal_with_REVERSE_SOLIDUS.ttl
+++ b/tests/TurtleTests/literal_with_REVERSE_SOLIDUS.ttl
diff --git a/tests/tests-ttl/literal_with_escaped_BACKSPACE.ttl b/tests/TurtleTests/literal_with_escaped_BACKSPACE.ttl
index 5284b9b6..5284b9b6 100644
--- a/tests/tests-ttl/literal_with_escaped_BACKSPACE.ttl
+++ b/tests/TurtleTests/literal_with_escaped_BACKSPACE.ttl
diff --git a/tests/tests-ttl/literal_with_escaped_CARRIAGE_RETURN.ttl b/tests/TurtleTests/literal_with_escaped_CARRIAGE_RETURN.ttl
index a28e7c0b..a28e7c0b 100644
--- a/tests/tests-ttl/literal_with_escaped_CARRIAGE_RETURN.ttl
+++ b/tests/TurtleTests/literal_with_escaped_CARRIAGE_RETURN.ttl
diff --git a/tests/tests-ttl/literal_with_escaped_CHARACTER_TABULATION.ttl b/tests/TurtleTests/literal_with_escaped_CHARACTER_TABULATION.ttl
index 67966f78..67966f78 100644
--- a/tests/tests-ttl/literal_with_escaped_CHARACTER_TABULATION.ttl
+++ b/tests/TurtleTests/literal_with_escaped_CHARACTER_TABULATION.ttl
diff --git a/tests/tests-ttl/literal_with_escaped_FORM_FEED.ttl b/tests/TurtleTests/literal_with_escaped_FORM_FEED.ttl
index 21acace9..21acace9 100644
--- a/tests/tests-ttl/literal_with_escaped_FORM_FEED.ttl
+++ b/tests/TurtleTests/literal_with_escaped_FORM_FEED.ttl
diff --git a/tests/tests-ttl/literal_with_escaped_LINE_FEED.ttl b/tests/TurtleTests/literal_with_escaped_LINE_FEED.ttl
index b53f49ec..b53f49ec 100644
--- a/tests/tests-ttl/literal_with_escaped_LINE_FEED.ttl
+++ b/tests/TurtleTests/literal_with_escaped_LINE_FEED.ttl
diff --git a/tests/tests-ttl/literal_with_numeric_escape4.nt b/tests/TurtleTests/literal_with_numeric_escape4.nt
index 0b35a89a..0b35a89a 100644
--- a/tests/tests-ttl/literal_with_numeric_escape4.nt
+++ b/tests/TurtleTests/literal_with_numeric_escape4.nt
diff --git a/tests/tests-ttl/literal_with_numeric_escape4.ttl b/tests/TurtleTests/literal_with_numeric_escape4.ttl
index 2b4e0175..2b4e0175 100644
--- a/tests/tests-ttl/literal_with_numeric_escape4.ttl
+++ b/tests/TurtleTests/literal_with_numeric_escape4.ttl
diff --git a/tests/tests-ttl/literal_with_numeric_escape8.ttl b/tests/TurtleTests/literal_with_numeric_escape8.ttl
index 8d0e4ef2..8d0e4ef2 100644
--- a/tests/tests-ttl/literal_with_numeric_escape8.ttl
+++ b/tests/TurtleTests/literal_with_numeric_escape8.ttl
diff --git a/tests/TurtleTests/localName_with_assigned_nfc_PN_CHARS_BASE_character_boundaries.nt b/tests/TurtleTests/localName_with_assigned_nfc_PN_CHARS_BASE_character_boundaries.nt
new file mode 100644
index 00000000..4b60c9e1
--- /dev/null
+++ b/tests/TurtleTests/localName_with_assigned_nfc_PN_CHARS_BASE_character_boundaries.nt
@@ -0,0 +1 @@
+<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> .
diff --git a/tests/TurtleTests/localName_with_assigned_nfc_PN_CHARS_BASE_character_boundaries.ttl b/tests/TurtleTests/localName_with_assigned_nfc_PN_CHARS_BASE_character_boundaries.ttl
new file mode 100644
index 00000000..c532e3d0
--- /dev/null
+++ b/tests/TurtleTests/localName_with_assigned_nfc_PN_CHARS_BASE_character_boundaries.ttl
@@ -0,0 +1,2 @@
+@prefix p: <http://a.example/> .
+<http://a.example/s> <http://a.example/p> p:AZazÀÖØöø˿Ͱͽ΄῾‌‍⁰↉Ⰰ⿕、ퟻ﨎ﷇﷰ￯𐀀󠇯 .
diff --git a/tests/TurtleTests/localName_with_assigned_nfc_bmp_PN_CHARS_BASE_character_boundaries.nt b/tests/TurtleTests/localName_with_assigned_nfc_bmp_PN_CHARS_BASE_character_boundaries.nt
new file mode 100644
index 00000000..78ef1086
--- /dev/null
+++ b/tests/TurtleTests/localName_with_assigned_nfc_bmp_PN_CHARS_BASE_character_boundaries.nt
@@ -0,0 +1 @@
+<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> .
diff --git a/tests/TurtleTests/localName_with_assigned_nfc_bmp_PN_CHARS_BASE_character_boundaries.ttl b/tests/TurtleTests/localName_with_assigned_nfc_bmp_PN_CHARS_BASE_character_boundaries.ttl
new file mode 100644
index 00000000..15b23dd8
--- /dev/null
+++ b/tests/TurtleTests/localName_with_assigned_nfc_bmp_PN_CHARS_BASE_character_boundaries.ttl
@@ -0,0 +1,2 @@
+@prefix p: <http://a.example/> .
+<http://a.example/s> <http://a.example/p> p:AZazÀÖØöø˿Ͱͽ΄῾‌‍⁰↉Ⰰ⿕、ퟻ﨎ﷇﷰ￯ .
diff --git a/tests/tests-ttl/localName_with_leading_digit.nt b/tests/TurtleTests/localName_with_leading_digit.nt
index a9e101e5..a9e101e5 100644
--- a/tests/tests-ttl/localName_with_leading_digit.nt
+++ b/tests/TurtleTests/localName_with_leading_digit.nt
diff --git a/tests/tests-ttl/localName_with_leading_digit.ttl b/tests/TurtleTests/localName_with_leading_digit.ttl
index 65da2499..65da2499 100644
--- a/tests/tests-ttl/localName_with_leading_digit.ttl
+++ b/tests/TurtleTests/localName_with_leading_digit.ttl
diff --git a/tests/tests-ttl/localName_with_leading_underscore.nt b/tests/TurtleTests/localName_with_leading_underscore.nt
index e042a7b9..e042a7b9 100644
--- a/tests/tests-ttl/localName_with_leading_underscore.nt
+++ b/tests/TurtleTests/localName_with_leading_underscore.nt
diff --git a/tests/tests-ttl/localName_with_leading_underscore.ttl b/tests/TurtleTests/localName_with_leading_underscore.ttl
index 762ace98..762ace98 100644
--- a/tests/tests-ttl/localName_with_leading_underscore.ttl
+++ b/tests/TurtleTests/localName_with_leading_underscore.ttl
diff --git a/tests/TurtleTests/localName_with_nfc_PN_CHARS_BASE_character_boundaries.nt b/tests/TurtleTests/localName_with_nfc_PN_CHARS_BASE_character_boundaries.nt
new file mode 100644
index 00000000..5b346919
--- /dev/null
+++ b/tests/TurtleTests/localName_with_nfc_PN_CHARS_BASE_character_boundaries.nt
@@ -0,0 +1 @@
+<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> .
diff --git a/tests/TurtleTests/localName_with_nfc_PN_CHARS_BASE_character_boundaries.ttl b/tests/TurtleTests/localName_with_nfc_PN_CHARS_BASE_character_boundaries.ttl
new file mode 100644
index 00000000..0922d95d
--- /dev/null
+++ b/tests/TurtleTests/localName_with_nfc_PN_CHARS_BASE_character_boundaries.ttl
@@ -0,0 +1,2 @@
+@prefix p: <http://a.example/> .
+<http://a.example/s> <http://a.example/p> p:AZazÀÖØöø˿ͰͽͿ῿‌‍⁰↏Ⰰ⿯、퟿﨎﷏ﷰ￯𐀀󯿽 .
diff --git a/tests/TurtleTests/localName_with_non_leading_extras.nt b/tests/TurtleTests/localName_with_non_leading_extras.nt
new file mode 100644
index 00000000..749b98cd
--- /dev/null
+++ b/tests/TurtleTests/localName_with_non_leading_extras.nt
@@ -0,0 +1 @@
+<http://a.example/a\u00B7\u0300\u036F\u203F.\u2040> <http://a.example/p> <http://a.example/o> .
diff --git a/tests/TurtleTests/localName_with_non_leading_extras.ttl b/tests/TurtleTests/localName_with_non_leading_extras.ttl
new file mode 100644
index 00000000..db25a8a6
--- /dev/null
+++ b/tests/TurtleTests/localName_with_non_leading_extras.ttl
@@ -0,0 +1,2 @@
+@prefix p: <http://a.example/>.
+p:a·̀ͯ‿.⁀ <http://a.example/p> <http://a.example/o> .
diff --git a/tests/tests-ttl/localname_with_COLON.nt b/tests/TurtleTests/localname_with_COLON.nt
index eb966ca3..eb966ca3 100644
--- a/tests/tests-ttl/localname_with_COLON.nt
+++ b/tests/TurtleTests/localname_with_COLON.nt
diff --git a/tests/tests-ttl/localname_with_COLON.ttl b/tests/TurtleTests/localname_with_COLON.ttl
index 1d45f20f..1d45f20f 100644
--- a/tests/tests-ttl/localname_with_COLON.ttl
+++ b/tests/TurtleTests/localname_with_COLON.ttl
diff --git a/tests/tests-ttl/manifest.ttl b/tests/TurtleTests/manifest.ttl
index e686a17f..5bbaeb6c 100644
--- a/tests/tests-ttl/manifest.ttl
+++ b/tests/TurtleTests/manifest.ttl
@@ -1,17 +1,10 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
+## Distributed under both the W3C Test Suite License[1] and the W3C 3-
+## clause BSD License[2]. To contribute to a W3C Test Suite, see the
+## policies and contribution forms [3]
+##
+## 1. http://www.w3.org/Consortium/Legal/2008/04-testsuite-license
+## 2. http://www.w3.org/Consortium/Legal/2008/03-bsd-license
+## 3. http://www.w3.org/2004/10/27-testcases
# Test named *subm* are (c) W3C and taken from the Turtle submission.
@@ -34,29 +27,30 @@
<#IRI_with_all_punctuation>
<#bareword_a_predicate>
<#old_style_prefix>
+ # <#SPARQL_style_prefix>
<#prefixed_IRI_predicate>
<#prefixed_IRI_object>
<#prefix_only_IRI>
- # <#prefix_with_PN_CHARS_BASE_character_boundaries>
- # <#prefix_with_non_leading_extras>
+ <#prefix_with_PN_CHARS_BASE_character_boundaries>
+ <#prefix_with_non_leading_extras>
<#default_namespace_IRI>
<#prefix_reassigned_and_used>
- # <#reserved_escaped_localName>
+ <#reserved_escaped_localName>
<#percent_escaped_localName>
<#HYPHEN_MINUS_in_localName>
<#underscore_in_localName>
<#localname_with_COLON>
- # <#localName_with_assigned_nfc_bmp_PN_CHARS_BASE_character_boundaries>
- # <#localName_with_assigned_nfc_PN_CHARS_BASE_character_boundaries>
- # <#localName_with_nfc_PN_CHARS_BASE_character_boundaries>
- # <#localName_with_PN_CHARS_BASE_character_boundaries>
+ <#localName_with_assigned_nfc_bmp_PN_CHARS_BASE_character_boundaries>
+ <#localName_with_assigned_nfc_PN_CHARS_BASE_character_boundaries>
+ <#localName_with_nfc_PN_CHARS_BASE_character_boundaries>
<#localName_with_leading_underscore>
<#localName_with_leading_digit>
- # <#localName_with_non_leading_extras>
+ <#localName_with_non_leading_extras>
<#old_style_base>
+ # <#SPARQL_style_base>
<#labeled_blank_node_subject>
<#labeled_blank_node_object>
- # <#labeled_blank_node_with_PN_CHARS_BASE_character_boundaries>
+ <#labeled_blank_node_with_PN_CHARS_BASE_character_boundaries>
<#labeled_blank_node_with_leading_underscore>
<#labeled_blank_node_with_leading_digit>
<#labeled_blank_node_with_non_leading_extras>
@@ -124,6 +118,20 @@
<#repeated_semis_at_end>
<#repeated_semis_not_at_end>
+ # tests requested by Jeremy Carroll
+ # http://www.w3.org/2011/rdf-wg/wiki/Turtle_Candidate_Recommendation_Comments#c35
+ <#comment_following_localName>
+ <#number_sign_following_localName>
+ <#comment_following_PNAME_NS>
+ <#number_sign_following_PNAME_NS>
+
+ # tests from Dave Beckett
+ # http://www.w3.org/2011/rdf-wg/wiki/Turtle_Candidate_Recommendation_Comments#c28
+ <#LITERAL_LONG2_with_REVERSE_SOLIDUS>
+ <#turtle-syntax-bad-LITERAL2_with_langtag_and_datatype>
+ <#two_LITERAL_LONG2s>
+ <#langtagged_LONG_with_subtag>
+
# original tests-ttl
<#turtle-syntax-file-01>
<#turtle-syntax-file-02>
@@ -133,8 +141,12 @@
<#turtle-syntax-uri-03>
<#turtle-syntax-uri-04>
<#turtle-syntax-base-01>
+ # <#turtle-syntax-base-02>
<#turtle-syntax-base-03>
+ # <#turtle-syntax-base-04>
<#turtle-syntax-prefix-01>
+ # <#turtle-syntax-prefix-02>
+ # <#turtle-syntax-prefix-03>
<#turtle-syntax-prefix-04>
<#turtle-syntax-prefix-05>
<#turtle-syntax-prefix-06>
@@ -296,13 +308,6 @@
<#turtle-eval-bad-03>
<#turtle-eval-bad-04>
- # tests from Dave Beckett
- # http://www.w3.org/2011/rdf-wg/wiki/Turtle_Candidate_Recommendation_Comments#c28
- <#LITERAL_LONG2_with_REVERSE_SOLIDUS>
- <#turtle-syntax-bad-LITERAL2_with_langtag_and_datatype>
- <#two_LITERAL_LONG2s>
- <#langtagged_LONG_with_subtag>
-
# tests from David Robillard
# http://www.w3.org/2011/rdf-wg/wiki/Turtle_Candidate_Recommendation_Comments#c21
<#turtle-syntax-bad-blank-label-dot-end>
@@ -324,6 +329,7 @@
<#IRI_subject> rdf:type rdft:TestTurtleEval ;
mf:name "IRI_subject" ;
rdfs:comment "IRI subject" ;
+ rdft:approval rdft:Approved ;
mf:action <IRI_subject.ttl> ;
mf:result <IRI_spo.nt> ;
.
@@ -331,6 +337,7 @@
<#IRI_with_four_digit_numeric_escape> rdf:type rdft:TestTurtleEval ;
mf:name "IRI_with_four_digit_numeric_escape" ;
rdfs:comment "IRI with four digit numeric escape (\\u)" ;
+ rdft:approval rdft:Approved ;
mf:action <IRI_with_four_digit_numeric_escape.ttl> ;
mf:result <IRI_spo.nt> ;
.
@@ -338,6 +345,7 @@
<#IRI_with_eight_digit_numeric_escape> rdf:type rdft:TestTurtleEval ;
mf:name "IRI_with_eight_digit_numeric_escape" ;
rdfs:comment "IRI with eight digit numeric escape (\\U)" ;
+ rdft:approval rdft:Approved ;
mf:action <IRI_with_eight_digit_numeric_escape.ttl> ;
mf:result <IRI_spo.nt> ;
.
@@ -345,6 +353,7 @@
<#IRI_with_all_punctuation> rdf:type rdft:TestTurtleEval ;
mf:name "IRI_with_all_punctuation" ;
rdfs:comment "IRI with all punctuation" ;
+ rdft:approval rdft:Approved ;
mf:action <IRI_with_all_punctuation.ttl> ;
mf:result <IRI_with_all_punctuation.nt> ;
.
@@ -352,6 +361,7 @@
<#bareword_a_predicate> rdf:type rdft:TestTurtleEval ;
mf:name "bareword_a_predicate" ;
rdfs:comment "bareword a predicate" ;
+ rdft:approval rdft:Approved ;
mf:action <bareword_a_predicate.ttl> ;
mf:result <bareword_a_predicate.nt> ;
.
@@ -359,13 +369,23 @@
<#old_style_prefix> rdf:type rdft:TestTurtleEval ;
mf:name "old_style_prefix" ;
rdfs:comment "old-style prefix" ;
+ rdft:approval rdft:Approved ;
mf:action <old_style_prefix.ttl> ;
mf:result <IRI_spo.nt> ;
.
+# <#SPARQL_style_prefix> rdf:type rdft:TestTurtleEval ;
+# mf:name "SPARQL_style_prefix" ;
+# rdfs:comment "SPARQL-style prefix" ;
+# rdft:approval rdft:Approved ;
+# mf:action <SPARQL_style_prefix.ttl> ;
+# mf:result <IRI_spo.nt> ;
+# .
+
<#prefixed_IRI_predicate> rdf:type rdft:TestTurtleEval ;
mf:name "prefixed_IRI_predicate" ;
rdfs:comment "prefixed IRI predicate" ;
+ rdft:approval rdft:Approved ;
mf:action <prefixed_IRI_predicate.ttl> ;
mf:result <IRI_spo.nt> ;
.
@@ -373,6 +393,7 @@
<#prefixed_IRI_object> rdf:type rdft:TestTurtleEval ;
mf:name "prefixed_IRI_object" ;
rdfs:comment "prefixed IRI object" ;
+ rdft:approval rdft:Approved ;
mf:action <prefixed_IRI_object.ttl> ;
mf:result <IRI_spo.nt> ;
.
@@ -380,55 +401,55 @@
<#prefix_only_IRI> rdf:type rdft:TestTurtleEval ;
mf:name "prefix_only_IRI" ;
rdfs:comment "prefix-only IRI (p:)" ;
+ rdft:approval rdft:Approved ;
mf:action <prefix_only_IRI.ttl> ;
mf:result <IRI_spo.nt> ;
.
-# <#prefix_with_PN_CHARS_BASE_character_boundaries> rdf:type rdft:TestTurtleEval ;
-# mf:name "prefix_with_PN_CHARS_BASE_character_boundaries" ;
-# rdfs:comment "prefix with PN CHARS BASE character boundaries (prefix: AZazÀÖØöø...:)" ;
-# mf:action <prefix_with_PN_CHARS_BASE_character_boundaries.ttl> ;
-# mf:result <IRI_spo.nt> ;
-# .
-
-# <#prefix_with_non_leading_extras> rdf:type rdft:TestTurtleEval ;
-# mf:name "prefix_with_non_leading_extras" ;
-# rdfs:comment "prefix with_non_leading_extras (_:a·̀ͯ‿.⁀)" ;
-# mf:action <prefix_with_non_leading_extras.ttl> ;
-# mf:result <IRI_spo.nt> ;
-# .
+<#prefix_with_PN_CHARS_BASE_character_boundaries> rdf:type rdft:TestTurtleEval ;
+ mf:name "prefix_with_PN_CHARS_BASE_character_boundaries" ;
+ rdfs:comment "prefix with PN CHARS BASE character boundaries (prefix: AZazÀÖØöø...:)" ;
+ rdft:approval rdft:Approved ;
+ mf:action <prefix_with_PN_CHARS_BASE_character_boundaries.ttl> ;
+ mf:result <IRI_spo.nt> ;
+ .
-# <#localName_with_assigned_nfc_bmp_PN_CHARS_BASE_character_boundaries> rdf:type rdft:TestTurtleEval ;
-# mf:name "localName_with_assigned_nfc_bmp_PN_CHARS_BASE_character_boundaries" ;
-# rdfs:comment "localName with assigned, NFC-normalized, basic-multilingual-plane PN CHARS BASE character boundaries (p:AZazÀÖØöø...)" ;
-# mf:action <localName_with_assigned_nfc_bmp_PN_CHARS_BASE_character_boundaries.ttl> ;
-# mf:result <localName_with_assigned_nfc_bmp_PN_CHARS_BASE_character_boundaries.nt> ;
-# .
+<#prefix_with_non_leading_extras> rdf:type rdft:TestTurtleEval ;
+ mf:name "prefix_with_non_leading_extras" ;
+ rdfs:comment "prefix with_non_leading_extras (_:a·̀ͯ‿.⁀)" ;
+ rdft:approval rdft:Approved ;
+ mf:action <prefix_with_non_leading_extras.ttl> ;
+ mf:result <IRI_spo.nt> ;
+ .
-# <#localName_with_assigned_nfc_PN_CHARS_BASE_character_boundaries> rdf:type rdft:TestTurtleEval ;
-# mf:name "localName_with_assigned_nfc_PN_CHARS_BASE_character_boundaries" ;
-# rdfs:comment "localName with assigned, NFC-normalized PN CHARS BASE character boundaries (p:AZazÀÖØöø...)" ;
-# mf:action <localName_with_assigned_nfc_PN_CHARS_BASE_character_boundaries.ttl> ;
-# mf:result <localName_with_assigned_nfc_PN_CHARS_BASE_character_boundaries.nt> ;
-# .
+<#localName_with_assigned_nfc_bmp_PN_CHARS_BASE_character_boundaries> rdf:type rdft:TestTurtleEval ;
+ mf:name "localName_with_assigned_nfc_bmp_PN_CHARS_BASE_character_boundaries" ;
+ rdfs:comment "localName with assigned, NFC-normalized, basic-multilingual-plane PN CHARS BASE character boundaries (p:AZazÀÖØöø...)" ;
+ rdft:approval rdft:Approved ;
+ mf:action <localName_with_assigned_nfc_bmp_PN_CHARS_BASE_character_boundaries.ttl> ;
+ mf:result <localName_with_assigned_nfc_bmp_PN_CHARS_BASE_character_boundaries.nt> ;
+ .
-# <#localName_with_nfc_PN_CHARS_BASE_character_boundaries> rdf:type rdft:TestTurtleEval ;
-# mf:name "localName_with_nfc_PN_CHARS_BASE_character_boundaries" ;
-# rdfs:comment "localName with nfc-normalize PN CHARS BASE character boundaries (p:AZazÀÖØöø...)" ;
-# mf:action <localName_with_nfc_PN_CHARS_BASE_character_boundaries.ttl> ;
-# mf:result <localName_with_nfc_PN_CHARS_BASE_character_boundaries.nt> ;
-# .
+<#localName_with_assigned_nfc_PN_CHARS_BASE_character_boundaries> rdf:type rdft:TestTurtleEval ;
+ mf:name "localName_with_assigned_nfc_PN_CHARS_BASE_character_boundaries" ;
+ rdfs:comment "localName with assigned, NFC-normalized PN CHARS BASE character boundaries (p:AZazÀÖØöø...)" ;
+ rdft:approval rdft:Approved ;
+ mf:action <localName_with_assigned_nfc_PN_CHARS_BASE_character_boundaries.ttl> ;
+ mf:result <localName_with_assigned_nfc_PN_CHARS_BASE_character_boundaries.nt> ;
+ .
-# <#localName_with_PN_CHARS_BASE_character_boundaries> rdf:type rdft:TestTurtleEval ;
-# mf:name "localName_with_PN_CHARS_BASE_character_boundaries" ;
-# rdfs:comment "localName with PN CHARS BASE character boundaries (p:AZazÀÖØöø...)" ;
-# mf:action <localName_with_PN_CHARS_BASE_character_boundaries.ttl> ;
-# mf:result <localName_with_PN_CHARS_BASE_character_boundaries.nt> ;
-# .
+<#localName_with_nfc_PN_CHARS_BASE_character_boundaries> rdf:type rdft:TestTurtleEval ;
+ mf:name "localName_with_nfc_PN_CHARS_BASE_character_boundaries" ;
+ rdfs:comment "localName with nfc-normalize PN CHARS BASE character boundaries (p:AZazÀÖØöø...)" ;
+ rdft:approval rdft:Approved ;
+ mf:action <localName_with_nfc_PN_CHARS_BASE_character_boundaries.ttl> ;
+ mf:result <localName_with_nfc_PN_CHARS_BASE_character_boundaries.nt> ;
+ .
<#default_namespace_IRI> rdf:type rdft:TestTurtleEval ;
mf:name "default_namespace_IRI" ;
rdfs:comment "default namespace IRI (:ln)" ;
+ rdft:approval rdft:Approved ;
mf:action <default_namespace_IRI.ttl> ;
mf:result <IRI_spo.nt> ;
.
@@ -436,20 +457,23 @@
<#prefix_reassigned_and_used> rdf:type rdft:TestTurtleEval ;
mf:name "prefix_reassigned_and_used" ;
rdfs:comment "prefix reassigned and used" ;
+ rdft:approval rdft:Approved ;
mf:action <prefix_reassigned_and_used.ttl> ;
mf:result <prefix_reassigned_and_used.nt> ;
.
-# <#reserved_escaped_localName> rdf:type rdft:TestTurtleEval ;
-# mf:name "reserved_escaped_localName" ;
-# rdfs:comment "reserved-escaped local name" ;
-# mf:action <reserved_escaped_localName.ttl> ;
-# mf:result <reserved_escaped_localName.nt> ;
-# .
+<#reserved_escaped_localName> rdf:type rdft:TestTurtleEval ;
+ mf:name "reserved_escaped_localName" ;
+ rdfs:comment "reserved-escaped local name" ;
+ rdft:approval rdft:Approved ;
+ mf:action <reserved_escaped_localName.ttl> ;
+ mf:result <reserved_escaped_localName.nt> ;
+ .
<#percent_escaped_localName> rdf:type rdft:TestTurtleEval ;
mf:name "percent_escaped_localName" ;
rdfs:comment "percent-escaped local name" ;
+ rdft:approval rdft:Approved ;
mf:action <percent_escaped_localName.ttl> ;
mf:result <percent_escaped_localName.nt> ;
.
@@ -457,6 +481,7 @@
<#HYPHEN_MINUS_in_localName> rdf:type rdft:TestTurtleEval ;
mf:name "HYPHEN_MINUS_in_localName" ;
rdfs:comment "HYPHEN-MINUS in local name" ;
+ rdft:approval rdft:Approved ;
mf:action <HYPHEN_MINUS_in_localName.ttl> ;
mf:result <HYPHEN_MINUS_in_localName.nt> ;
.
@@ -464,6 +489,7 @@
<#underscore_in_localName> rdf:type rdft:TestTurtleEval ;
mf:name "underscore_in_localName" ;
rdfs:comment "underscore in local name" ;
+ rdft:approval rdft:Approved ;
mf:action <underscore_in_localName.ttl> ;
mf:result <underscore_in_localName.nt> ;
.
@@ -471,6 +497,7 @@
<#localname_with_COLON> rdf:type rdft:TestTurtleEval ;
mf:name "localname_with_COLON" ;
rdfs:comment "localname with COLON" ;
+ rdft:approval rdft:Approved ;
mf:action <localname_with_COLON.ttl> ;
mf:result <localname_with_COLON.nt> ;
.
@@ -478,6 +505,7 @@
<#localName_with_leading_underscore> rdf:type rdft:TestTurtleEval ;
mf:name "localName_with_leading_underscore" ;
rdfs:comment "localName with leading underscore (p:_)" ;
+ rdft:approval rdft:Approved ;
mf:action <localName_with_leading_underscore.ttl> ;
mf:result <localName_with_leading_underscore.nt> ;
.
@@ -485,27 +513,39 @@
<#localName_with_leading_digit> rdf:type rdft:TestTurtleEval ;
mf:name "localName_with_leading_digit" ;
rdfs:comment "localName with leading digit (p:_)" ;
+ rdft:approval rdft:Approved ;
mf:action <localName_with_leading_digit.ttl> ;
mf:result <localName_with_leading_digit.nt> ;
.
-# <#localName_with_non_leading_extras> rdf:type rdft:TestTurtleEval ;
-# mf:name "localName_with_non_leading_extras" ;
-# rdfs:comment "localName with_non_leading_extras (_:a·̀ͯ‿.⁀)" ;
-# mf:action <localName_with_non_leading_extras.ttl> ;
-# mf:result <localName_with_non_leading_extras.nt> ;
-# .
+<#localName_with_non_leading_extras> rdf:type rdft:TestTurtleEval ;
+ mf:name "localName_with_non_leading_extras" ;
+ rdfs:comment "localName with_non_leading_extras (_:a·̀ͯ‿.⁀)" ;
+ rdft:approval rdft:Approved ;
+ mf:action <localName_with_non_leading_extras.ttl> ;
+ mf:result <localName_with_non_leading_extras.nt> ;
+ .
<#old_style_base> rdf:type rdft:TestTurtleEval ;
mf:name "old_style_base" ;
rdfs:comment "old-style base" ;
+ rdft:approval rdft:Approved ;
mf:action <old_style_base.ttl> ;
mf:result <IRI_spo.nt> ;
.
+# <#SPARQL_style_base> rdf:type rdft:TestTurtleEval ;
+# mf:name "SPARQL_style_base" ;
+# rdfs:comment "SPARQL-style base" ;
+# rdft:approval rdft:Approved ;
+# mf:action <SPARQL_style_base.ttl> ;
+# mf:result <IRI_spo.nt> ;
+# .
+
<#labeled_blank_node_subject> rdf:type rdft:TestTurtleEval ;
mf:name "labeled_blank_node_subject" ;
rdfs:comment "labeled blank node subject" ;
+ rdft:approval rdft:Approved ;
mf:action <labeled_blank_node_subject.ttl> ;
mf:result <labeled_blank_node_subject.nt> ;
.
@@ -513,20 +553,23 @@
<#labeled_blank_node_object> rdf:type rdft:TestTurtleEval ;
mf:name "labeled_blank_node_object" ;
rdfs:comment "labeled blank node object" ;
+ rdft:approval rdft:Approved ;
mf:action <labeled_blank_node_object.ttl> ;
mf:result <labeled_blank_node_object.nt> ;
.
-# <#labeled_blank_node_with_PN_CHARS_BASE_character_boundaries> rdf:type rdft:TestTurtleEval ;
-# mf:name "labeled_blank_node_with_PN_CHARS_BASE_character_boundaries" ;
-# rdfs:comment "labeled blank node with PN_CHARS_BASE character boundaries (_:AZazÀÖØöø...)" ;
-# mf:action <labeled_blank_node_with_PN_CHARS_BASE_character_boundaries.ttl> ;
-# mf:result <labeled_blank_node_object.nt> ;
-# .
+<#labeled_blank_node_with_PN_CHARS_BASE_character_boundaries> rdf:type rdft:TestTurtleEval ;
+ mf:name "labeled_blank_node_with_PN_CHARS_BASE_character_boundaries" ;
+ rdfs:comment "labeled blank node with PN_CHARS_BASE character boundaries (_:AZazÀÖØöø...)" ;
+ rdft:approval rdft:Approved ;
+ mf:action <labeled_blank_node_with_PN_CHARS_BASE_character_boundaries.ttl> ;
+ mf:result <labeled_blank_node_with_PN_CHARS_BASE_character_boundaries.nt> ;
+ .
<#labeled_blank_node_with_leading_underscore> rdf:type rdft:TestTurtleEval ;
mf:name "labeled_blank_node_with_leading_underscore" ;
rdfs:comment "labeled blank node with_leading_underscore (_:_)" ;
+ rdft:approval rdft:Approved ;
mf:action <labeled_blank_node_with_leading_underscore.ttl> ;
mf:result <labeled_blank_node_with_leading_underscore.nt> ;
.
@@ -534,20 +577,23 @@
<#labeled_blank_node_with_leading_digit> rdf:type rdft:TestTurtleEval ;
mf:name "labeled_blank_node_with_leading_digit" ;
rdfs:comment "labeled blank node with_leading_digit (_:0)" ;
+ rdft:approval rdft:Approved ;
mf:action <labeled_blank_node_with_leading_digit.ttl> ;
mf:result <labeled_blank_node_with_leading_digit.nt> ;
.
-# <#labeled_blank_node_with_non_leading_extras> rdf:type rdft:TestTurtleEval ;
-# mf:name "labeled_blank_node_with_non_leading_extras" ;
-# rdfs:comment "labeled blank node with_non_leading_extras (_:a·̀ͯ‿.⁀)" ;
-# mf:action <labeled_blank_node_with_non_leading_extras.ttl> ;
-# mf:result <labeled_blank_node_object.nt> ;
-# .
+<#labeled_blank_node_with_non_leading_extras> rdf:type rdft:TestTurtleEval ;
+ mf:name "labeled_blank_node_with_non_leading_extras" ;
+ rdfs:comment "labeled blank node with_non_leading_extras (_:a·̀ͯ‿.⁀)" ;
+ rdft:approval rdft:Approved ;
+ mf:action <labeled_blank_node_with_non_leading_extras.ttl> ;
+ mf:result <labeled_blank_node_with_non_leading_extras.nt> ;
+ .
<#anonymous_blank_node_subject> rdf:type rdft:TestTurtleEval ;
mf:name "anonymous_blank_node_subject" ;
rdfs:comment "anonymous blank node subject" ;
+ rdft:approval rdft:Approved ;
mf:action <anonymous_blank_node_subject.ttl> ;
mf:result <anonymous_blank_node_subject.nt> ;
.
@@ -555,6 +601,7 @@
<#anonymous_blank_node_object> rdf:type rdft:TestTurtleEval ;
mf:name "anonymous_blank_node_object" ;
rdfs:comment "anonymous blank node object" ;
+ rdft:approval rdft:Approved ;
mf:action <anonymous_blank_node_object.ttl> ;
mf:result <anonymous_blank_node_object.nt> ;
.
@@ -562,6 +609,7 @@
<#sole_blankNodePropertyList> rdf:type rdft:TestTurtleEval ;
mf:name "sole_blankNodePropertyList" ;
rdfs:comment "sole blankNodePropertyList [ <p> <o> ] ." ;
+ rdft:approval rdft:Approved ;
mf:action <sole_blankNodePropertyList.ttl> ;
mf:result <sole_blankNodePropertyList.nt> ;
.
@@ -569,6 +617,7 @@
<#blankNodePropertyList_as_subject> rdf:type rdft:TestTurtleEval ;
mf:name "blankNodePropertyList_as_subject" ;
rdfs:comment "blankNodePropertyList as subject [ … ] <p> <o> ." ;
+ rdft:approval rdft:Approved ;
mf:action <blankNodePropertyList_as_subject.ttl> ;
mf:result <blankNodePropertyList_as_subject.nt> ;
.
@@ -576,6 +625,7 @@
<#blankNodePropertyList_as_object> rdf:type rdft:TestTurtleEval ;
mf:name "blankNodePropertyList_as_object" ;
rdfs:comment "blankNodePropertyList as object <s> <p> [ … ] ." ;
+ rdft:approval rdft:Approved ;
mf:action <blankNodePropertyList_as_object.ttl> ;
mf:result <blankNodePropertyList_as_object.nt> ;
.
@@ -583,6 +633,7 @@
<#blankNodePropertyList_with_multiple_triples> rdf:type rdft:TestTurtleEval ;
mf:name "blankNodePropertyList_with_multiple_triples" ;
rdfs:comment "blankNodePropertyList with multiple triples [ <s> <p> ; <s2> <p2> ]" ;
+ rdft:approval rdft:Approved ;
mf:action <blankNodePropertyList_with_multiple_triples.ttl> ;
mf:result <blankNodePropertyList_with_multiple_triples.nt> ;
.
@@ -590,6 +641,7 @@
<#nested_blankNodePropertyLists> rdf:type rdft:TestTurtleEval ;
mf:name "nested_blankNodePropertyLists" ;
rdfs:comment "nested blankNodePropertyLists [ <p1> [ <p2> <o2> ] ; <p3> <o3> ]" ;
+ rdft:approval rdft:Approved ;
mf:action <nested_blankNodePropertyLists.ttl> ;
mf:result <nested_blankNodePropertyLists.nt> ;
.
@@ -597,6 +649,7 @@
<#blankNodePropertyList_containing_collection> rdf:type rdft:TestTurtleEval ;
mf:name "blankNodePropertyList_containing_collection" ;
rdfs:comment "blankNodePropertyList containing collection [ <p1> ( … ) ]" ;
+ rdft:approval rdft:Approved ;
mf:action <blankNodePropertyList_containing_collection.ttl> ;
mf:result <blankNodePropertyList_containing_collection.nt> ;
.
@@ -604,6 +657,7 @@
<#collection_subject> rdf:type rdft:TestTurtleEval ;
mf:name "collection_subject" ;
rdfs:comment "collection subject" ;
+ rdft:approval rdft:Approved ;
mf:action <collection_subject.ttl> ;
mf:result <collection_subject.nt> ;
.
@@ -611,6 +665,7 @@
<#collection_object> rdf:type rdft:TestTurtleEval ;
mf:name "collection_object" ;
rdfs:comment "collection object" ;
+ rdft:approval rdft:Approved ;
mf:action <collection_object.ttl> ;
mf:result <collection_object.nt> ;
.
@@ -618,6 +673,7 @@
<#empty_collection> rdf:type rdft:TestTurtleEval ;
mf:name "empty_collection" ;
rdfs:comment "empty collection ()" ;
+ rdft:approval rdft:Approved ;
mf:action <empty_collection.ttl> ;
mf:result <empty_collection.nt> ;
.
@@ -625,6 +681,7 @@
<#nested_collection> rdf:type rdft:TestTurtleEval ;
mf:name "nested_collection" ;
rdfs:comment "nested collection (())" ;
+ rdft:approval rdft:Approved ;
mf:action <nested_collection.ttl> ;
mf:result <nested_collection.nt> ;
.
@@ -632,6 +689,7 @@
<#first> rdf:type rdft:TestTurtleEval ;
mf:name "first" ;
rdfs:comment "first, not last, non-empty nested collection" ;
+ rdft:approval rdft:Approved ;
mf:action <first.ttl> ;
mf:result <first.nt> ;
.
@@ -639,6 +697,7 @@
<#last> rdf:type rdft:TestTurtleEval ;
mf:name "last" ;
rdfs:comment "last, not first, non-empty nested collection" ;
+ rdft:approval rdft:Approved ;
mf:action <last.ttl> ;
mf:result <last.nt> ;
.
@@ -646,6 +705,7 @@
<#LITERAL1> rdf:type rdft:TestTurtleEval ;
mf:name "LITERAL1" ;
rdfs:comment "LITERAL1 'x'" ;
+ rdft:approval rdft:Approved ;
mf:action <LITERAL1.ttl> ;
mf:result <LITERAL1.nt> ;
.
@@ -653,6 +713,7 @@
<#LITERAL1_ascii_boundaries> rdf:type rdft:TestTurtleEval ;
mf:name "LITERAL1_ascii_boundaries" ;
rdfs:comment "LITERAL1_ascii_boundaries '\\x00\\x09\\x0b\\x0c\\x0e\\x26\\x28...'" ;
+ rdft:approval rdft:Approved ;
mf:action <LITERAL1_ascii_boundaries.ttl> ;
mf:result <LITERAL1_ascii_boundaries.nt> ;
.
@@ -660,6 +721,7 @@
<#LITERAL1_with_UTF8_boundaries> rdf:type rdft:TestTurtleEval ;
mf:name "LITERAL1_with_UTF8_boundaries" ;
rdfs:comment "LITERAL1_with_UTF8_boundaries '\\x80\\x7ff\\x800\\xfff...'" ;
+ rdft:approval rdft:Approved ;
mf:action <LITERAL1_with_UTF8_boundaries.ttl> ;
mf:result <LITERAL_with_UTF8_boundaries.nt> ;
.
@@ -667,6 +729,7 @@
<#LITERAL1_all_controls> rdf:type rdft:TestTurtleEval ;
mf:name "LITERAL1_all_controls" ;
rdfs:comment "LITERAL1_all_controls '\\x00\\x01\\x02\\x03\\x04...'" ;
+ rdft:approval rdft:Approved ;
mf:action <LITERAL1_all_controls.ttl> ;
mf:result <LITERAL1_all_controls.nt> ;
.
@@ -674,6 +737,7 @@
<#LITERAL1_all_punctuation> rdf:type rdft:TestTurtleEval ;
mf:name "LITERAL1_all_punctuation" ;
rdfs:comment "LITERAL1_all_punctuation '!\"#$%&()...'" ;
+ rdft:approval rdft:Approved ;
mf:action <LITERAL1_all_punctuation.ttl> ;
mf:result <LITERAL1_all_punctuation.nt> ;
.
@@ -681,6 +745,7 @@
<#LITERAL_LONG1> rdf:type rdft:TestTurtleEval ;
mf:name "LITERAL_LONG1" ;
rdfs:comment "LITERAL_LONG1 '''x'''" ;
+ rdft:approval rdft:Approved ;
mf:action <LITERAL_LONG1.ttl> ;
mf:result <LITERAL1.nt> ;
.
@@ -688,20 +753,23 @@
<#LITERAL_LONG1_ascii_boundaries> rdf:type rdft:TestTurtleEval ;
mf:name "LITERAL_LONG1_ascii_boundaries" ;
rdfs:comment "LITERAL_LONG1_ascii_boundaries '\\x00\\x26\\x28...'" ;
+ rdft:approval rdft:Approved ;
mf:action <LITERAL_LONG1_ascii_boundaries.ttl> ;
mf:result <LITERAL_LONG1_ascii_boundaries.nt> ;
.
-# <#LITERAL_LONG1_with_UTF8_boundaries> rdf:type rdft:TestTurtleEval ;
-# mf:name "LITERAL_LONG1_with_UTF8_boundaries" ;
-# rdfs:comment "LITERAL_LONG1_with_UTF8_boundaries '\\x80\\x7ff\\x800\\xfff...'" ;
-# mf:action <LITERAL_LONG1_with_UTF8_boundaries.ttl> ;
-# mf:result <LITERAL_with_UTF8_boundaries.nt> ;
-# .
+<#LITERAL_LONG1_with_UTF8_boundaries> rdf:type rdft:TestTurtleEval ;
+ mf:name "LITERAL_LONG1_with_UTF8_boundaries" ;
+ rdfs:comment "LITERAL_LONG1_with_UTF8_boundaries '\\x80\\x7ff\\x800\\xfff...'" ;
+ rdft:approval rdft:Approved ;
+ mf:action <LITERAL_LONG1_with_UTF8_boundaries.ttl> ;
+ mf:result <LITERAL_with_UTF8_boundaries.nt> ;
+ .
<#LITERAL_LONG1_with_1_squote> rdf:type rdft:TestTurtleEval ;
mf:name "LITERAL_LONG1_with_1_squote" ;
rdfs:comment "LITERAL_LONG1 with 1 squote '''a'b'''" ;
+ rdft:approval rdft:Approved ;
mf:action <LITERAL_LONG1_with_1_squote.ttl> ;
mf:result <LITERAL_LONG1_with_1_squote.nt> ;
.
@@ -709,6 +777,7 @@
<#LITERAL_LONG1_with_2_squotes> rdf:type rdft:TestTurtleEval ;
mf:name "LITERAL_LONG1_with_2_squotes" ;
rdfs:comment "LITERAL_LONG1 with 2 squotes '''a''b'''" ;
+ rdft:approval rdft:Approved ;
mf:action <LITERAL_LONG1_with_2_squotes.ttl> ;
mf:result <LITERAL_LONG1_with_2_squotes.nt> ;
.
@@ -716,6 +785,7 @@
<#LITERAL2> rdf:type rdft:TestTurtleEval ;
mf:name "LITERAL2" ;
rdfs:comment "LITERAL2 \"x\"" ;
+ rdft:approval rdft:Approved ;
mf:action <LITERAL2.ttl> ;
mf:result <LITERAL1.nt> ;
.
@@ -723,6 +793,7 @@
<#LITERAL2_ascii_boundaries> rdf:type rdft:TestTurtleEval ;
mf:name "LITERAL2_ascii_boundaries" ;
rdfs:comment "LITERAL2_ascii_boundaries '\\x00\\x09\\x0b\\x0c\\x0e\\x21\\x23...'" ;
+ rdft:approval rdft:Approved ;
mf:action <LITERAL2_ascii_boundaries.ttl> ;
mf:result <LITERAL2_ascii_boundaries.nt> ;
.
@@ -730,6 +801,7 @@
<#LITERAL2_with_UTF8_boundaries> rdf:type rdft:TestTurtleEval ;
mf:name "LITERAL2_with_UTF8_boundaries" ;
rdfs:comment "LITERAL2_with_UTF8_boundaries '\\x80\\x7ff\\x800\\xfff...'" ;
+ rdft:approval rdft:Approved ;
mf:action <LITERAL2_with_UTF8_boundaries.ttl> ;
mf:result <LITERAL_with_UTF8_boundaries.nt> ;
.
@@ -737,6 +809,7 @@
<#LITERAL_LONG2> rdf:type rdft:TestTurtleEval ;
mf:name "LITERAL_LONG2" ;
rdfs:comment "LITERAL_LONG2 \"\"\"x\"\"\"" ;
+ rdft:approval rdft:Approved ;
mf:action <LITERAL_LONG2.ttl> ;
mf:result <LITERAL1.nt> ;
.
@@ -744,6 +817,7 @@
<#LITERAL_LONG2_ascii_boundaries> rdf:type rdft:TestTurtleEval ;
mf:name "LITERAL_LONG2_ascii_boundaries" ;
rdfs:comment "LITERAL_LONG2_ascii_boundaries '\\x00\\x21\\x23...'" ;
+ rdft:approval rdft:Approved ;
mf:action <LITERAL_LONG2_ascii_boundaries.ttl> ;
mf:result <LITERAL_LONG2_ascii_boundaries.nt> ;
.
@@ -751,6 +825,7 @@
<#LITERAL_LONG2_with_UTF8_boundaries> rdf:type rdft:TestTurtleEval ;
mf:name "LITERAL_LONG2_with_UTF8_boundaries" ;
rdfs:comment "LITERAL_LONG2_with_UTF8_boundaries '\\x80\\x7ff\\x800\\xfff...'" ;
+ rdft:approval rdft:Approved ;
mf:action <LITERAL_LONG2_with_UTF8_boundaries.ttl> ;
mf:result <LITERAL_with_UTF8_boundaries.nt> ;
.
@@ -758,6 +833,7 @@
<#LITERAL_LONG2_with_1_squote> rdf:type rdft:TestTurtleEval ;
mf:name "LITERAL_LONG2_with_1_squote" ;
rdfs:comment "LITERAL_LONG2 with 1 squote \"\"\"a\"b\"\"\"" ;
+ rdft:approval rdft:Approved ;
mf:action <LITERAL_LONG2_with_1_squote.ttl> ;
mf:result <LITERAL_LONG2_with_1_squote.nt> ;
.
@@ -765,6 +841,7 @@
<#LITERAL_LONG2_with_2_squotes> rdf:type rdft:TestTurtleEval ;
mf:name "LITERAL_LONG2_with_2_squotes" ;
rdfs:comment "LITERAL_LONG2 with 2 squotes \"\"\"a\"\"b\"\"\"" ;
+ rdft:approval rdft:Approved ;
mf:action <LITERAL_LONG2_with_2_squotes.ttl> ;
mf:result <LITERAL_LONG2_with_2_squotes.nt> ;
.
@@ -772,6 +849,7 @@
<#literal_with_CHARACTER_TABULATION> rdf:type rdft:TestTurtleEval ;
mf:name "literal_with_CHARACTER_TABULATION" ;
rdfs:comment "literal with CHARACTER TABULATION" ;
+ rdft:approval rdft:Approved ;
mf:action <literal_with_CHARACTER_TABULATION.ttl> ;
mf:result <literal_with_CHARACTER_TABULATION.nt> ;
.
@@ -779,6 +857,7 @@
<#literal_with_BACKSPACE> rdf:type rdft:TestTurtleEval ;
mf:name "literal_with_BACKSPACE" ;
rdfs:comment "literal with BACKSPACE" ;
+ rdft:approval rdft:Approved ;
mf:action <literal_with_BACKSPACE.ttl> ;
mf:result <literal_with_BACKSPACE.nt> ;
.
@@ -786,6 +865,7 @@
<#literal_with_LINE_FEED> rdf:type rdft:TestTurtleEval ;
mf:name "literal_with_LINE_FEED" ;
rdfs:comment "literal with LINE FEED" ;
+ rdft:approval rdft:Approved ;
mf:action <literal_with_LINE_FEED.ttl> ;
mf:result <literal_with_LINE_FEED.nt> ;
.
@@ -793,6 +873,7 @@
<#literal_with_CARRIAGE_RETURN> rdf:type rdft:TestTurtleEval ;
mf:name "literal_with_CARRIAGE_RETURN" ;
rdfs:comment "literal with CARRIAGE RETURN" ;
+ rdft:approval rdft:Approved ;
mf:action <literal_with_CARRIAGE_RETURN.ttl> ;
mf:result <literal_with_CARRIAGE_RETURN.nt> ;
.
@@ -800,6 +881,7 @@
<#literal_with_FORM_FEED> rdf:type rdft:TestTurtleEval ;
mf:name "literal_with_FORM_FEED" ;
rdfs:comment "literal with FORM FEED" ;
+ rdft:approval rdft:Approved ;
mf:action <literal_with_FORM_FEED.ttl> ;
mf:result <literal_with_FORM_FEED.nt> ;
.
@@ -807,6 +889,7 @@
<#literal_with_REVERSE_SOLIDUS> rdf:type rdft:TestTurtleEval ;
mf:name "literal_with_REVERSE_SOLIDUS" ;
rdfs:comment "literal with REVERSE SOLIDUS" ;
+ rdft:approval rdft:Approved ;
mf:action <literal_with_REVERSE_SOLIDUS.ttl> ;
mf:result <literal_with_REVERSE_SOLIDUS.nt> ;
.
@@ -814,6 +897,7 @@
<#literal_with_escaped_CHARACTER_TABULATION> rdf:type rdft:TestTurtleEval ;
mf:name "literal_with_escaped_CHARACTER_TABULATION" ;
rdfs:comment "literal with escaped CHARACTER TABULATION" ;
+ rdft:approval rdft:Approved ;
mf:action <literal_with_escaped_CHARACTER_TABULATION.ttl> ;
mf:result <literal_with_CHARACTER_TABULATION.nt> ;
.
@@ -821,6 +905,7 @@
<#literal_with_escaped_BACKSPACE> rdf:type rdft:TestTurtleEval ;
mf:name "literal_with_escaped_BACKSPACE" ;
rdfs:comment "literal with escaped BACKSPACE" ;
+ rdft:approval rdft:Approved ;
mf:action <literal_with_escaped_BACKSPACE.ttl> ;
mf:result <literal_with_BACKSPACE.nt> ;
.
@@ -828,6 +913,7 @@
<#literal_with_escaped_LINE_FEED> rdf:type rdft:TestTurtleEval ;
mf:name "literal_with_escaped_LINE_FEED" ;
rdfs:comment "literal with escaped LINE FEED" ;
+ rdft:approval rdft:Approved ;
mf:action <literal_with_escaped_LINE_FEED.ttl> ;
mf:result <literal_with_LINE_FEED.nt> ;
.
@@ -835,6 +921,7 @@
<#literal_with_escaped_CARRIAGE_RETURN> rdf:type rdft:TestTurtleEval ;
mf:name "literal_with_escaped_CARRIAGE_RETURN" ;
rdfs:comment "literal with escaped CARRIAGE RETURN" ;
+ rdft:approval rdft:Approved ;
mf:action <literal_with_escaped_CARRIAGE_RETURN.ttl> ;
mf:result <literal_with_CARRIAGE_RETURN.nt> ;
.
@@ -842,6 +929,7 @@
<#literal_with_escaped_FORM_FEED> rdf:type rdft:TestTurtleEval ;
mf:name "literal_with_escaped_FORM_FEED" ;
rdfs:comment "literal with escaped FORM FEED" ;
+ rdft:approval rdft:Approved ;
mf:action <literal_with_escaped_FORM_FEED.ttl> ;
mf:result <literal_with_FORM_FEED.nt> ;
.
@@ -849,6 +937,7 @@
<#literal_with_numeric_escape4> rdf:type rdft:TestTurtleEval ;
mf:name "literal_with_numeric_escape4" ;
rdfs:comment "literal with numeric escape4 \\u" ;
+ rdft:approval rdft:Approved ;
mf:action <literal_with_numeric_escape4.ttl> ;
mf:result <literal_with_numeric_escape4.nt> ;
.
@@ -856,6 +945,7 @@
<#literal_with_numeric_escape8> rdf:type rdft:TestTurtleEval ;
mf:name "literal_with_numeric_escape8" ;
rdfs:comment "literal with numeric escape8 \\U" ;
+ rdft:approval rdft:Approved ;
mf:action <literal_with_numeric_escape8.ttl> ;
mf:result <literal_with_numeric_escape4.nt> ;
.
@@ -863,6 +953,7 @@
<#IRIREF_datatype> rdf:type rdft:TestTurtleEval ;
mf:name "IRIREF_datatype" ;
rdfs:comment "IRIREF datatype \"\"^^<t>" ;
+ rdft:approval rdft:Approved ;
mf:action <IRIREF_datatype.ttl> ;
mf:result <IRIREF_datatype.nt> ;
.
@@ -870,6 +961,7 @@
<#prefixed_name_datatype> rdf:type rdft:TestTurtleEval ;
mf:name "prefixed_name_datatype" ;
rdfs:comment "prefixed name datatype \"\"^^p:t" ;
+ rdft:approval rdft:Approved ;
mf:action <prefixed_name_datatype.ttl> ;
mf:result <IRIREF_datatype.nt> ;
.
@@ -877,6 +969,7 @@
<#bareword_integer> rdf:type rdft:TestTurtleEval ;
mf:name "bareword_integer" ;
rdfs:comment "bareword integer" ;
+ rdft:approval rdft:Approved ;
mf:action <bareword_integer.ttl> ;
mf:result <IRIREF_datatype.nt> ;
.
@@ -884,6 +977,7 @@
<#bareword_decimal> rdf:type rdft:TestTurtleEval ;
mf:name "bareword_decimal" ;
rdfs:comment "bareword decimal" ;
+ rdft:approval rdft:Approved ;
mf:action <bareword_decimal.ttl> ;
mf:result <bareword_decimal.nt> ;
.
@@ -891,6 +985,7 @@
<#bareword_double> rdf:type rdft:TestTurtleEval ;
mf:name "bareword_double" ;
rdfs:comment "bareword double" ;
+ rdft:approval rdft:Approved ;
mf:action <bareword_double.ttl> ;
mf:result <bareword_double.nt> ;
.
@@ -898,6 +993,7 @@
<#double_lower_case_e> rdf:type rdft:TestTurtleEval ;
mf:name "double_lower_case_e" ;
rdfs:comment "double lower case e" ;
+ rdft:approval rdft:Approved ;
mf:action <double_lower_case_e.ttl> ;
mf:result <double_lower_case_e.nt> ;
.
@@ -905,6 +1001,7 @@
<#negative_numeric> rdf:type rdft:TestTurtleEval ;
mf:name "negative_numeric" ;
rdfs:comment "negative numeric" ;
+ rdft:approval rdft:Approved ;
mf:action <negative_numeric.ttl> ;
mf:result <negative_numeric.nt> ;
.
@@ -912,6 +1009,7 @@
<#positive_numeric> rdf:type rdft:TestTurtleEval ;
mf:name "positive_numeric" ;
rdfs:comment "positive numeric" ;
+ rdft:approval rdft:Approved ;
mf:action <positive_numeric.ttl> ;
mf:result <positive_numeric.nt> ;
.
@@ -919,6 +1017,7 @@
<#numeric_with_leading_0> rdf:type rdft:TestTurtleEval ;
mf:name "numeric_with_leading_0" ;
rdfs:comment "numeric with leading 0" ;
+ rdft:approval rdft:Approved ;
mf:action <numeric_with_leading_0.ttl> ;
mf:result <numeric_with_leading_0.nt> ;
.
@@ -926,6 +1025,7 @@
<#literal_true> rdf:type rdft:TestTurtleEval ;
mf:name "literal_true" ;
rdfs:comment "literal true" ;
+ rdft:approval rdft:Approved ;
mf:action <literal_true.ttl> ;
mf:result <literal_true.nt> ;
.
@@ -933,6 +1033,7 @@
<#literal_false> rdf:type rdft:TestTurtleEval ;
mf:name "literal_false" ;
rdfs:comment "literal false" ;
+ rdft:approval rdft:Approved ;
mf:action <literal_false.ttl> ;
mf:result <literal_false.nt> ;
.
@@ -940,6 +1041,7 @@
<#langtagged_non_LONG> rdf:type rdft:TestTurtleEval ;
mf:name "langtagged_non_LONG" ;
rdfs:comment "langtagged non-LONG \"x\"@en" ;
+ rdft:approval rdft:Approved ;
mf:action <langtagged_non_LONG.ttl> ;
mf:result <langtagged_non_LONG.nt> ;
.
@@ -947,6 +1049,7 @@
<#langtagged_LONG> rdf:type rdft:TestTurtleEval ;
mf:name "langtagged_LONG" ;
rdfs:comment "langtagged LONG \"\"\"x\"\"\"@en" ;
+ rdft:approval rdft:Approved ;
mf:action <langtagged_LONG.ttl> ;
mf:result <langtagged_non_LONG.nt> ;
.
@@ -954,6 +1057,7 @@
<#lantag_with_subtag> rdf:type rdft:TestTurtleEval ;
mf:name "lantag_with_subtag" ;
rdfs:comment "lantag with subtag \"x\"@en-us" ;
+ rdft:approval rdft:Approved ;
mf:action <lantag_with_subtag.ttl> ;
mf:result <lantag_with_subtag.nt> ;
.
@@ -961,6 +1065,7 @@
<#objectList_with_two_objects> rdf:type rdft:TestTurtleEval ;
mf:name "objectList_with_two_objects" ;
rdfs:comment "objectList with two objects … <o1>,<o2>" ;
+ rdft:approval rdft:Approved ;
mf:action <objectList_with_two_objects.ttl> ;
mf:result <objectList_with_two_objects.nt> ;
.
@@ -968,6 +1073,7 @@
<#predicateObjectList_with_two_objectLists> rdf:type rdft:TestTurtleEval ;
mf:name "predicateObjectList_with_two_objectLists" ;
rdfs:comment "predicateObjectList with two objectLists … <o1>,<o2>" ;
+ rdft:approval rdft:Approved ;
mf:action <predicateObjectList_with_two_objectLists.ttl> ;
mf:result <predicateObjectList_with_two_objectLists.nt> ;
.
@@ -975,6 +1081,7 @@
<#repeated_semis_at_end> rdf:type rdft:TestTurtleEval ;
mf:name "repeated_semis_at_end" ;
rdfs:comment "repeated semis at end <s> <p> <o> ;; <p2> <o2> ." ;
+ rdft:approval rdft:Approved ;
mf:action <repeated_semis_at_end.ttl> ;
mf:result <predicateObjectList_with_two_objectLists.nt> ;
.
@@ -982,6 +1089,7 @@
<#repeated_semis_not_at_end> rdf:type rdft:TestTurtleEval ;
mf:name "repeated_semis_not_at_end" ;
rdfs:comment "repeated semis not at end <s> <p> <o> ;;." ;
+ rdft:approval rdft:Approved ;
mf:action <repeated_semis_not_at_end.ttl> ;
mf:result <repeated_semis_not_at_end.nt> ;
.
@@ -990,828 +1098,994 @@
<#turtle-syntax-file-01> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-file-01" ;
rdfs:comment "Empty file" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-file-01.ttl> ;
.
<#turtle-syntax-file-02> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-file-02" ;
rdfs:comment "Only comment" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-file-02.ttl> ;
.
<#turtle-syntax-file-03> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-file-03" ;
rdfs:comment "One comment, one empty line" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-file-03.ttl> ;
.
<#turtle-syntax-uri-01> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-uri-01" ;
rdfs:comment "Only IRIs" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-uri-01.ttl> ;
.
<#turtle-syntax-uri-02> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-uri-02" ;
rdfs:comment "IRIs with Unicode escape" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-uri-02.ttl> ;
.
<#turtle-syntax-uri-03> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-uri-03" ;
rdfs:comment "IRIs with long Unicode escape" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-uri-03.ttl> ;
.
<#turtle-syntax-uri-04> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-uri-04" ;
rdfs:comment "Legal IRIs" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-uri-04.ttl> ;
.
<#turtle-syntax-base-01> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-base-01" ;
rdfs:comment "@base" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-base-01.ttl> ;
.
+# <#turtle-syntax-base-02> rdf:type rdft:TestTurtlePositiveSyntax ;
+# mf:name "turtle-syntax-base-02" ;
+# rdfs:comment "BASE" ;
+# rdft:approval rdft:Approved ;
+# mf:action <turtle-syntax-base-02.ttl> ;
+# .
+
<#turtle-syntax-base-03> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-base-03" ;
rdfs:comment "@base with relative IRIs" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-base-03.ttl> ;
.
+# <#turtle-syntax-base-04> rdf:type rdft:TestTurtlePositiveSyntax ;
+# mf:name "turtle-syntax-base-04" ;
+# rdfs:comment "base with relative IRIs" ;
+# rdft:approval rdft:Approved ;
+# mf:action <turtle-syntax-base-04.ttl> ;
+# .
+
<#turtle-syntax-prefix-01> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-prefix-01" ;
rdfs:comment "@prefix" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-prefix-01.ttl> ;
.
+# <#turtle-syntax-prefix-02> rdf:type rdft:TestTurtlePositiveSyntax ;
+# mf:name "turtle-syntax-prefix-02" ;
+# rdfs:comment "PreFIX" ;
+# rdft:approval rdft:Approved ;
+# mf:action <turtle-syntax-prefix-02.ttl> ;
+# .
+
+# <#turtle-syntax-prefix-03> rdf:type rdft:TestTurtlePositiveSyntax ;
+# mf:name "turtle-syntax-prefix-03" ;
+# rdfs:comment "Empty PREFIX" ;
+# rdft:approval rdft:Approved ;
+# mf:action <turtle-syntax-prefix-03.ttl> ;
+# .
+
<#turtle-syntax-prefix-04> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-prefix-04" ;
rdfs:comment "Empty @prefix with % escape" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-prefix-04.ttl> ;
.
<#turtle-syntax-prefix-05> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-prefix-05" ;
rdfs:comment "@prefix with no suffix" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-prefix-05.ttl> ;
.
<#turtle-syntax-prefix-06> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-prefix-06" ;
rdfs:comment "colon is a legal pname character" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-prefix-06.ttl> ;
.
<#turtle-syntax-prefix-07> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-prefix-07" ;
rdfs:comment "dash is a legal pname character" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-prefix-07.ttl> ;
.
<#turtle-syntax-prefix-08> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-prefix-08" ;
rdfs:comment "underscore is a legal pname character" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-prefix-08.ttl> ;
.
<#turtle-syntax-prefix-09> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-prefix-09" ;
rdfs:comment "percents in pnames" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-prefix-09.ttl> ;
.
<#turtle-syntax-string-01> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-string-01" ;
rdfs:comment "string literal" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-string-01.ttl> ;
.
<#turtle-syntax-string-02> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-string-02" ;
rdfs:comment "langString literal" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-string-02.ttl> ;
.
<#turtle-syntax-string-03> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-string-03" ;
rdfs:comment "langString literal with region" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-string-03.ttl> ;
.
<#turtle-syntax-string-04> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-string-04" ;
rdfs:comment "squote string literal" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-string-04.ttl> ;
.
<#turtle-syntax-string-05> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-string-05" ;
rdfs:comment "squote langString literal" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-string-05.ttl> ;
.
<#turtle-syntax-string-06> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-string-06" ;
rdfs:comment "squote langString literal with region" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-string-06.ttl> ;
.
<#turtle-syntax-string-07> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-string-07" ;
rdfs:comment "long string literal with embedded single- and double-quotes" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-string-07.ttl> ;
.
<#turtle-syntax-string-08> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-string-08" ;
rdfs:comment "long string literal with embedded newline" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-string-08.ttl> ;
.
<#turtle-syntax-string-09> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-string-09" ;
rdfs:comment "squote long string literal with embedded single- and double-quotes" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-string-09.ttl> ;
.
<#turtle-syntax-string-10> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-string-10" ;
rdfs:comment "long langString literal with embedded newline" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-string-10.ttl> ;
.
<#turtle-syntax-string-11> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-string-11" ;
rdfs:comment "squote long langString literal with embedded newline" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-string-11.ttl> ;
.
<#turtle-syntax-str-esc-01> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-str-esc-01" ;
rdfs:comment "string literal with escaped newline" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-str-esc-01.ttl> ;
.
<#turtle-syntax-str-esc-02> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-str-esc-02" ;
rdfs:comment "string literal with Unicode escape" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-str-esc-02.ttl> ;
.
<#turtle-syntax-str-esc-03> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-str-esc-03" ;
rdfs:comment "string literal with long Unicode escape" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-str-esc-03.ttl> ;
.
<#turtle-syntax-pname-esc-01> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-pname-esc-01" ;
rdfs:comment "pname with back-slash escapes" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-pname-esc-01.ttl> ;
.
<#turtle-syntax-pname-esc-02> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-pname-esc-02" ;
rdfs:comment "pname with back-slash escapes (2)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-pname-esc-02.ttl> ;
.
<#turtle-syntax-pname-esc-03> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-pname-esc-03" ;
rdfs:comment "pname with back-slash escapes (3)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-pname-esc-03.ttl> ;
.
<#turtle-syntax-bnode-01> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-bnode-01" ;
rdfs:comment "bnode subject" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bnode-01.ttl> ;
.
<#turtle-syntax-bnode-02> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-bnode-02" ;
rdfs:comment "bnode object" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bnode-02.ttl> ;
.
<#turtle-syntax-bnode-03> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-bnode-03" ;
rdfs:comment "bnode property list object" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bnode-03.ttl> ;
.
<#turtle-syntax-bnode-04> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-bnode-04" ;
rdfs:comment "bnode property list object (2)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bnode-04.ttl> ;
.
<#turtle-syntax-bnode-05> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-bnode-05" ;
rdfs:comment "bnode property list subject" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bnode-05.ttl> ;
.
<#turtle-syntax-bnode-06> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-bnode-06" ;
rdfs:comment "labeled bnode subject" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bnode-06.ttl> ;
.
<#turtle-syntax-bnode-07> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-bnode-07" ;
rdfs:comment "labeled bnode subject and object" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bnode-07.ttl> ;
.
<#turtle-syntax-bnode-08> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-bnode-08" ;
rdfs:comment "bare bnode property list" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bnode-08.ttl> ;
.
<#turtle-syntax-bnode-09> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-bnode-09" ;
rdfs:comment "bnode property list" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bnode-09.ttl> ;
.
<#turtle-syntax-bnode-10> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-bnode-10" ;
rdfs:comment "mixed bnode property list and triple" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bnode-10.ttl> ;
.
<#turtle-syntax-number-01> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-number-01" ;
rdfs:comment "integer literal" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-number-01.ttl> ;
.
<#turtle-syntax-number-02> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-number-02" ;
rdfs:comment "negative integer literal" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-number-02.ttl> ;
.
<#turtle-syntax-number-03> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-number-03" ;
rdfs:comment "positive integer literal" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-number-03.ttl> ;
.
<#turtle-syntax-number-04> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-number-04" ;
rdfs:comment "decimal literal" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-number-04.ttl> ;
.
<#turtle-syntax-number-05> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-number-05" ;
rdfs:comment "decimal literal (no leading digits)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-number-05.ttl> ;
.
<#turtle-syntax-number-06> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-number-06" ;
rdfs:comment "negative decimal literal" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-number-06.ttl> ;
.
<#turtle-syntax-number-07> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-number-07" ;
rdfs:comment "positive decimal literal" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-number-07.ttl> ;
.
<#turtle-syntax-number-08> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-number-08" ;
rdfs:comment "integer literal with decimal lexical confusion" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-number-08.ttl> ;
.
<#turtle-syntax-number-09> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-number-09" ;
rdfs:comment "double literal" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-number-09.ttl> ;
.
<#turtle-syntax-number-10> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-number-10" ;
rdfs:comment "negative double literal" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-number-10.ttl> ;
.
<#turtle-syntax-number-11> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-number-11" ;
rdfs:comment "double literal no fraction" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-number-11.ttl> ;
.
<#turtle-syntax-datatypes-01> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-datatypes-01" ;
rdfs:comment "xsd:byte literal" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-datatypes-01.ttl> ;
.
<#turtle-syntax-datatypes-02> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-datatypes-02" ;
rdfs:comment "integer as xsd:string" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-datatypes-02.ttl> ;
.
<#turtle-syntax-kw-01> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-kw-01" ;
rdfs:comment "boolean literal (true)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-kw-01.ttl> ;
.
<#turtle-syntax-kw-02> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-kw-02" ;
rdfs:comment "boolean literal (false)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-kw-02.ttl> ;
.
<#turtle-syntax-kw-03> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-kw-03" ;
rdfs:comment "'a' as keyword" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-kw-03.ttl> ;
.
<#turtle-syntax-struct-01> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-struct-01" ;
rdfs:comment "object list" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-struct-01.ttl> ;
.
<#turtle-syntax-struct-02> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-struct-02" ;
rdfs:comment "predicate list with object list" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-struct-02.ttl> ;
.
<#turtle-syntax-struct-03> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-struct-03" ;
rdfs:comment "predicate list with object list and dangling ';'" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-struct-03.ttl> ;
.
<#turtle-syntax-struct-04> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-struct-04" ;
rdfs:comment "predicate list with multiple ;;" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-struct-04.ttl> ;
.
<#turtle-syntax-struct-05> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-struct-05" ;
rdfs:comment "predicate list with multiple ;;" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-struct-05.ttl> ;
.
<#turtle-syntax-lists-01> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-lists-01" ;
rdfs:comment "empty list" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-lists-01.ttl> ;
.
<#turtle-syntax-lists-02> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-lists-02" ;
rdfs:comment "mixed list" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-lists-02.ttl> ;
.
<#turtle-syntax-lists-03> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-lists-03" ;
rdfs:comment "isomorphic list as subject and object" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-lists-03.ttl> ;
.
<#turtle-syntax-lists-04> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-lists-04" ;
rdfs:comment "lists of lists" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-lists-04.ttl> ;
.
<#turtle-syntax-lists-05> rdf:type rdft:TestTurtlePositiveSyntax ;
mf:name "turtle-syntax-lists-05" ;
rdfs:comment "mixed lists with embedded lists" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-lists-05.ttl> ;
.
<#turtle-syntax-bad-uri-01> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-uri-01" ;
rdfs:comment "Bad IRI : space (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-uri-01.ttl> ;
.
<#turtle-syntax-bad-uri-02> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-uri-02" ;
rdfs:comment "Bad IRI : bad escape (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-uri-02.ttl> ;
.
<#turtle-syntax-bad-uri-03> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-uri-03" ;
rdfs:comment "Bad IRI : bad long escape (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-uri-03.ttl> ;
.
<#turtle-syntax-bad-uri-04> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-uri-04" ;
rdfs:comment "Bad IRI : character escapes not allowed (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-uri-04.ttl> ;
.
<#turtle-syntax-bad-uri-05> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-uri-05" ;
rdfs:comment "Bad IRI : character escapes not allowed (2) (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-uri-05.ttl> ;
.
<#turtle-syntax-bad-prefix-01> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-prefix-01" ;
rdfs:comment "No prefix (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-prefix-01.ttl> ;
.
<#turtle-syntax-bad-prefix-02> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-prefix-02" ;
rdfs:comment "No prefix (2) (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-prefix-02.ttl> ;
.
<#turtle-syntax-bad-prefix-03> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-prefix-03" ;
rdfs:comment "@prefix without URI (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-prefix-03.ttl> ;
.
<#turtle-syntax-bad-prefix-04> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-prefix-04" ;
rdfs:comment "@prefix without prefix name (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-prefix-04.ttl> ;
.
<#turtle-syntax-bad-prefix-05> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-prefix-05" ;
rdfs:comment "@prefix without ':' (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-prefix-05.ttl> ;
.
<#turtle-syntax-bad-base-01> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-base-01" ;
rdfs:comment "@base without URI (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-base-01.ttl> ;
.
<#turtle-syntax-bad-base-02> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-base-02" ;
rdfs:comment "@base in wrong case (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-base-02.ttl> ;
.
<#turtle-syntax-bad-base-03> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-base-03" ;
rdfs:comment "BASE without URI (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-base-03.ttl> ;
.
<#turtle-syntax-bad-struct-01> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-struct-01" ;
rdfs:comment "Turtle is not TriG (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-struct-01.ttl> ;
.
<#turtle-syntax-bad-struct-02> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-struct-02" ;
rdfs:comment "Turtle is not N3 (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-struct-02.ttl> ;
.
<#turtle-syntax-bad-struct-03> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-struct-03" ;
rdfs:comment "Turtle is not NQuads (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-struct-03.ttl> ;
.
<#turtle-syntax-bad-struct-04> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-struct-04" ;
rdfs:comment "Turtle does not allow literals-as-subjects (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-struct-04.ttl> ;
.
<#turtle-syntax-bad-struct-05> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-struct-05" ;
rdfs:comment "Turtle does not allow literals-as-predicates (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-struct-05.ttl> ;
.
<#turtle-syntax-bad-struct-06> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-struct-06" ;
rdfs:comment "Turtle does not allow bnodes-as-predicates (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-struct-06.ttl> ;
.
<#turtle-syntax-bad-struct-07> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-struct-07" ;
rdfs:comment "Turtle does not allow labeled bnodes-as-predicates (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-struct-07.ttl> ;
.
<#turtle-syntax-bad-kw-01> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-kw-01" ;
rdfs:comment "'A' is not a keyword (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-kw-01.ttl> ;
.
<#turtle-syntax-bad-kw-02> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-kw-02" ;
rdfs:comment "'a' cannot be used as subject (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-kw-02.ttl> ;
.
<#turtle-syntax-bad-kw-03> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-kw-03" ;
rdfs:comment "'a' cannot be used as object (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-kw-03.ttl> ;
.
<#turtle-syntax-bad-kw-04> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-kw-04" ;
rdfs:comment "'true' cannot be used as subject (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-kw-04.ttl> ;
.
<#turtle-syntax-bad-kw-05> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-kw-05" ;
rdfs:comment "'true' cannot be used as object (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-kw-05.ttl> ;
.
<#turtle-syntax-bad-n3-extras-01> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-n3-extras-01" ;
rdfs:comment "{} fomulae not in Turtle (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-n3-extras-01.ttl> ;
.
<#turtle-syntax-bad-n3-extras-02> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-n3-extras-02" ;
rdfs:comment "= is not Turtle (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-n3-extras-02.ttl> ;
.
<#turtle-syntax-bad-n3-extras-03> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-n3-extras-03" ;
rdfs:comment "N3 paths not in Turtle (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-n3-extras-03.ttl> ;
.
<#turtle-syntax-bad-n3-extras-04> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-n3-extras-04" ;
rdfs:comment "N3 paths not in Turtle (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-n3-extras-04.ttl> ;
.
<#turtle-syntax-bad-n3-extras-05> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-n3-extras-05" ;
rdfs:comment "N3 is...of not in Turtle (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-n3-extras-05.ttl> ;
.
<#turtle-syntax-bad-n3-extras-06> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-n3-extras-06" ;
rdfs:comment "N3 paths not in Turtle (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-n3-extras-06.ttl> ;
.
<#turtle-syntax-bad-n3-extras-07> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-n3-extras-07" ;
rdfs:comment "@keywords is not Turtle (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-n3-extras-07.ttl> ;
.
<#turtle-syntax-bad-n3-extras-08> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-n3-extras-08" ;
rdfs:comment "@keywords is not Turtle (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-n3-extras-08.ttl> ;
.
<#turtle-syntax-bad-n3-extras-09> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-n3-extras-09" ;
rdfs:comment "=> is not Turtle (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-n3-extras-09.ttl> ;
.
<#turtle-syntax-bad-n3-extras-10> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-n3-extras-10" ;
rdfs:comment "<= is not Turtle (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-n3-extras-10.ttl> ;
.
<#turtle-syntax-bad-n3-extras-11> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-n3-extras-11" ;
rdfs:comment "@forSome is not Turtle (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-n3-extras-11.ttl> ;
.
<#turtle-syntax-bad-n3-extras-12> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-n3-extras-12" ;
rdfs:comment "@forAll is not Turtle (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-n3-extras-12.ttl> ;
.
<#turtle-syntax-bad-n3-extras-13> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-n3-extras-13" ;
rdfs:comment "@keywords is not Turtle (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-n3-extras-13.ttl> ;
.
<#turtle-syntax-bad-struct-08> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-struct-08" ;
rdfs:comment "missing '.' (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-struct-08.ttl> ;
.
<#turtle-syntax-bad-struct-09> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-struct-09" ;
rdfs:comment "extra '.' (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-struct-09.ttl> ;
.
<#turtle-syntax-bad-struct-10> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-struct-10" ;
rdfs:comment "extra '.' (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-struct-10.ttl> ;
.
<#turtle-syntax-bad-struct-11> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-struct-11" ;
rdfs:comment "trailing ';' no '.' (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-struct-11.ttl> ;
.
<#turtle-syntax-bad-struct-12> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-struct-12" ;
rdfs:comment "subject, predicate, no object (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-struct-12.ttl> ;
.
<#turtle-syntax-bad-struct-13> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-struct-13" ;
rdfs:comment "subject, predicate, no object (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-struct-13.ttl> ;
.
<#turtle-syntax-bad-struct-14> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-struct-14" ;
rdfs:comment "literal as subject (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-struct-14.ttl> ;
.
<#turtle-syntax-bad-struct-15> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-struct-15" ;
rdfs:comment "literal as predicate (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-struct-15.ttl> ;
.
<#turtle-syntax-bad-struct-16> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-struct-16" ;
rdfs:comment "bnode as predicate (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-struct-16.ttl> ;
.
<#turtle-syntax-bad-struct-17> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-struct-17" ;
rdfs:comment "labeled bnode as predicate (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-struct-17.ttl> ;
.
<#turtle-syntax-bad-lang-01> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-lang-01" ;
rdfs:comment "langString with bad lang (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-lang-01.ttl> ;
.
<#turtle-syntax-bad-esc-01> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-esc-01" ;
rdfs:comment "Bad string escape (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-esc-01.ttl> ;
.
<#turtle-syntax-bad-esc-02> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-esc-02" ;
rdfs:comment "Bad string escape (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-esc-02.ttl> ;
.
<#turtle-syntax-bad-esc-03> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-esc-03" ;
rdfs:comment "Bad string escape (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-esc-03.ttl> ;
.
<#turtle-syntax-bad-esc-04> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-esc-04" ;
rdfs:comment "Bad string escape (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-esc-04.ttl> ;
.
<#turtle-syntax-bad-pname-01> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-pname-01" ;
rdfs:comment "'~' must be escaped in pname (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-pname-01.ttl> ;
.
<#turtle-syntax-bad-pname-02> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-pname-02" ;
rdfs:comment "Bad %-sequence in pname (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-pname-02.ttl> ;
.
<#turtle-syntax-bad-pname-03> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-pname-03" ;
rdfs:comment "Bad unicode escape in pname (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-pname-03.ttl> ;
.
<#turtle-syntax-bad-string-01> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-string-01" ;
rdfs:comment "mismatching string literal open/close (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-string-01.ttl> ;
.
<#turtle-syntax-bad-string-02> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-string-02" ;
rdfs:comment "mismatching string literal open/close (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-string-02.ttl> ;
.
<#turtle-syntax-bad-string-03> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-string-03" ;
rdfs:comment "mismatching string literal long/short (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-string-03.ttl> ;
.
<#turtle-syntax-bad-string-04> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-string-04" ;
rdfs:comment "mismatching long string literal open/close (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-string-04.ttl> ;
.
<#turtle-syntax-bad-string-05> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-string-05" ;
rdfs:comment "Long literal with missing end (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-string-05.ttl> ;
.
<#turtle-syntax-bad-string-06> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-string-06" ;
rdfs:comment "Long literal with extra quote (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-string-06.ttl> ;
.
<#turtle-syntax-bad-string-07> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-string-07" ;
rdfs:comment "Long literal with extra squote (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-string-07.ttl> ;
.
<#turtle-syntax-bad-num-01> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-num-01" ;
rdfs:comment "Bad number format (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-num-01.ttl> ;
.
<#turtle-syntax-bad-num-02> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-num-02" ;
rdfs:comment "Bad number format (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-num-02.ttl> ;
.
<#turtle-syntax-bad-num-03> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-num-03" ;
rdfs:comment "Bad number format (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-num-03.ttl> ;
.
<#turtle-syntax-bad-num-04> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-num-04" ;
rdfs:comment "Bad number format (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-num-04.ttl> ;
.
<#turtle-syntax-bad-num-05> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-num-05" ;
rdfs:comment "Bad number format (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-num-05.ttl> ;
.
<#turtle-eval-struct-01> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-eval-struct-01" ;
rdfs:comment "triple with IRIs" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-eval-struct-01.ttl> ;
mf:result <turtle-eval-struct-01.nt> ;
.
@@ -1819,6 +2093,7 @@
<#turtle-eval-struct-02> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-eval-struct-02" ;
rdfs:comment "triple with IRIs and embedded whitespace" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-eval-struct-02.ttl> ;
mf:result <turtle-eval-struct-02.nt> ;
.
@@ -1826,6 +2101,7 @@
<#turtle-subm-01> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-subm-01" ;
rdfs:comment "Blank subject" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-subm-01.ttl> ;
mf:result <turtle-subm-01.nt> ;
.
@@ -1833,6 +2109,7 @@
<#turtle-subm-02> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-subm-02" ;
rdfs:comment "@prefix and qnames" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-subm-02.ttl> ;
mf:result <turtle-subm-02.nt> ;
.
@@ -1840,6 +2117,7 @@
<#turtle-subm-03> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-subm-03" ;
rdfs:comment ", operator" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-subm-03.ttl> ;
mf:result <turtle-subm-03.nt> ;
.
@@ -1847,6 +2125,7 @@
<#turtle-subm-04> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-subm-04" ;
rdfs:comment "; operator" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-subm-04.ttl> ;
mf:result <turtle-subm-04.nt> ;
.
@@ -1854,6 +2133,7 @@
<#turtle-subm-05> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-subm-05" ;
rdfs:comment "empty [] as subject and object" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-subm-05.ttl> ;
mf:result <turtle-subm-05.nt> ;
.
@@ -1861,6 +2141,7 @@
<#turtle-subm-06> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-subm-06" ;
rdfs:comment "non-empty [] as subject and object" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-subm-06.ttl> ;
mf:result <turtle-subm-06.nt> ;
.
@@ -1868,6 +2149,7 @@
<#turtle-subm-07> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-subm-07" ;
rdfs:comment "'a' as predicate" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-subm-07.ttl> ;
mf:result <turtle-subm-07.nt> ;
.
@@ -1875,6 +2157,7 @@
<#turtle-subm-08> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-subm-08" ;
rdfs:comment "simple collection" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-subm-08.ttl> ;
mf:result <turtle-subm-08.nt> ;
.
@@ -1882,6 +2165,7 @@
<#turtle-subm-09> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-subm-09" ;
rdfs:comment "empty collection" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-subm-09.ttl> ;
mf:result <turtle-subm-09.nt> ;
.
@@ -1889,6 +2173,7 @@
<#turtle-subm-10> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-subm-10" ;
rdfs:comment "integer datatyped literal" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-subm-10.ttl> ;
mf:result <turtle-subm-10.nt> ;
.
@@ -1896,6 +2181,7 @@
<#turtle-subm-11> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-subm-11" ;
rdfs:comment "decimal integer canonicalization" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-subm-11.ttl> ;
mf:result <turtle-subm-11.nt> ;
.
@@ -1903,6 +2189,7 @@
<#turtle-subm-12> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-subm-12" ;
rdfs:comment "- and _ in names and qnames" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-subm-12.ttl> ;
mf:result <turtle-subm-12.nt> ;
.
@@ -1910,6 +2197,7 @@
<#turtle-subm-13> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-subm-13" ;
rdfs:comment "tests for rdf:_<numbers> and other qnames starting with _" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-subm-13.ttl> ;
mf:result <turtle-subm-13.nt> ;
.
@@ -1917,6 +2205,7 @@
<#turtle-subm-14> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-subm-14" ;
rdfs:comment "bare : allowed" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-subm-14.ttl> ;
mf:result <turtle-subm-14.nt> ;
.
@@ -1924,6 +2213,7 @@
<#turtle-subm-15> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-subm-15" ;
rdfs:comment "simple long literal" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-subm-15.ttl> ;
mf:result <turtle-subm-15.nt> ;
.
@@ -1931,6 +2221,7 @@
<#turtle-subm-16> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-subm-16" ;
rdfs:comment "long literals with escapes" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-subm-16.ttl> ;
mf:result <turtle-subm-16.nt> ;
.
@@ -1938,6 +2229,7 @@
<#turtle-subm-17> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-subm-17" ;
rdfs:comment "floating point number" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-subm-17.ttl> ;
mf:result <turtle-subm-17.nt> ;
.
@@ -1945,6 +2237,7 @@
<#turtle-subm-18> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-subm-18" ;
rdfs:comment "empty literals, normal and long variant" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-subm-18.ttl> ;
mf:result <turtle-subm-18.nt> ;
.
@@ -1952,6 +2245,7 @@
<#turtle-subm-19> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-subm-19" ;
rdfs:comment "positive integer, decimal and doubles" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-subm-19.ttl> ;
mf:result <turtle-subm-19.nt> ;
.
@@ -1959,6 +2253,7 @@
<#turtle-subm-20> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-subm-20" ;
rdfs:comment "negative integer, decimal and doubles" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-subm-20.ttl> ;
mf:result <turtle-subm-20.nt> ;
.
@@ -1966,6 +2261,7 @@
<#turtle-subm-21> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-subm-21" ;
rdfs:comment "long literal ending in double quote" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-subm-21.ttl> ;
mf:result <turtle-subm-21.nt> ;
.
@@ -1973,6 +2269,7 @@
<#turtle-subm-22> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-subm-22" ;
rdfs:comment "boolean literals" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-subm-22.ttl> ;
mf:result <turtle-subm-22.nt> ;
.
@@ -1980,6 +2277,7 @@
<#turtle-subm-23> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-subm-23" ;
rdfs:comment "comments" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-subm-23.ttl> ;
mf:result <turtle-subm-23.nt> ;
.
@@ -1987,6 +2285,7 @@
<#turtle-subm-24> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-subm-24" ;
rdfs:comment "no final mewline" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-subm-24.ttl> ;
mf:result <turtle-subm-24.nt> ;
.
@@ -1994,6 +2293,7 @@
<#turtle-subm-25> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-subm-25" ;
rdfs:comment "repeating a @prefix changes pname definition" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-subm-25.ttl> ;
mf:result <turtle-subm-25.nt> ;
.
@@ -2001,6 +2301,7 @@
<#turtle-subm-26> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-subm-26" ;
rdfs:comment "Variations on decimal canonicalization" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-subm-26.ttl> ;
mf:result <turtle-subm-26.nt> ;
.
@@ -2008,6 +2309,7 @@
<#turtle-subm-27> rdf:type rdft:TestTurtleEval ;
mf:name "turtle-subm-27" ;
rdfs:comment "Repeating @base changes base for relative IRI lookup" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-subm-27.ttl> ;
mf:result <turtle-subm-27.nt> ;
.
@@ -2015,32 +2317,71 @@
<#turtle-eval-bad-01> rdf:type rdft:TestTurtleNegativeEval ;
mf:name "turtle-eval-bad-01" ;
rdfs:comment "Bad IRI : good escape, bad charcater (negative evaluation test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-eval-bad-01.ttl> ;
.
<#turtle-eval-bad-02> rdf:type rdft:TestTurtleNegativeEval ;
mf:name "turtle-eval-bad-02" ;
rdfs:comment "Bad IRI : hex 3C is < (negative evaluation test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-eval-bad-02.ttl> ;
.
<#turtle-eval-bad-03> rdf:type rdft:TestTurtleNegativeEval ;
mf:name "turtle-eval-bad-03" ;
rdfs:comment "Bad IRI : hex 3E is (negative evaluation test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-eval-bad-03.ttl> ;
.
<#turtle-eval-bad-04> rdf:type rdft:TestTurtleNegativeEval ;
mf:name "turtle-eval-bad-04" ;
rdfs:comment "Bad IRI : {abc} (negative evaluation test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-eval-bad-04.ttl> ;
.
+# tests requested by Jeremy Carroll
+# http://www.w3.org/2011/rdf-wg/wiki/Turtle_Candidate_Recommendation_Comments#c35
+<#comment_following_localName> rdf:type rdft:TestTurtleEval ;
+ mf:name "comment_following_localName" ;
+ rdfs:comment "comment following localName" ;
+ rdft:approval rdft:Proposed ;
+ mf:action <comment_following_localName.ttl> ;
+ mf:result <IRI_spo.nt> ;
+ .
+
+<#number_sign_following_localName> rdf:type rdft:TestTurtleEval ;
+ mf:name "number_sign_following_localName" ;
+ rdfs:comment "number sign following localName" ;
+ rdft:approval rdft:Proposed ;
+ mf:action <number_sign_following_localName.ttl> ;
+ mf:result <number_sign_following_localName.nt> ;
+ .
+
+<#comment_following_PNAME_NS> rdf:type rdft:TestTurtleEval ;
+ mf:name "comment_following_PNAME_NS" ;
+ rdfs:comment "comment following PNAME_NS" ;
+ rdft:approval rdft:Proposed ;
+ mf:action <comment_following_PNAME_NS.ttl> ;
+ mf:result <comment_following_PNAME_NS.nt> ;
+ .
+
+<#number_sign_following_PNAME_NS> rdf:type rdft:TestTurtleEval ;
+ mf:name "number_sign_following_PNAME_NS" ;
+ rdfs:comment "number sign following PNAME_NS" ;
+ rdft:approval rdft:Proposed ;
+ mf:action <number_sign_following_PNAME_NS.ttl> ;
+ mf:result <number_sign_following_PNAME_NS.nt> ;
+ .
+
# tests from Dave Beckett
# http://www.w3.org/2011/rdf-wg/wiki/Turtle_Candidate_Recommendation_Comments#c28
<#LITERAL_LONG2_with_REVERSE_SOLIDUS> rdf:type rdft:TestTurtleEval ;
mf:name "LITERAL_LONG2_with_REVERSE_SOLIDUS" ;
rdfs:comment "REVERSE SOLIDUS at end of LITERAL_LONG2" ;
+ rdft:approval rdft:Approved ;
mf:action <LITERAL_LONG2_with_REVERSE_SOLIDUS.ttl> ;
mf:result <LITERAL_LONG2_with_REVERSE_SOLIDUS.nt> ;
.
@@ -2048,12 +2389,14 @@
<#turtle-syntax-bad-LITERAL2_with_langtag_and_datatype> rdf:type rdft:TestTurtleNegativeSyntax ;
mf:name "turtle-syntax-bad-num-05" ;
rdfs:comment "Bad number format (negative test)" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-LITERAL2_with_langtag_and_datatype.ttl> ;
.
<#two_LITERAL_LONG2s> rdf:type rdft:TestTurtleEval ;
mf:name "two_LITERAL_LONG2s" ;
rdfs:comment "two LITERAL_LONG2s testing quote delimiter overrun" ;
+ rdft:approval rdft:Approved ;
mf:action <two_LITERAL_LONG2s.ttl> ;
mf:result <two_LITERAL_LONG2s.nt> ;
.
@@ -2061,6 +2404,7 @@
<#langtagged_LONG_with_subtag> rdf:type rdft:TestTurtleEval ;
mf:name "langtagged_LONG_with_subtag" ;
rdfs:comment "langtagged LONG with subtag \"\"\"Cheers\"\"\"@en-UK" ;
+ rdft:approval rdft:Approved ;
mf:action <langtagged_LONG_with_subtag.ttl> ;
mf:result <langtagged_LONG_with_subtag.nt> ;
.
@@ -2071,76 +2415,89 @@
rdf:type rdft:TestTurtleNegativeSyntax ;
rdfs:comment "Blank node label must not end in dot" ;
mf:name "turtle-syntax-bad-blank-label-dot-end" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-blank-label-dot-end.ttl> .
<#turtle-syntax-bad-number-dot-in-anon>
rdf:type rdft:TestTurtleNegativeSyntax ;
rdfs:comment "Dot delimeter may not appear in anonymous nodes" ;
mf:name "turtle-syntax-bad-number-dot-in-anon" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-number-dot-in-anon.ttl> .
<#turtle-syntax-bad-ln-dash-start>
rdf:type rdft:TestTurtleNegativeSyntax ;
rdfs:comment "Local name must not begin with dash" ;
mf:name "turtle-syntax-bad-ln-dash-start" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-ln-dash-start.ttl> .
<#turtle-syntax-bad-ln-escape>
rdf:type rdft:TestTurtleNegativeSyntax ;
rdfs:comment "Bad hex escape in local name" ;
mf:name "turtle-syntax-bad-ln-escape" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-ln-escape.ttl> .
<#turtle-syntax-bad-ln-escape-start>
rdf:type rdft:TestTurtleNegativeSyntax ;
rdfs:comment "Bad hex escape at start of local name" ;
mf:name "turtle-syntax-bad-ln-escape-start" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-ln-escape-start.ttl> .
<#turtle-syntax-bad-ns-dot-end>
rdf:type rdft:TestTurtleNegativeSyntax ;
rdfs:comment "Prefix must not end in dot" ;
mf:name "turtle-syntax-bad-ns-dot-end" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-ns-dot-end.ttl> .
<#turtle-syntax-bad-ns-dot-start>
rdf:type rdft:TestTurtleNegativeSyntax ;
rdfs:comment "Prefix must not start with dot" ;
mf:name "turtle-syntax-bad-ns-dot-start" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-ns-dot-start.ttl> .
<#turtle-syntax-bad-missing-ns-dot-end>
rdf:type rdft:TestTurtleNegativeSyntax ;
rdfs:comment "Prefix must not end in dot (error in triple, not prefix directive like turtle-syntax-bad-ns-dot-end)" ;
mf:name "turtle-syntax-bad-missing-ns-dot-end" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-missing-ns-dot-end.ttl> .
<#turtle-syntax-bad-missing-ns-dot-start>
rdf:type rdft:TestTurtleNegativeSyntax ;
rdfs:comment "Prefix must not start with dot (error in triple, not prefix directive like turtle-syntax-bad-ns-dot-end)" ;
mf:name "turtle-syntax-bad-missing-ns-dot-start" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-bad-missing-ns-dot-start.ttl> .
<#turtle-syntax-ln-dots>
rdf:type rdft:TestTurtlePositiveSyntax ;
rdfs:comment "Dots in pname local names" ;
mf:name "turtle-syntax-ln-dots" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-ln-dots.ttl> .
<#turtle-syntax-ln-colons>
rdf:type rdft:TestTurtlePositiveSyntax ;
rdfs:comment "Colons in pname local names" ;
mf:name "turtle-syntax-ln-colons" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-ln-colons.ttl> .
<#turtle-syntax-ns-dots>
rdf:type rdft:TestTurtlePositiveSyntax ;
rdfs:comment "Dots in namespace names" ;
mf:name "turtle-syntax-ns-dots" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-ns-dots.ttl> .
<#turtle-syntax-blank-label>
rdf:type rdft:TestTurtlePositiveSyntax ;
rdfs:comment "Characters allowed in blank node labels" ;
mf:name "turtle-syntax-blank-label" ;
+ rdft:approval rdft:Approved ;
mf:action <turtle-syntax-blank-label.ttl> .
diff --git a/tests/tests-ttl/negative_numeric.nt b/tests/TurtleTests/negative_numeric.nt
index 4baf628d..4baf628d 100644
--- a/tests/tests-ttl/negative_numeric.nt
+++ b/tests/TurtleTests/negative_numeric.nt
diff --git a/tests/tests-ttl/negative_numeric.ttl b/tests/TurtleTests/negative_numeric.ttl
index a6a7f57b..a6a7f57b 100644
--- a/tests/tests-ttl/negative_numeric.ttl
+++ b/tests/TurtleTests/negative_numeric.ttl
diff --git a/tests/tests-ttl/nested_blankNodePropertyLists.nt b/tests/TurtleTests/nested_blankNodePropertyLists.nt
index 5284c007..5284c007 100644
--- a/tests/tests-ttl/nested_blankNodePropertyLists.nt
+++ b/tests/TurtleTests/nested_blankNodePropertyLists.nt
diff --git a/tests/tests-ttl/nested_blankNodePropertyLists.ttl b/tests/TurtleTests/nested_blankNodePropertyLists.ttl
index a3e4681c..a3e4681c 100644
--- a/tests/tests-ttl/nested_blankNodePropertyLists.ttl
+++ b/tests/TurtleTests/nested_blankNodePropertyLists.ttl
diff --git a/tests/tests-ttl/nested_collection.nt b/tests/TurtleTests/nested_collection.nt
index eaea2847..eaea2847 100644
--- a/tests/tests-ttl/nested_collection.nt
+++ b/tests/TurtleTests/nested_collection.nt
diff --git a/tests/tests-ttl/nested_collection.ttl b/tests/TurtleTests/nested_collection.ttl
index 944e7c6b..944e7c6b 100644
--- a/tests/tests-ttl/nested_collection.ttl
+++ b/tests/TurtleTests/nested_collection.ttl
diff --git a/tests/TurtleTests/number_sign_following_PNAME_NS.nt b/tests/TurtleTests/number_sign_following_PNAME_NS.nt
new file mode 100644
index 00000000..82d9629a
--- /dev/null
+++ b/tests/TurtleTests/number_sign_following_PNAME_NS.nt
@@ -0,0 +1 @@
+<http://a.example/s> <http://a.example/p> <http://a.example/#numbersign> .
diff --git a/tests/TurtleTests/number_sign_following_PNAME_NS.ttl b/tests/TurtleTests/number_sign_following_PNAME_NS.ttl
new file mode 100644
index 00000000..2003fa4d
--- /dev/null
+++ b/tests/TurtleTests/number_sign_following_PNAME_NS.ttl
@@ -0,0 +1,3 @@
+@prefix p: <http://a.example/>.
+<http://a.example/s> <http://a.example/p> p:\#numbersign
+.
diff --git a/tests/tests-ttl/LITERAL1_all_controls.ttl.thru b/tests/TurtleTests/number_sign_following_PNAME_NS.ttl.thru
index e69de29b..e69de29b 100644
--- a/tests/tests-ttl/LITERAL1_all_controls.ttl.thru
+++ b/tests/TurtleTests/number_sign_following_PNAME_NS.ttl.thru
diff --git a/tests/TurtleTests/number_sign_following_localName.nt b/tests/TurtleTests/number_sign_following_localName.nt
new file mode 100644
index 00000000..5ae57b8d
--- /dev/null
+++ b/tests/TurtleTests/number_sign_following_localName.nt
@@ -0,0 +1 @@
+<http://a.example/s> <http://a.example/p> <http://a.example/o#numbersign> .
diff --git a/tests/TurtleTests/number_sign_following_localName.ttl b/tests/TurtleTests/number_sign_following_localName.ttl
new file mode 100644
index 00000000..a0e39ecd
--- /dev/null
+++ b/tests/TurtleTests/number_sign_following_localName.ttl
@@ -0,0 +1,3 @@
+@prefix p: <http://a.example/> .
+<http://a.example/s> <http://a.example/p> p:o\#numbersign
+.
diff --git a/tests/tests-ttl/numeric_with_leading_0.nt b/tests/TurtleTests/numeric_with_leading_0.nt
index 1df5c472..1df5c472 100644
--- a/tests/tests-ttl/numeric_with_leading_0.nt
+++ b/tests/TurtleTests/numeric_with_leading_0.nt
diff --git a/tests/tests-ttl/numeric_with_leading_0.ttl b/tests/TurtleTests/numeric_with_leading_0.ttl
index a5eac209..a5eac209 100644
--- a/tests/tests-ttl/numeric_with_leading_0.ttl
+++ b/tests/TurtleTests/numeric_with_leading_0.ttl
diff --git a/tests/tests-ttl/objectList_with_two_objects.nt b/tests/TurtleTests/objectList_with_two_objects.nt
index 7f8e9c0f..7f8e9c0f 100644
--- a/tests/tests-ttl/objectList_with_two_objects.nt
+++ b/tests/TurtleTests/objectList_with_two_objects.nt
diff --git a/tests/tests-ttl/objectList_with_two_objects.ttl b/tests/TurtleTests/objectList_with_two_objects.ttl
index b12f02d1..b12f02d1 100644
--- a/tests/tests-ttl/objectList_with_two_objects.ttl
+++ b/tests/TurtleTests/objectList_with_two_objects.ttl
diff --git a/tests/tests-ttl/old_style_base.ttl b/tests/TurtleTests/old_style_base.ttl
index f0f4c03c..f0f4c03c 100644
--- a/tests/tests-ttl/old_style_base.ttl
+++ b/tests/TurtleTests/old_style_base.ttl
diff --git a/tests/tests-ttl/old_style_prefix.ttl b/tests/TurtleTests/old_style_prefix.ttl
index 59595672..59595672 100644
--- a/tests/tests-ttl/old_style_prefix.ttl
+++ b/tests/TurtleTests/old_style_prefix.ttl
diff --git a/tests/tests-ttl/percent_escaped_localName.nt b/tests/TurtleTests/percent_escaped_localName.nt
index e0af4b62..e0af4b62 100644
--- a/tests/tests-ttl/percent_escaped_localName.nt
+++ b/tests/TurtleTests/percent_escaped_localName.nt
diff --git a/tests/tests-ttl/percent_escaped_localName.ttl b/tests/TurtleTests/percent_escaped_localName.ttl
index 0564ccab..0564ccab 100644
--- a/tests/tests-ttl/percent_escaped_localName.ttl
+++ b/tests/TurtleTests/percent_escaped_localName.ttl
diff --git a/tests/tests-ttl/positive_numeric.nt b/tests/TurtleTests/positive_numeric.nt
index 96e6086a..96e6086a 100644
--- a/tests/tests-ttl/positive_numeric.nt
+++ b/tests/TurtleTests/positive_numeric.nt
diff --git a/tests/tests-ttl/positive_numeric.ttl b/tests/TurtleTests/positive_numeric.ttl
index 606691d9..606691d9 100644
--- a/tests/tests-ttl/positive_numeric.ttl
+++ b/tests/TurtleTests/positive_numeric.ttl
diff --git a/tests/tests-ttl/predicateObjectList_with_two_objectLists.nt b/tests/TurtleTests/predicateObjectList_with_two_objectLists.nt
index 274182c7..274182c7 100644
--- a/tests/tests-ttl/predicateObjectList_with_two_objectLists.nt
+++ b/tests/TurtleTests/predicateObjectList_with_two_objectLists.nt
diff --git a/tests/tests-ttl/predicateObjectList_with_two_objectLists.ttl b/tests/TurtleTests/predicateObjectList_with_two_objectLists.ttl
index 337b132f..337b132f 100644
--- a/tests/tests-ttl/predicateObjectList_with_two_objectLists.ttl
+++ b/tests/TurtleTests/predicateObjectList_with_two_objectLists.ttl
diff --git a/tests/tests-ttl/prefix_only_IRI.ttl b/tests/TurtleTests/prefix_only_IRI.ttl
index 9ff66603..9ff66603 100644
--- a/tests/tests-ttl/prefix_only_IRI.ttl
+++ b/tests/TurtleTests/prefix_only_IRI.ttl
diff --git a/tests/tests-ttl/prefix_reassigned_and_used.nt b/tests/TurtleTests/prefix_reassigned_and_used.nt
index 68bc9efe..68bc9efe 100644
--- a/tests/tests-ttl/prefix_reassigned_and_used.nt
+++ b/tests/TurtleTests/prefix_reassigned_and_used.nt
diff --git a/tests/tests-ttl/prefix_reassigned_and_used.ttl b/tests/TurtleTests/prefix_reassigned_and_used.ttl
index 1f948597..1f948597 100644
--- a/tests/tests-ttl/prefix_reassigned_and_used.ttl
+++ b/tests/TurtleTests/prefix_reassigned_and_used.ttl
diff --git a/tests/TurtleTests/prefix_with_PN_CHARS_BASE_character_boundaries.ttl b/tests/TurtleTests/prefix_with_PN_CHARS_BASE_character_boundaries.ttl
new file mode 100644
index 00000000..bc436bd2
--- /dev/null
+++ b/tests/TurtleTests/prefix_with_PN_CHARS_BASE_character_boundaries.ttl
@@ -0,0 +1,2 @@
+@prefix AZazÀÖØöø˿ͰͽͿ῿‌‍⁰↏Ⰰ⿯、퟿豈﷏ﷰ�𐀀󯿽: <http://a.example/> .
+<http://a.example/s> <http://a.example/p> AZazÀÖØöø˿ͰͽͿ῿‌‍⁰↏Ⰰ⿯、퟿豈﷏ﷰ�𐀀󯿽:o .
diff --git a/tests/TurtleTests/prefix_with_non_leading_extras.ttl b/tests/TurtleTests/prefix_with_non_leading_extras.ttl
new file mode 100644
index 00000000..193460a8
--- /dev/null
+++ b/tests/TurtleTests/prefix_with_non_leading_extras.ttl
@@ -0,0 +1,2 @@
+@prefix a·̀ͯ‿.⁀: <http://a.example/>.
+a·̀ͯ‿.⁀:s <http://a.example/p> <http://a.example/o> .
diff --git a/tests/tests-ttl/prefixed_IRI_object.ttl b/tests/TurtleTests/prefixed_IRI_object.ttl
index c2d50362..c2d50362 100644
--- a/tests/tests-ttl/prefixed_IRI_object.ttl
+++ b/tests/TurtleTests/prefixed_IRI_object.ttl
diff --git a/tests/tests-ttl/prefixed_IRI_predicate.ttl b/tests/TurtleTests/prefixed_IRI_predicate.ttl
index 2c1e5cc7..2c1e5cc7 100644
--- a/tests/tests-ttl/prefixed_IRI_predicate.ttl
+++ b/tests/TurtleTests/prefixed_IRI_predicate.ttl
diff --git a/tests/tests-ttl/prefixed_name_datatype.ttl b/tests/TurtleTests/prefixed_name_datatype.ttl
index 4a526073..4a526073 100644
--- a/tests/tests-ttl/prefixed_name_datatype.ttl
+++ b/tests/TurtleTests/prefixed_name_datatype.ttl
diff --git a/tests/tests-ttl/repeated_semis_at_end.ttl b/tests/TurtleTests/repeated_semis_at_end.ttl
index 8a4d9356..8a4d9356 100644
--- a/tests/tests-ttl/repeated_semis_at_end.ttl
+++ b/tests/TurtleTests/repeated_semis_at_end.ttl
diff --git a/tests/tests-ttl/repeated_semis_not_at_end.nt b/tests/TurtleTests/repeated_semis_not_at_end.nt
index 9ac6005f..9ac6005f 100644
--- a/tests/tests-ttl/repeated_semis_not_at_end.nt
+++ b/tests/TurtleTests/repeated_semis_not_at_end.nt
diff --git a/tests/tests-ttl/repeated_semis_not_at_end.ttl b/tests/TurtleTests/repeated_semis_not_at_end.ttl
index 3c8144f3..3c8144f3 100644
--- a/tests/tests-ttl/repeated_semis_not_at_end.ttl
+++ b/tests/TurtleTests/repeated_semis_not_at_end.ttl
diff --git a/tests/TurtleTests/reserved_escaped_localName.nt b/tests/TurtleTests/reserved_escaped_localName.nt
new file mode 100644
index 00000000..1ee4f32e
--- /dev/null
+++ b/tests/TurtleTests/reserved_escaped_localName.nt
@@ -0,0 +1 @@
+<http://a.example/_~.-!$&'()*+,;=/?#@%00> <http://a.example/p> <http://a.example/o> .
diff --git a/tests/TurtleTests/reserved_escaped_localName.ttl b/tests/TurtleTests/reserved_escaped_localName.ttl
new file mode 100644
index 00000000..ae97f8af
--- /dev/null
+++ b/tests/TurtleTests/reserved_escaped_localName.ttl
@@ -0,0 +1,2 @@
+@prefix p: <http://a.example/>.
+p:\_\~\.\-\!\$\&\'\(\)\*\+\,\;\=\/\?\#\@\%00 <http://a.example/p> <http://a.example/o> .
diff --git a/tests/tests-ttl/turtle-syntax-file-01.ttl b/tests/TurtleTests/reserved_escaped_localName.ttl.thru
index e69de29b..e69de29b 100644
--- a/tests/tests-ttl/turtle-syntax-file-01.ttl
+++ b/tests/TurtleTests/reserved_escaped_localName.ttl.thru
diff --git a/tests/tests-ttl/sole_blankNodePropertyList.nt b/tests/TurtleTests/sole_blankNodePropertyList.nt
index b48df9a7..b48df9a7 100644
--- a/tests/tests-ttl/sole_blankNodePropertyList.nt
+++ b/tests/TurtleTests/sole_blankNodePropertyList.nt
diff --git a/tests/tests-ttl/sole_blankNodePropertyList.ttl b/tests/TurtleTests/sole_blankNodePropertyList.ttl
index 5cc300f3..5cc300f3 100644
--- a/tests/tests-ttl/sole_blankNodePropertyList.ttl
+++ b/tests/TurtleTests/sole_blankNodePropertyList.ttl
diff --git a/tests/TurtleTests/turtle-eval-bad-01.ttl b/tests/TurtleTests/turtle-eval-bad-01.ttl
new file mode 100644
index 00000000..c9c458e8
--- /dev/null
+++ b/tests/TurtleTests/turtle-eval-bad-01.ttl
@@ -0,0 +1,2 @@
+# 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> .
diff --git a/tests/TurtleTests/turtle-eval-bad-02.ttl b/tests/TurtleTests/turtle-eval-bad-02.ttl
new file mode 100644
index 00000000..f2be6ea5
--- /dev/null
+++ b/tests/TurtleTests/turtle-eval-bad-02.ttl
@@ -0,0 +1,2 @@
+# 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> .
diff --git a/tests/TurtleTests/turtle-eval-bad-03.ttl b/tests/TurtleTests/turtle-eval-bad-03.ttl
new file mode 100644
index 00000000..1aec7ff9
--- /dev/null
+++ b/tests/TurtleTests/turtle-eval-bad-03.ttl
@@ -0,0 +1,2 @@
+# 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> .
diff --git a/tests/TurtleTests/turtle-eval-bad-04.ttl b/tests/TurtleTests/turtle-eval-bad-04.ttl
new file mode 100644
index 00000000..4b7601b3
--- /dev/null
+++ b/tests/TurtleTests/turtle-eval-bad-04.ttl
@@ -0,0 +1,2 @@
+# Bad IRI
+<http://www.w3.org/2013/TurtleTests/{abc}> <http://www.w3.org/2013/TurtleTests/p> <http://www.w3.org/2013/TurtleTests/o> .
diff --git a/tests/TurtleTests/turtle-eval-struct-01.nt b/tests/TurtleTests/turtle-eval-struct-01.nt
new file mode 100644
index 00000000..2e2d5baf
--- /dev/null
+++ b/tests/TurtleTests/turtle-eval-struct-01.nt
@@ -0,0 +1 @@
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> <http://www.w3.org/2013/TurtleTests/o> .
diff --git a/tests/TurtleTests/turtle-eval-struct-01.ttl b/tests/TurtleTests/turtle-eval-struct-01.ttl
new file mode 100644
index 00000000..2e2d5baf
--- /dev/null
+++ b/tests/TurtleTests/turtle-eval-struct-01.ttl
@@ -0,0 +1 @@
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> <http://www.w3.org/2013/TurtleTests/o> .
diff --git a/tests/TurtleTests/turtle-eval-struct-02.nt b/tests/TurtleTests/turtle-eval-struct-02.nt
new file mode 100644
index 00000000..6cdc856a
--- /dev/null
+++ b/tests/TurtleTests/turtle-eval-struct-02.nt
@@ -0,0 +1,2 @@
+<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> .
diff --git a/tests/TurtleTests/turtle-eval-struct-02.ttl b/tests/TurtleTests/turtle-eval-struct-02.ttl
new file mode 100644
index 00000000..45b9ea05
--- /dev/null
+++ b/tests/TurtleTests/turtle-eval-struct-02.ttl
@@ -0,0 +1,4 @@
+<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> ;
+ .
diff --git a/tests/TurtleTests/turtle-subm-01.nt b/tests/TurtleTests/turtle-subm-01.nt
new file mode 100644
index 00000000..9efa50de
--- /dev/null
+++ b/tests/TurtleTests/turtle-subm-01.nt
@@ -0,0 +1 @@
+_:b1 <http://www.w3.org/2013/TurtleTests/turtle-subm-01.ttl#x> <http://www.w3.org/2013/TurtleTests/turtle-subm-01.ttl#y> .
diff --git a/tests/tests-ttl/turtle-subm-01.ttl b/tests/TurtleTests/turtle-subm-01.ttl
index 78da35e6..78da35e6 100644
--- a/tests/tests-ttl/turtle-subm-01.ttl
+++ b/tests/TurtleTests/turtle-subm-01.ttl
diff --git a/tests/tests-ttl/turtle-subm-02.nt b/tests/TurtleTests/turtle-subm-02.nt
index 5ccb5bd2..5ccb5bd2 100644
--- a/tests/tests-ttl/turtle-subm-02.nt
+++ b/tests/TurtleTests/turtle-subm-02.nt
diff --git a/tests/tests-ttl/turtle-subm-02.ttl b/tests/TurtleTests/turtle-subm-02.ttl
index 9070d2c4..9070d2c4 100644
--- a/tests/tests-ttl/turtle-subm-02.ttl
+++ b/tests/TurtleTests/turtle-subm-02.ttl
diff --git a/tests/tests-ttl/turtle-subm-03.nt b/tests/TurtleTests/turtle-subm-03.nt
index 99732ab3..99732ab3 100644
--- a/tests/tests-ttl/turtle-subm-03.nt
+++ b/tests/TurtleTests/turtle-subm-03.nt
diff --git a/tests/tests-ttl/turtle-subm-03.ttl b/tests/TurtleTests/turtle-subm-03.ttl
index a623f3c1..a623f3c1 100644
--- a/tests/tests-ttl/turtle-subm-03.ttl
+++ b/tests/TurtleTests/turtle-subm-03.ttl
diff --git a/tests/tests-ttl/turtle-subm-04.nt b/tests/TurtleTests/turtle-subm-04.nt
index d6ce9e8f..d6ce9e8f 100644
--- a/tests/tests-ttl/turtle-subm-04.nt
+++ b/tests/TurtleTests/turtle-subm-04.nt
diff --git a/tests/tests-ttl/turtle-subm-04.ttl b/tests/TurtleTests/turtle-subm-04.ttl
index 9179fa50..9179fa50 100644
--- a/tests/tests-ttl/turtle-subm-04.ttl
+++ b/tests/TurtleTests/turtle-subm-04.ttl
diff --git a/tests/tests-ttl/turtle-subm-05.nt b/tests/TurtleTests/turtle-subm-05.nt
index d5d01526..d5d01526 100644
--- a/tests/tests-ttl/turtle-subm-05.nt
+++ b/tests/TurtleTests/turtle-subm-05.nt
diff --git a/tests/tests-ttl/turtle-subm-05.ttl b/tests/TurtleTests/turtle-subm-05.ttl
index c5181479..c5181479 100644
--- a/tests/tests-ttl/turtle-subm-05.ttl
+++ b/tests/TurtleTests/turtle-subm-05.ttl
diff --git a/tests/tests-ttl/turtle-subm-06.nt b/tests/TurtleTests/turtle-subm-06.nt
index d440197f..d440197f 100644
--- a/tests/tests-ttl/turtle-subm-06.nt
+++ b/tests/TurtleTests/turtle-subm-06.nt
diff --git a/tests/tests-ttl/turtle-subm-06.ttl b/tests/TurtleTests/turtle-subm-06.ttl
index adcbcabd..adcbcabd 100644
--- a/tests/tests-ttl/turtle-subm-06.ttl
+++ b/tests/TurtleTests/turtle-subm-06.ttl
diff --git a/tests/tests-ttl/turtle-subm-07.nt b/tests/TurtleTests/turtle-subm-07.nt
index 49961ea6..49961ea6 100644
--- a/tests/tests-ttl/turtle-subm-07.nt
+++ b/tests/TurtleTests/turtle-subm-07.nt
diff --git a/tests/tests-ttl/turtle-subm-07.ttl b/tests/TurtleTests/turtle-subm-07.ttl
index 9c1005cc..9c1005cc 100644
--- a/tests/tests-ttl/turtle-subm-07.ttl
+++ b/tests/TurtleTests/turtle-subm-07.ttl
diff --git a/tests/tests-ttl/turtle-subm-08.nt b/tests/TurtleTests/turtle-subm-08.nt
index e62cede5..e62cede5 100644
--- a/tests/tests-ttl/turtle-subm-08.nt
+++ b/tests/TurtleTests/turtle-subm-08.nt
diff --git a/tests/tests-ttl/turtle-subm-08.ttl b/tests/TurtleTests/turtle-subm-08.ttl
index 84559403..84559403 100644
--- a/tests/tests-ttl/turtle-subm-08.ttl
+++ b/tests/TurtleTests/turtle-subm-08.ttl
diff --git a/tests/tests-ttl/turtle-subm-09.nt b/tests/TurtleTests/turtle-subm-09.nt
index a77939cd..a77939cd 100644
--- a/tests/tests-ttl/turtle-subm-09.nt
+++ b/tests/TurtleTests/turtle-subm-09.nt
diff --git a/tests/tests-ttl/turtle-subm-09.ttl b/tests/TurtleTests/turtle-subm-09.ttl
index adce0a20..adce0a20 100644
--- a/tests/tests-ttl/turtle-subm-09.ttl
+++ b/tests/TurtleTests/turtle-subm-09.ttl
diff --git a/tests/tests-ttl/turtle-subm-10.nt b/tests/TurtleTests/turtle-subm-10.nt
index c7164085..c7164085 100644
--- a/tests/tests-ttl/turtle-subm-10.nt
+++ b/tests/TurtleTests/turtle-subm-10.nt
diff --git a/tests/tests-ttl/turtle-subm-10.ttl b/tests/TurtleTests/turtle-subm-10.ttl
index 0afe1b0a..0afe1b0a 100644
--- a/tests/tests-ttl/turtle-subm-10.ttl
+++ b/tests/TurtleTests/turtle-subm-10.ttl
diff --git a/tests/tests-ttl/turtle-subm-11.nt b/tests/TurtleTests/turtle-subm-11.nt
index ff88aa6f..ff88aa6f 100644
--- a/tests/tests-ttl/turtle-subm-11.nt
+++ b/tests/TurtleTests/turtle-subm-11.nt
diff --git a/tests/tests-ttl/turtle-subm-11.ttl b/tests/TurtleTests/turtle-subm-11.ttl
index 5d36360e..5d36360e 100644
--- a/tests/tests-ttl/turtle-subm-11.ttl
+++ b/tests/TurtleTests/turtle-subm-11.ttl
diff --git a/tests/tests-ttl/turtle-subm-12.nt b/tests/TurtleTests/turtle-subm-12.nt
index f936a5b6..f936a5b6 100644
--- a/tests/tests-ttl/turtle-subm-12.nt
+++ b/tests/TurtleTests/turtle-subm-12.nt
diff --git a/tests/tests-ttl/turtle-subm-12.ttl b/tests/TurtleTests/turtle-subm-12.ttl
index 3de1a43f..3de1a43f 100644
--- a/tests/tests-ttl/turtle-subm-12.ttl
+++ b/tests/TurtleTests/turtle-subm-12.ttl
diff --git a/tests/tests-ttl/turtle-subm-13.nt b/tests/TurtleTests/turtle-subm-13.nt
index 67404a59..67404a59 100644
--- a/tests/tests-ttl/turtle-subm-13.nt
+++ b/tests/TurtleTests/turtle-subm-13.nt
diff --git a/tests/tests-ttl/turtle-subm-13.ttl b/tests/TurtleTests/turtle-subm-13.ttl
index 1fed9f5e..1fed9f5e 100644
--- a/tests/tests-ttl/turtle-subm-13.ttl
+++ b/tests/TurtleTests/turtle-subm-13.ttl
diff --git a/tests/tests-ttl/turtle-subm-14.nt b/tests/TurtleTests/turtle-subm-14.nt
index 195a1af7..195a1af7 100644
--- a/tests/tests-ttl/turtle-subm-14.nt
+++ b/tests/TurtleTests/turtle-subm-14.nt
diff --git a/tests/tests-ttl/turtle-subm-14.ttl b/tests/TurtleTests/turtle-subm-14.ttl
index a8be95be..a8be95be 100644
--- a/tests/tests-ttl/turtle-subm-14.ttl
+++ b/tests/TurtleTests/turtle-subm-14.ttl
diff --git a/tests/tests-ttl/turtle-subm-15.nt b/tests/TurtleTests/turtle-subm-15.nt
index 466edbb2..466edbb2 100644
--- a/tests/tests-ttl/turtle-subm-15.nt
+++ b/tests/TurtleTests/turtle-subm-15.nt
diff --git a/tests/tests-ttl/turtle-subm-15.ttl b/tests/TurtleTests/turtle-subm-15.ttl
index 86c453bd..86c453bd 100644
--- a/tests/tests-ttl/turtle-subm-15.ttl
+++ b/tests/TurtleTests/turtle-subm-15.ttl
diff --git a/tests/tests-ttl/turtle-subm-16.nt b/tests/TurtleTests/turtle-subm-16.nt
index 7726bbfc..7726bbfc 100644
--- a/tests/tests-ttl/turtle-subm-16.nt
+++ b/tests/TurtleTests/turtle-subm-16.nt
diff --git a/tests/tests-ttl/turtle-subm-16.ttl b/tests/TurtleTests/turtle-subm-16.ttl
index f5482d4a..f5482d4a 100644
--- a/tests/tests-ttl/turtle-subm-16.ttl
+++ b/tests/TurtleTests/turtle-subm-16.ttl
diff --git a/tests/tests-ttl/turtle-subm-17.nt b/tests/TurtleTests/turtle-subm-17.nt
index 2e2dbe40..2e2dbe40 100644
--- a/tests/tests-ttl/turtle-subm-17.nt
+++ b/tests/TurtleTests/turtle-subm-17.nt
diff --git a/tests/tests-ttl/turtle-subm-17.ttl b/tests/TurtleTests/turtle-subm-17.ttl
index 9de0c07b..9de0c07b 100644
--- a/tests/tests-ttl/turtle-subm-17.ttl
+++ b/tests/TurtleTests/turtle-subm-17.ttl
diff --git a/tests/tests-ttl/turtle-subm-18.nt b/tests/TurtleTests/turtle-subm-18.nt
index fff2da56..fff2da56 100644
--- a/tests/tests-ttl/turtle-subm-18.nt
+++ b/tests/TurtleTests/turtle-subm-18.nt
diff --git a/tests/tests-ttl/turtle-subm-18.ttl b/tests/TurtleTests/turtle-subm-18.ttl
index 37a9a4f3..37a9a4f3 100644
--- a/tests/tests-ttl/turtle-subm-18.ttl
+++ b/tests/TurtleTests/turtle-subm-18.ttl
diff --git a/tests/tests-ttl/turtle-subm-19.nt b/tests/TurtleTests/turtle-subm-19.nt
index d5dca690..d5dca690 100644
--- a/tests/tests-ttl/turtle-subm-19.nt
+++ b/tests/TurtleTests/turtle-subm-19.nt
diff --git a/tests/tests-ttl/turtle-subm-19.ttl b/tests/TurtleTests/turtle-subm-19.ttl
index a8e8dc15..a8e8dc15 100644
--- a/tests/tests-ttl/turtle-subm-19.ttl
+++ b/tests/TurtleTests/turtle-subm-19.ttl
diff --git a/tests/tests-ttl/turtle-subm-20.nt b/tests/TurtleTests/turtle-subm-20.nt
index 3d0f970e..3d0f970e 100644
--- a/tests/tests-ttl/turtle-subm-20.nt
+++ b/tests/TurtleTests/turtle-subm-20.nt
diff --git a/tests/tests-ttl/turtle-subm-20.ttl b/tests/TurtleTests/turtle-subm-20.ttl
index 9b1a725a..9b1a725a 100644
--- a/tests/tests-ttl/turtle-subm-20.ttl
+++ b/tests/TurtleTests/turtle-subm-20.ttl
diff --git a/tests/tests-ttl/turtle-subm-21.nt b/tests/TurtleTests/turtle-subm-21.nt
index fde31312..fde31312 100644
--- a/tests/tests-ttl/turtle-subm-21.nt
+++ b/tests/TurtleTests/turtle-subm-21.nt
diff --git a/tests/tests-ttl/turtle-subm-21.ttl b/tests/TurtleTests/turtle-subm-21.ttl
index 9f5360af..9f5360af 100644
--- a/tests/tests-ttl/turtle-subm-21.ttl
+++ b/tests/TurtleTests/turtle-subm-21.ttl
diff --git a/tests/tests-ttl/turtle-subm-22.nt b/tests/TurtleTests/turtle-subm-22.nt
index 5a70bff1..5a70bff1 100644
--- a/tests/tests-ttl/turtle-subm-22.nt
+++ b/tests/TurtleTests/turtle-subm-22.nt
diff --git a/tests/tests-ttl/turtle-subm-22.ttl b/tests/TurtleTests/turtle-subm-22.ttl
index 25f3b757..25f3b757 100644
--- a/tests/tests-ttl/turtle-subm-22.ttl
+++ b/tests/TurtleTests/turtle-subm-22.ttl
diff --git a/tests/tests-ttl/turtle-subm-23.nt b/tests/TurtleTests/turtle-subm-23.nt
index 1a38415f..1a38415f 100644
--- a/tests/tests-ttl/turtle-subm-23.nt
+++ b/tests/TurtleTests/turtle-subm-23.nt
diff --git a/tests/tests-ttl/turtle-subm-23.ttl b/tests/TurtleTests/turtle-subm-23.ttl
index 310349da..310349da 100644
--- a/tests/tests-ttl/turtle-subm-23.ttl
+++ b/tests/TurtleTests/turtle-subm-23.ttl
diff --git a/tests/tests-ttl/turtle-subm-24.nt b/tests/TurtleTests/turtle-subm-24.nt
index ad105cf4..ad105cf4 100644
--- a/tests/tests-ttl/turtle-subm-24.nt
+++ b/tests/TurtleTests/turtle-subm-24.nt
diff --git a/tests/tests-ttl/turtle-subm-24.ttl b/tests/TurtleTests/turtle-subm-24.ttl
index 0667c6b4..0667c6b4 100644
--- a/tests/tests-ttl/turtle-subm-24.ttl
+++ b/tests/TurtleTests/turtle-subm-24.ttl
diff --git a/tests/tests-ttl/turtle-subm-25.nt b/tests/TurtleTests/turtle-subm-25.nt
index 7da0635b..7da0635b 100644
--- a/tests/tests-ttl/turtle-subm-25.nt
+++ b/tests/TurtleTests/turtle-subm-25.nt
diff --git a/tests/tests-ttl/turtle-subm-25.ttl b/tests/TurtleTests/turtle-subm-25.ttl
index 569023c8..569023c8 100644
--- a/tests/tests-ttl/turtle-subm-25.ttl
+++ b/tests/TurtleTests/turtle-subm-25.ttl
diff --git a/tests/tests-ttl/turtle-subm-26.nt b/tests/TurtleTests/turtle-subm-26.nt
index 7357dd40..7357dd40 100644
--- a/tests/tests-ttl/turtle-subm-26.nt
+++ b/tests/TurtleTests/turtle-subm-26.nt
diff --git a/tests/tests-ttl/turtle-subm-26.ttl b/tests/TurtleTests/turtle-subm-26.ttl
index 7357dd40..7357dd40 100644
--- a/tests/tests-ttl/turtle-subm-26.ttl
+++ b/tests/TurtleTests/turtle-subm-26.ttl
diff --git a/tests/tests-ttl/turtle-subm-27.nt b/tests/TurtleTests/turtle-subm-27.nt
index c7f5baf4..f9ebfef1 100644
--- a/tests/tests-ttl/turtle-subm-27.nt
+++ b/tests/TurtleTests/turtle-subm-27.nt
@@ -1,4 +1,4 @@
-<http://example/base/a1> <http://example/base/b1> <http://example/base/c1> .
+<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> .
diff --git a/tests/tests-ttl/turtle-subm-27.ttl b/tests/TurtleTests/turtle-subm-27.ttl
index dc3cfffb..ad39c024 100644
--- a/tests/tests-ttl/turtle-subm-27.ttl
+++ b/tests/TurtleTests/turtle-subm-27.ttl
@@ -1,4 +1,4 @@
-# In-scope base URI is <http://example/base/turtle-subm-27.ttl> at this point
+# In-scope base URI is <http://www.w3.org/2013/TurtleTests/turtle-subm-27.ttl> at this point
<a1> <b1> <c1> .
@base <http://example.org/ns/> .
# In-scope base URI is http://example.org/ns/ at this point
diff --git a/tests/tests-ttl/turtle-syntax-bad-LITERAL2_with_langtag_and_datatype.ttl b/tests/TurtleTests/turtle-syntax-bad-LITERAL2_with_langtag_and_datatype.ttl
index 56180417..56180417 100644
--- a/tests/tests-ttl/turtle-syntax-bad-LITERAL2_with_langtag_and_datatype.ttl
+++ b/tests/TurtleTests/turtle-syntax-bad-LITERAL2_with_langtag_and_datatype.ttl
diff --git a/tests/tests-ttl/turtle-syntax-bad-base-01.ttl b/tests/TurtleTests/turtle-syntax-bad-base-01.ttl
index 7b0412f8..7b0412f8 100644
--- a/tests/tests-ttl/turtle-syntax-bad-base-01.ttl
+++ b/tests/TurtleTests/turtle-syntax-bad-base-01.ttl
diff --git a/tests/TurtleTests/turtle-syntax-bad-base-02.ttl b/tests/TurtleTests/turtle-syntax-bad-base-02.ttl
new file mode 100644
index 00000000..8893b652
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-base-02.ttl
@@ -0,0 +1,2 @@
+# @base in wrong case.
+@BASE <http://www.w3.org/2013/TurtleTests/> .
diff --git a/tests/tests-ttl/turtle-syntax-bad-base-03.ttl b/tests/TurtleTests/turtle-syntax-bad-base-03.ttl
index ebbbc106..013f9f2b 100644
--- a/tests/tests-ttl/turtle-syntax-bad-base-03.ttl
+++ b/tests/TurtleTests/turtle-syntax-bad-base-03.ttl
@@ -1,3 +1,3 @@
# FULL STOP used after SPARQL BASE
-BASE <http://example/> .
+BASE <http://www.w3.org/2013/TurtleTests/> .
<s> <p> <o> .
diff --git a/tests/TurtleTests/turtle-syntax-bad-blank-label-dot-end.ttl b/tests/TurtleTests/turtle-syntax-bad-blank-label-dot-end.ttl
new file mode 100644
index 00000000..58c0aa20
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-blank-label-dot-end.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+_:b1. :p :o .
diff --git a/tests/TurtleTests/turtle-syntax-bad-esc-01.ttl b/tests/TurtleTests/turtle-syntax-bad-esc-01.ttl
new file mode 100644
index 00000000..6daa1b58
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-esc-01.ttl
@@ -0,0 +1,2 @@
+# Bad string escape
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> "a\zb" .
diff --git a/tests/TurtleTests/turtle-syntax-bad-esc-02.ttl b/tests/TurtleTests/turtle-syntax-bad-esc-02.ttl
new file mode 100644
index 00000000..62457ebf
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-esc-02.ttl
@@ -0,0 +1,2 @@
+# Bad string escape
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> "\uWXYZ" .
diff --git a/tests/TurtleTests/turtle-syntax-bad-esc-03.ttl b/tests/TurtleTests/turtle-syntax-bad-esc-03.ttl
new file mode 100644
index 00000000..a9b9f1c0
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-esc-03.ttl
@@ -0,0 +1,2 @@
+# Bad string escape
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> "\U0000WXYZ" .
diff --git a/tests/TurtleTests/turtle-syntax-bad-esc-04.ttl b/tests/TurtleTests/turtle-syntax-bad-esc-04.ttl
new file mode 100644
index 00000000..a9b9f1c0
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-esc-04.ttl
@@ -0,0 +1,2 @@
+# Bad string escape
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> "\U0000WXYZ" .
diff --git a/tests/TurtleTests/turtle-syntax-bad-kw-01.ttl b/tests/TurtleTests/turtle-syntax-bad-kw-01.ttl
new file mode 100644
index 00000000..f85448d6
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-kw-01.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:s A :C .
diff --git a/tests/TurtleTests/turtle-syntax-bad-kw-02.ttl b/tests/TurtleTests/turtle-syntax-bad-kw-02.ttl
new file mode 100644
index 00000000..d25986cd
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-kw-02.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+a :p :o .
diff --git a/tests/TurtleTests/turtle-syntax-bad-kw-03.ttl b/tests/TurtleTests/turtle-syntax-bad-kw-03.ttl
new file mode 100644
index 00000000..3d54b929
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-kw-03.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:s :p a .
diff --git a/tests/TurtleTests/turtle-syntax-bad-kw-04.ttl b/tests/TurtleTests/turtle-syntax-bad-kw-04.ttl
new file mode 100644
index 00000000..229491ed
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-kw-04.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+true :p :o .
diff --git a/tests/TurtleTests/turtle-syntax-bad-kw-05.ttl b/tests/TurtleTests/turtle-syntax-bad-kw-05.ttl
new file mode 100644
index 00000000..c2420af5
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-kw-05.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:s true :o .
diff --git a/tests/TurtleTests/turtle-syntax-bad-lang-01.ttl b/tests/TurtleTests/turtle-syntax-bad-lang-01.ttl
new file mode 100644
index 00000000..80685aae
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-lang-01.ttl
@@ -0,0 +1,2 @@
+# Bad lang tag
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> "string"@1 .
diff --git a/tests/TurtleTests/turtle-syntax-bad-ln-dash-start.ttl b/tests/TurtleTests/turtle-syntax-bad-ln-dash-start.ttl
new file mode 100644
index 00000000..9af36a1e
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-ln-dash-start.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:s :p :-o .
diff --git a/tests/TurtleTests/turtle-syntax-bad-ln-escape-start.ttl b/tests/TurtleTests/turtle-syntax-bad-ln-escape-start.ttl
new file mode 100644
index 00000000..9c7a4352
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-ln-escape-start.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:s :p :%2o .
diff --git a/tests/TurtleTests/turtle-syntax-bad-ln-escape.ttl b/tests/TurtleTests/turtle-syntax-bad-ln-escape.ttl
new file mode 100644
index 00000000..212d43a0
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-ln-escape.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:s :p :o%2 .
diff --git a/tests/tests-ttl/turtle-syntax-bad-missing-ns-dot-end.ttl b/tests/TurtleTests/turtle-syntax-bad-missing-ns-dot-end.ttl
index d06f4e69..d06f4e69 100644
--- a/tests/tests-ttl/turtle-syntax-bad-missing-ns-dot-end.ttl
+++ b/tests/TurtleTests/turtle-syntax-bad-missing-ns-dot-end.ttl
diff --git a/tests/tests-ttl/turtle-syntax-bad-missing-ns-dot-start.ttl b/tests/TurtleTests/turtle-syntax-bad-missing-ns-dot-start.ttl
index 23514bcc..23514bcc 100644
--- a/tests/tests-ttl/turtle-syntax-bad-missing-ns-dot-start.ttl
+++ b/tests/TurtleTests/turtle-syntax-bad-missing-ns-dot-start.ttl
diff --git a/tests/tests-ttl/turtle-syntax-bad-n3-extras-01.ttl b/tests/TurtleTests/turtle-syntax-bad-n3-extras-01.ttl
index 7a429acd..f7b19b72 100644
--- a/tests/tests-ttl/turtle-syntax-bad-n3-extras-01.ttl
+++ b/tests/TurtleTests/turtle-syntax-bad-n3-extras-01.ttl
@@ -1,5 +1,5 @@
# {} fomulae not in Turtle
-@prefix : <http://example/> .
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
{ :a :q :c . } :p :z .
diff --git a/tests/TurtleTests/turtle-syntax-bad-n3-extras-02.ttl b/tests/TurtleTests/turtle-syntax-bad-n3-extras-02.ttl
new file mode 100644
index 00000000..e834f15f
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-n3-extras-02.ttl
@@ -0,0 +1,4 @@
+# = is not Turtle
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+
+:a = :b .
diff --git a/tests/TurtleTests/turtle-syntax-bad-n3-extras-03.ttl b/tests/TurtleTests/turtle-syntax-bad-n3-extras-03.ttl
new file mode 100644
index 00000000..ad5d6ad4
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-n3-extras-03.ttl
@@ -0,0 +1,7 @@
+# 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 .
diff --git a/tests/TurtleTests/turtle-syntax-bad-n3-extras-04.ttl b/tests/TurtleTests/turtle-syntax-bad-n3-extras-04.ttl
new file mode 100644
index 00000000..895f9ec6
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-n3-extras-04.ttl
@@ -0,0 +1,5 @@
+# N3 paths
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+@prefix ns: <http://www.w3.org/2013/TurtleTests/p#> .
+
+:x^ns:p :p :z .
diff --git a/tests/TurtleTests/turtle-syntax-bad-n3-extras-05.ttl b/tests/TurtleTests/turtle-syntax-bad-n3-extras-05.ttl
new file mode 100644
index 00000000..de879b15
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-n3-extras-05.ttl
@@ -0,0 +1,4 @@
+# N3 is...of
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+
+:z is :p of :x .
diff --git a/tests/TurtleTests/turtle-syntax-bad-n3-extras-06.ttl b/tests/TurtleTests/turtle-syntax-bad-n3-extras-06.ttl
new file mode 100644
index 00000000..56610f67
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-n3-extras-06.ttl
@@ -0,0 +1,4 @@
+# = is not Turtle
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+
+:a.:b.:c .
diff --git a/tests/tests-ttl/turtle-syntax-bad-n3-extras-07.ttl b/tests/TurtleTests/turtle-syntax-bad-n3-extras-07.ttl
index 419f7cad..419f7cad 100644
--- a/tests/tests-ttl/turtle-syntax-bad-n3-extras-07.ttl
+++ b/tests/TurtleTests/turtle-syntax-bad-n3-extras-07.ttl
diff --git a/tests/tests-ttl/turtle-syntax-bad-n3-extras-08.ttl b/tests/TurtleTests/turtle-syntax-bad-n3-extras-08.ttl
index 419f7cad..419f7cad 100644
--- a/tests/tests-ttl/turtle-syntax-bad-n3-extras-08.ttl
+++ b/tests/TurtleTests/turtle-syntax-bad-n3-extras-08.ttl
diff --git a/tests/TurtleTests/turtle-syntax-bad-n3-extras-09.ttl b/tests/TurtleTests/turtle-syntax-bad-n3-extras-09.ttl
new file mode 100644
index 00000000..f093b588
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-n3-extras-09.ttl
@@ -0,0 +1,3 @@
+# => is not Turtle
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:s => :o .
diff --git a/tests/TurtleTests/turtle-syntax-bad-n3-extras-10.ttl b/tests/TurtleTests/turtle-syntax-bad-n3-extras-10.ttl
new file mode 100644
index 00000000..974252f0
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-n3-extras-10.ttl
@@ -0,0 +1,3 @@
+# <= is not Turtle
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:s <= :o .
diff --git a/tests/TurtleTests/turtle-syntax-bad-n3-extras-11.ttl b/tests/TurtleTests/turtle-syntax-bad-n3-extras-11.ttl
new file mode 100644
index 00000000..b74d74a3
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-n3-extras-11.ttl
@@ -0,0 +1,3 @@
+# @forSome is not Turtle
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+@forSome :x .
diff --git a/tests/TurtleTests/turtle-syntax-bad-n3-extras-12.ttl b/tests/TurtleTests/turtle-syntax-bad-n3-extras-12.ttl
new file mode 100644
index 00000000..dc2c5b03
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-n3-extras-12.ttl
@@ -0,0 +1,3 @@
+# @forAll is not Turtle
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+@forAll :x .
diff --git a/tests/tests-ttl/turtle-syntax-bad-n3-extras-13.ttl b/tests/TurtleTests/turtle-syntax-bad-n3-extras-13.ttl
index 5f719a24..5f719a24 100644
--- a/tests/tests-ttl/turtle-syntax-bad-n3-extras-13.ttl
+++ b/tests/TurtleTests/turtle-syntax-bad-n3-extras-13.ttl
diff --git a/tests/TurtleTests/turtle-syntax-bad-ns-dot-end.ttl b/tests/TurtleTests/turtle-syntax-bad-ns-dot-end.ttl
new file mode 100644
index 00000000..fa67031e
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-ns-dot-end.ttl
@@ -0,0 +1,2 @@
+@prefix eg. : <http://www.w3.org/2013/TurtleTests/> .
+eg.:s eg.:p eg.:o .
diff --git a/tests/TurtleTests/turtle-syntax-bad-ns-dot-start.ttl b/tests/TurtleTests/turtle-syntax-bad-ns-dot-start.ttl
new file mode 100644
index 00000000..e09d5954
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-ns-dot-start.ttl
@@ -0,0 +1,2 @@
+@prefix .eg : <http://www.w3.org/2013/TurtleTests/> .
+.eg:s .eg:p .eg:o .
diff --git a/tests/TurtleTests/turtle-syntax-bad-num-01.ttl b/tests/TurtleTests/turtle-syntax-bad-num-01.ttl
new file mode 100644
index 00000000..cb4730cb
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-num-01.ttl
@@ -0,0 +1 @@
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> 123.abc .
diff --git a/tests/TurtleTests/turtle-syntax-bad-num-02.ttl b/tests/TurtleTests/turtle-syntax-bad-num-02.ttl
new file mode 100644
index 00000000..1c8cbb25
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-num-02.ttl
@@ -0,0 +1 @@
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> 123e .
diff --git a/tests/TurtleTests/turtle-syntax-bad-num-03.ttl b/tests/TurtleTests/turtle-syntax-bad-num-03.ttl
new file mode 100644
index 00000000..7c8fa2cf
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-num-03.ttl
@@ -0,0 +1 @@
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> 123abc .
diff --git a/tests/TurtleTests/turtle-syntax-bad-num-04.ttl b/tests/TurtleTests/turtle-syntax-bad-num-04.ttl
new file mode 100644
index 00000000..ad8e0cfd
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-num-04.ttl
@@ -0,0 +1 @@
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> 0x123 .
diff --git a/tests/TurtleTests/turtle-syntax-bad-num-05.ttl b/tests/TurtleTests/turtle-syntax-bad-num-05.ttl
new file mode 100644
index 00000000..2ee461a0
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-num-05.ttl
@@ -0,0 +1 @@
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> +-1 .
diff --git a/tests/TurtleTests/turtle-syntax-bad-number-dot-in-anon.ttl b/tests/TurtleTests/turtle-syntax-bad-number-dot-in-anon.ttl
new file mode 100644
index 00000000..779cbece
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-number-dot-in-anon.ttl
@@ -0,0 +1,6 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+
+:s
+ :p [
+ :p1 27.
+ ] .
diff --git a/tests/TurtleTests/turtle-syntax-bad-pname-01.ttl b/tests/TurtleTests/turtle-syntax-bad-pname-01.ttl
new file mode 100644
index 00000000..5f3098da
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-pname-01.ttl
@@ -0,0 +1,3 @@
+# ~ must be escaped.
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:a~b :p :o .
diff --git a/tests/TurtleTests/turtle-syntax-bad-pname-02.ttl b/tests/TurtleTests/turtle-syntax-bad-pname-02.ttl
new file mode 100644
index 00000000..fb30823c
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-pname-02.ttl
@@ -0,0 +1,3 @@
+# Bad %-sequence
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:a%2 :p :o .
diff --git a/tests/TurtleTests/turtle-syntax-bad-pname-03.ttl b/tests/TurtleTests/turtle-syntax-bad-pname-03.ttl
new file mode 100644
index 00000000..b9af59e5
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-pname-03.ttl
@@ -0,0 +1,3 @@
+# No \u (x39 is "9")
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:a\u0039 :p :o .
diff --git a/tests/TurtleTests/turtle-syntax-bad-prefix-01.ttl b/tests/TurtleTests/turtle-syntax-bad-prefix-01.ttl
new file mode 100644
index 00000000..b1b80df1
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-prefix-01.ttl
@@ -0,0 +1,2 @@
+# No prefix
+:s <http://www.w3.org/2013/TurtleTests/p> "x" .
diff --git a/tests/tests-ttl/turtle-syntax-bad-prefix-02.ttl b/tests/TurtleTests/turtle-syntax-bad-prefix-02.ttl
index 69271456..6e7269f2 100644
--- a/tests/tests-ttl/turtle-syntax-bad-prefix-02.ttl
+++ b/tests/TurtleTests/turtle-syntax-bad-prefix-02.ttl
@@ -1,3 +1,3 @@
# No prefix
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
-<http://example/s> rdf:type :C .
+<http://www.w3.org/2013/TurtleTests/s> rdf:type :C .
diff --git a/tests/tests-ttl/turtle-syntax-bad-prefix-03.ttl b/tests/TurtleTests/turtle-syntax-bad-prefix-03.ttl
index 1ab01e7b..1ab01e7b 100644
--- a/tests/tests-ttl/turtle-syntax-bad-prefix-03.ttl
+++ b/tests/TurtleTests/turtle-syntax-bad-prefix-03.ttl
diff --git a/tests/TurtleTests/turtle-syntax-bad-prefix-04.ttl b/tests/TurtleTests/turtle-syntax-bad-prefix-04.ttl
new file mode 100644
index 00000000..5f338f33
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-prefix-04.ttl
@@ -0,0 +1,2 @@
+# @prefix without prefix name .
+@prefix <http://www.w3.org/2013/TurtleTests/> .
diff --git a/tests/TurtleTests/turtle-syntax-bad-prefix-05.ttl b/tests/TurtleTests/turtle-syntax-bad-prefix-05.ttl
new file mode 100644
index 00000000..efb86c59
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-prefix-05.ttl
@@ -0,0 +1,2 @@
+# @prefix without :
+@prefix x <http://www.w3.org/2013/TurtleTests/> .
diff --git a/tests/TurtleTests/turtle-syntax-bad-string-01.ttl b/tests/TurtleTests/turtle-syntax-bad-string-01.ttl
new file mode 100644
index 00000000..ef62a6c0
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-string-01.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:s :p "abc' .
diff --git a/tests/TurtleTests/turtle-syntax-bad-string-02.ttl b/tests/TurtleTests/turtle-syntax-bad-string-02.ttl
new file mode 100644
index 00000000..2335d529
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-string-02.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:s :p 'abc" .
diff --git a/tests/TurtleTests/turtle-syntax-bad-string-03.ttl b/tests/TurtleTests/turtle-syntax-bad-string-03.ttl
new file mode 100644
index 00000000..8a9e7ffe
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-string-03.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:s :p '''abc' .
diff --git a/tests/TurtleTests/turtle-syntax-bad-string-04.ttl b/tests/TurtleTests/turtle-syntax-bad-string-04.ttl
new file mode 100644
index 00000000..9911defe
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-string-04.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:s :p """abc''' .
diff --git a/tests/TurtleTests/turtle-syntax-bad-string-05.ttl b/tests/TurtleTests/turtle-syntax-bad-string-05.ttl
new file mode 100644
index 00000000..f5de7403
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-string-05.ttl
@@ -0,0 +1,4 @@
+# Long literal with missing end
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:s :p """abc
+def
diff --git a/tests/TurtleTests/turtle-syntax-bad-string-06.ttl b/tests/TurtleTests/turtle-syntax-bad-string-06.ttl
new file mode 100644
index 00000000..6bcbc936
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-string-06.ttl
@@ -0,0 +1,3 @@
+# Long literal with 4"
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:s :p """abc""""@en .
diff --git a/tests/TurtleTests/turtle-syntax-bad-string-07.ttl b/tests/TurtleTests/turtle-syntax-bad-string-07.ttl
new file mode 100644
index 00000000..534614d4
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-string-07.ttl
@@ -0,0 +1,3 @@
+# Long literal with 4'
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:s :p '''abc''''@en .
diff --git a/tests/TurtleTests/turtle-syntax-bad-struct-01.ttl b/tests/TurtleTests/turtle-syntax-bad-struct-01.ttl
new file mode 100644
index 00000000..7b8b8529
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-struct-01.ttl
@@ -0,0 +1,2 @@
+# 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> }
diff --git a/tests/TurtleTests/turtle-syntax-bad-struct-02.ttl b/tests/TurtleTests/turtle-syntax-bad-struct-02.ttl
new file mode 100644
index 00000000..cb86b9dd
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-struct-02.ttl
@@ -0,0 +1,2 @@
+# Turtle is not N3
+<http://www.w3.org/2013/TurtleTests/s> = <http://www.w3.org/2013/TurtleTests/o> .
diff --git a/tests/TurtleTests/turtle-syntax-bad-struct-03.ttl b/tests/TurtleTests/turtle-syntax-bad-struct-03.ttl
new file mode 100644
index 00000000..98d9c7ec
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-struct-03.ttl
@@ -0,0 +1,2 @@
+# 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> .
diff --git a/tests/TurtleTests/turtle-syntax-bad-struct-04.ttl b/tests/TurtleTests/turtle-syntax-bad-struct-04.ttl
new file mode 100644
index 00000000..40cd7b71
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-struct-04.ttl
@@ -0,0 +1,2 @@
+# Turtle does not allow literals-as-subjects
+"hello" <http://www.w3.org/2013/TurtleTests/p> <http://www.w3.org/2013/TurtleTests/o> .
diff --git a/tests/TurtleTests/turtle-syntax-bad-struct-05.ttl b/tests/TurtleTests/turtle-syntax-bad-struct-05.ttl
new file mode 100644
index 00000000..e1a3afbc
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-struct-05.ttl
@@ -0,0 +1,2 @@
+# Turtle does not allow literals-as-predicates
+<http://www.w3.org/2013/TurtleTests/s> "hello" <http://www.w3.org/2013/TurtleTests/o> .
diff --git a/tests/TurtleTests/turtle-syntax-bad-struct-06.ttl b/tests/TurtleTests/turtle-syntax-bad-struct-06.ttl
new file mode 100644
index 00000000..2680229a
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-struct-06.ttl
@@ -0,0 +1,2 @@
+# Turtle does not allow bnodes-as-predicates
+<http://www.w3.org/2013/TurtleTests/s> [] <http://www.w3.org/2013/TurtleTests/o> .
diff --git a/tests/TurtleTests/turtle-syntax-bad-struct-07.ttl b/tests/TurtleTests/turtle-syntax-bad-struct-07.ttl
new file mode 100644
index 00000000..5f74a8b7
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-struct-07.ttl
@@ -0,0 +1,2 @@
+# Turtle does not allow bnodes-as-predicates
+<http://www.w3.org/2013/TurtleTests/s> _:p <http://www.w3.org/2013/TurtleTests/o> .
diff --git a/tests/TurtleTests/turtle-syntax-bad-struct-08.ttl b/tests/TurtleTests/turtle-syntax-bad-struct-08.ttl
new file mode 100644
index 00000000..86aaf4be
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-struct-08.ttl
@@ -0,0 +1,2 @@
+# No DOT
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> <http://www.w3.org/2013/TurtleTests/o>
diff --git a/tests/TurtleTests/turtle-syntax-bad-struct-09.ttl b/tests/TurtleTests/turtle-syntax-bad-struct-09.ttl
new file mode 100644
index 00000000..92aae4c2
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-struct-09.ttl
@@ -0,0 +1,2 @@
+# Too many DOT
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> <http://www.w3.org/2013/TurtleTests/o> . .
diff --git a/tests/TurtleTests/turtle-syntax-bad-struct-10.ttl b/tests/TurtleTests/turtle-syntax-bad-struct-10.ttl
new file mode 100644
index 00000000..eb893b24
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-struct-10.ttl
@@ -0,0 +1,3 @@
+# 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> .
diff --git a/tests/TurtleTests/turtle-syntax-bad-struct-11.ttl b/tests/TurtleTests/turtle-syntax-bad-struct-11.ttl
new file mode 100644
index 00000000..fc6bb993
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-struct-11.ttl
@@ -0,0 +1,2 @@
+# Trailing ;
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> <http://www.w3.org/2013/TurtleTests/o> ;
diff --git a/tests/TurtleTests/turtle-syntax-bad-struct-12.ttl b/tests/TurtleTests/turtle-syntax-bad-struct-12.ttl
new file mode 100644
index 00000000..1038da86
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-struct-12.ttl
@@ -0,0 +1 @@
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p>
diff --git a/tests/TurtleTests/turtle-syntax-bad-struct-13.ttl b/tests/TurtleTests/turtle-syntax-bad-struct-13.ttl
new file mode 100644
index 00000000..1038da86
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-struct-13.ttl
@@ -0,0 +1 @@
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p>
diff --git a/tests/TurtleTests/turtle-syntax-bad-struct-14.ttl b/tests/TurtleTests/turtle-syntax-bad-struct-14.ttl
new file mode 100644
index 00000000..44db7be2
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-struct-14.ttl
@@ -0,0 +1,2 @@
+# Literal as subject
+"abc" <http://www.w3.org/2013/TurtleTests/p> <http://www.w3.org/2013/TurtleTests/p> .
diff --git a/tests/TurtleTests/turtle-syntax-bad-struct-15.ttl b/tests/TurtleTests/turtle-syntax-bad-struct-15.ttl
new file mode 100644
index 00000000..788cfd67
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-struct-15.ttl
@@ -0,0 +1,2 @@
+# Literal as predicate
+<http://www.w3.org/2013/TurtleTests/s> "abc" <http://www.w3.org/2013/TurtleTests/p> .
diff --git a/tests/TurtleTests/turtle-syntax-bad-struct-16.ttl b/tests/TurtleTests/turtle-syntax-bad-struct-16.ttl
new file mode 100644
index 00000000..d30a80be
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-struct-16.ttl
@@ -0,0 +1,2 @@
+# BNode as predicate
+<http://www.w3.org/2013/TurtleTests/s> [] <http://www.w3.org/2013/TurtleTests/p> .
diff --git a/tests/TurtleTests/turtle-syntax-bad-struct-17.ttl b/tests/TurtleTests/turtle-syntax-bad-struct-17.ttl
new file mode 100644
index 00000000..50ea2656
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-struct-17.ttl
@@ -0,0 +1,2 @@
+# BNode as predicate
+<http://www.w3.org/2013/TurtleTests/s> _:a <http://www.w3.org/2013/TurtleTests/p> .
diff --git a/tests/TurtleTests/turtle-syntax-bad-uri-01.ttl b/tests/TurtleTests/turtle-syntax-bad-uri-01.ttl
new file mode 100644
index 00000000..ebea3f25
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-uri-01.ttl
@@ -0,0 +1,2 @@
+# Bad IRI : space.
+<http://www.w3.org/2013/TurtleTests/ space> <http://www.w3.org/2013/TurtleTests/p> <http://www.w3.org/2013/TurtleTests/o> .
diff --git a/tests/TurtleTests/turtle-syntax-bad-uri-02.ttl b/tests/TurtleTests/turtle-syntax-bad-uri-02.ttl
new file mode 100644
index 00000000..e9096bc7
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-uri-02.ttl
@@ -0,0 +1,2 @@
+# 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> .
diff --git a/tests/TurtleTests/turtle-syntax-bad-uri-03.ttl b/tests/TurtleTests/turtle-syntax-bad-uri-03.ttl
new file mode 100644
index 00000000..7fe2bf03
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-uri-03.ttl
@@ -0,0 +1,2 @@
+# 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> .
diff --git a/tests/TurtleTests/turtle-syntax-bad-uri-04.ttl b/tests/TurtleTests/turtle-syntax-bad-uri-04.ttl
new file mode 100644
index 00000000..258997cb
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-uri-04.ttl
@@ -0,0 +1,2 @@
+# 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> .
diff --git a/tests/TurtleTests/turtle-syntax-bad-uri-05.ttl b/tests/TurtleTests/turtle-syntax-bad-uri-05.ttl
new file mode 100644
index 00000000..542b2b64
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bad-uri-05.ttl
@@ -0,0 +1,2 @@
+# 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> .
diff --git a/tests/TurtleTests/turtle-syntax-base-01.ttl b/tests/TurtleTests/turtle-syntax-base-01.ttl
new file mode 100644
index 00000000..108ceaf5
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-base-01.ttl
@@ -0,0 +1 @@
+@base <http://www.w3.org/2013/TurtleTests/> .
diff --git a/tests/TurtleTests/turtle-syntax-base-02.ttl b/tests/TurtleTests/turtle-syntax-base-02.ttl
new file mode 100644
index 00000000..7a2724f7
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-base-02.ttl
@@ -0,0 +1 @@
+BASE <http://www.w3.org/2013/TurtleTests/>
diff --git a/tests/TurtleTests/turtle-syntax-base-03.ttl b/tests/TurtleTests/turtle-syntax-base-03.ttl
new file mode 100644
index 00000000..e90dc14a
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-base-03.ttl
@@ -0,0 +1,2 @@
+@base <http://www.w3.org/2013/TurtleTests/> .
+<s> <p> <o> .
diff --git a/tests/TurtleTests/turtle-syntax-base-04.ttl b/tests/TurtleTests/turtle-syntax-base-04.ttl
new file mode 100644
index 00000000..b0bb4226
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-base-04.ttl
@@ -0,0 +1,2 @@
+base <http://www.w3.org/2013/TurtleTests/>
+<s> <p> <o> .
diff --git a/tests/tests-ttl/turtle-syntax-blank-label.ttl b/tests/TurtleTests/turtle-syntax-blank-label.ttl
index 3e3e516d..b7fae10d 100644
--- a/tests/tests-ttl/turtle-syntax-blank-label.ttl
+++ b/tests/TurtleTests/turtle-syntax-blank-label.ttl
@@ -1,4 +1,4 @@
-@prefix : <http://example/> .
+@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
diff --git a/tests/TurtleTests/turtle-syntax-bnode-01.ttl b/tests/TurtleTests/turtle-syntax-bnode-01.ttl
new file mode 100644
index 00000000..274a478c
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bnode-01.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+[] :p :o .
diff --git a/tests/TurtleTests/turtle-syntax-bnode-02.ttl b/tests/TurtleTests/turtle-syntax-bnode-02.ttl
new file mode 100644
index 00000000..91b9c16e
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bnode-02.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:s :p [] .
diff --git a/tests/TurtleTests/turtle-syntax-bnode-03.ttl b/tests/TurtleTests/turtle-syntax-bnode-03.ttl
new file mode 100644
index 00000000..36c8450f
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bnode-03.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:s :p [ :q :o ] .
diff --git a/tests/TurtleTests/turtle-syntax-bnode-04.ttl b/tests/TurtleTests/turtle-syntax-bnode-04.ttl
new file mode 100644
index 00000000..942dedd7
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bnode-04.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:s :p [ :q1 :o1 ; :q2 :o2 ] .
diff --git a/tests/TurtleTests/turtle-syntax-bnode-05.ttl b/tests/TurtleTests/turtle-syntax-bnode-05.ttl
new file mode 100644
index 00000000..c2f4169c
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bnode-05.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+[ :q1 :o1 ; :q2 :o2 ] :p :o .
diff --git a/tests/TurtleTests/turtle-syntax-bnode-06.ttl b/tests/TurtleTests/turtle-syntax-bnode-06.ttl
new file mode 100644
index 00000000..f9ffec8c
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bnode-06.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+_:a :p :o .
diff --git a/tests/TurtleTests/turtle-syntax-bnode-07.ttl b/tests/TurtleTests/turtle-syntax-bnode-07.ttl
new file mode 100644
index 00000000..c0dba051
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bnode-07.ttl
@@ -0,0 +1,3 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:s :p _:a .
+_:a :p :o .
diff --git a/tests/TurtleTests/turtle-syntax-bnode-08.ttl b/tests/TurtleTests/turtle-syntax-bnode-08.ttl
new file mode 100644
index 00000000..630843b0
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bnode-08.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+[ :p :o ] .
diff --git a/tests/TurtleTests/turtle-syntax-bnode-09.ttl b/tests/TurtleTests/turtle-syntax-bnode-09.ttl
new file mode 100644
index 00000000..cd75e3a3
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-bnode-09.ttl
@@ -0,0 +1,3 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+[ :p :o1,:2 ] .
+:s :p :o .
diff --git a/tests/tests-ttl/turtle-syntax-bnode-10.ttl b/tests/TurtleTests/turtle-syntax-bnode-10.ttl
index 9d1ba060..03fa67ca 100644
--- a/tests/tests-ttl/turtle-syntax-bnode-10.ttl
+++ b/tests/TurtleTests/turtle-syntax-bnode-10.ttl
@@ -1,4 +1,4 @@
-@prefix : <http://example/> .
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
:s1 :p :o .
[ :p1 :o1 ; :p2 :o2 ] .
diff --git a/tests/tests-ttl/turtle-syntax-datatypes-01.ttl b/tests/TurtleTests/turtle-syntax-datatypes-01.ttl
index 9e273c51..9e273c51 100644
--- a/tests/tests-ttl/turtle-syntax-datatypes-01.ttl
+++ b/tests/TurtleTests/turtle-syntax-datatypes-01.ttl
diff --git a/tests/tests-ttl/turtle-syntax-datatypes-02.ttl b/tests/TurtleTests/turtle-syntax-datatypes-02.ttl
index 477bd73c..477bd73c 100644
--- a/tests/tests-ttl/turtle-syntax-datatypes-02.ttl
+++ b/tests/TurtleTests/turtle-syntax-datatypes-02.ttl
diff --git a/tests/TurtleTests/turtle-syntax-file-01.ttl b/tests/TurtleTests/turtle-syntax-file-01.ttl
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-file-01.ttl
diff --git a/tests/tests-ttl/turtle-syntax-file-02.ttl b/tests/TurtleTests/turtle-syntax-file-02.ttl
index e6d327d5..e6d327d5 100644
--- a/tests/tests-ttl/turtle-syntax-file-02.ttl
+++ b/tests/TurtleTests/turtle-syntax-file-02.ttl
diff --git a/tests/tests-ttl/turtle-syntax-file-03.ttl b/tests/TurtleTests/turtle-syntax-file-03.ttl
index a9ca0358..a9ca0358 100644
--- a/tests/tests-ttl/turtle-syntax-file-03.ttl
+++ b/tests/TurtleTests/turtle-syntax-file-03.ttl
diff --git a/tests/tests-ttl/turtle-syntax-kw-01.ttl b/tests/TurtleTests/turtle-syntax-kw-01.ttl
index 854c7568..854c7568 100644
--- a/tests/tests-ttl/turtle-syntax-kw-01.ttl
+++ b/tests/TurtleTests/turtle-syntax-kw-01.ttl
diff --git a/tests/tests-ttl/turtle-syntax-kw-02.ttl b/tests/TurtleTests/turtle-syntax-kw-02.ttl
index c948160b..c948160b 100644
--- a/tests/tests-ttl/turtle-syntax-kw-02.ttl
+++ b/tests/TurtleTests/turtle-syntax-kw-02.ttl
diff --git a/tests/TurtleTests/turtle-syntax-kw-03.ttl b/tests/TurtleTests/turtle-syntax-kw-03.ttl
new file mode 100644
index 00000000..bb479bfa
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-kw-03.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:s a :C .
diff --git a/tests/TurtleTests/turtle-syntax-lists-01.ttl b/tests/TurtleTests/turtle-syntax-lists-01.ttl
new file mode 100644
index 00000000..c6ee0fbe
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-lists-01.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:s :p () .
diff --git a/tests/TurtleTests/turtle-syntax-lists-02.ttl b/tests/TurtleTests/turtle-syntax-lists-02.ttl
new file mode 100644
index 00000000..06a0cd1e
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-lists-02.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:s :p (1 "2" :o) .
diff --git a/tests/TurtleTests/turtle-syntax-lists-03.ttl b/tests/TurtleTests/turtle-syntax-lists-03.ttl
new file mode 100644
index 00000000..e71f0273
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-lists-03.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+(1) :p (1) .
diff --git a/tests/TurtleTests/turtle-syntax-lists-04.ttl b/tests/TurtleTests/turtle-syntax-lists-04.ttl
new file mode 100644
index 00000000..a9885389
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-lists-04.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+(()) :p (()) .
diff --git a/tests/TurtleTests/turtle-syntax-lists-05.ttl b/tests/TurtleTests/turtle-syntax-lists-05.ttl
new file mode 100644
index 00000000..43e68a44
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-lists-05.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+(1 2 (1 2)) :p (( "a") "b" :o) .
diff --git a/tests/tests-ttl/turtle-syntax-ln-colons.ttl b/tests/TurtleTests/turtle-syntax-ln-colons.ttl
index 397989db..80a2e3df 100644
--- a/tests/tests-ttl/turtle-syntax-ln-colons.ttl
+++ b/tests/TurtleTests/turtle-syntax-ln-colons.ttl
@@ -1,4 +1,4 @@
-@prefix : <http://example/> .
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
:s:1 :p:1 :o:1 .
:s::2 :p::2 :o::2 .
:3:s :3:p :3 .
diff --git a/tests/tests-ttl/turtle-syntax-ln-dots.ttl b/tests/TurtleTests/turtle-syntax-ln-dots.ttl
index 230381a1..ca5bba97 100644
--- a/tests/tests-ttl/turtle-syntax-ln-dots.ttl
+++ b/tests/TurtleTests/turtle-syntax-ln-dots.ttl
@@ -1,4 +1,4 @@
-@prefix : <http://example/> .
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
:s.1 :p.1 :o.1 .
:s..2 :p..2 :o..2.
:3.s :3.p :3.
diff --git a/tests/TurtleTests/turtle-syntax-ns-dots.ttl b/tests/TurtleTests/turtle-syntax-ns-dots.ttl
new file mode 100644
index 00000000..1059b576
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-ns-dots.ttl
@@ -0,0 +1,2 @@
+@prefix e.g: <http://www.w3.org/2013/TurtleTests/> .
+e.g:s e.g:p e.g:o .
diff --git a/tests/tests-ttl/turtle-syntax-number-01.ttl b/tests/TurtleTests/turtle-syntax-number-01.ttl
index 016fa8f2..016fa8f2 100644
--- a/tests/tests-ttl/turtle-syntax-number-01.ttl
+++ b/tests/TurtleTests/turtle-syntax-number-01.ttl
diff --git a/tests/tests-ttl/turtle-syntax-number-02.ttl b/tests/TurtleTests/turtle-syntax-number-02.ttl
index 66d1b389..66d1b389 100644
--- a/tests/tests-ttl/turtle-syntax-number-02.ttl
+++ b/tests/TurtleTests/turtle-syntax-number-02.ttl
diff --git a/tests/tests-ttl/turtle-syntax-number-03.ttl b/tests/TurtleTests/turtle-syntax-number-03.ttl
index 44142857..44142857 100644
--- a/tests/tests-ttl/turtle-syntax-number-03.ttl
+++ b/tests/TurtleTests/turtle-syntax-number-03.ttl
diff --git a/tests/tests-ttl/turtle-syntax-number-04.ttl b/tests/TurtleTests/turtle-syntax-number-04.ttl
index ab48cbc6..ab48cbc6 100644
--- a/tests/tests-ttl/turtle-syntax-number-04.ttl
+++ b/tests/TurtleTests/turtle-syntax-number-04.ttl
diff --git a/tests/tests-ttl/turtle-syntax-number-05.ttl b/tests/TurtleTests/turtle-syntax-number-05.ttl
index a8d5845a..a8d5845a 100644
--- a/tests/tests-ttl/turtle-syntax-number-05.ttl
+++ b/tests/TurtleTests/turtle-syntax-number-05.ttl
diff --git a/tests/tests-ttl/turtle-syntax-number-06.ttl b/tests/TurtleTests/turtle-syntax-number-06.ttl
index cb3a2b06..cb3a2b06 100644
--- a/tests/tests-ttl/turtle-syntax-number-06.ttl
+++ b/tests/TurtleTests/turtle-syntax-number-06.ttl
diff --git a/tests/tests-ttl/turtle-syntax-number-07.ttl b/tests/TurtleTests/turtle-syntax-number-07.ttl
index 8b0050e6..8b0050e6 100644
--- a/tests/tests-ttl/turtle-syntax-number-07.ttl
+++ b/tests/TurtleTests/turtle-syntax-number-07.ttl
diff --git a/tests/tests-ttl/turtle-syntax-number-08.ttl b/tests/TurtleTests/turtle-syntax-number-08.ttl
index 70ddeed3..70ddeed3 100644
--- a/tests/tests-ttl/turtle-syntax-number-08.ttl
+++ b/tests/TurtleTests/turtle-syntax-number-08.ttl
diff --git a/tests/tests-ttl/turtle-syntax-number-09.ttl b/tests/TurtleTests/turtle-syntax-number-09.ttl
index 386b819f..386b819f 100644
--- a/tests/tests-ttl/turtle-syntax-number-09.ttl
+++ b/tests/TurtleTests/turtle-syntax-number-09.ttl
diff --git a/tests/tests-ttl/turtle-syntax-number-10.ttl b/tests/TurtleTests/turtle-syntax-number-10.ttl
index 46875e94..46875e94 100644
--- a/tests/tests-ttl/turtle-syntax-number-10.ttl
+++ b/tests/TurtleTests/turtle-syntax-number-10.ttl
diff --git a/tests/tests-ttl/turtle-syntax-number-11.ttl b/tests/TurtleTests/turtle-syntax-number-11.ttl
index 1d8c367e..1d8c367e 100644
--- a/tests/tests-ttl/turtle-syntax-number-11.ttl
+++ b/tests/TurtleTests/turtle-syntax-number-11.ttl
diff --git a/tests/tests-ttl/turtle-syntax-pname-esc-01.ttl b/tests/TurtleTests/turtle-syntax-pname-esc-01.ttl
index 46f3b3d9..5a3a5fd7 100644
--- a/tests/tests-ttl/turtle-syntax-pname-esc-01.ttl
+++ b/tests/TurtleTests/turtle-syntax-pname-esc-01.ttl
@@ -1,2 +1,2 @@
-@prefix : <http://example/> .
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
:s :p :\~\.\-\!\$\&\'\(\)\*\+\,\;\=\/\?\#\@\_\%AA .
diff --git a/tests/tests-ttl/turtle-syntax-pname-esc-02.ttl b/tests/TurtleTests/turtle-syntax-pname-esc-02.ttl
index 518feb67..5d806cf4 100644
--- a/tests/tests-ttl/turtle-syntax-pname-esc-02.ttl
+++ b/tests/TurtleTests/turtle-syntax-pname-esc-02.ttl
@@ -1,2 +1,2 @@
-@prefix : <http://example/> .
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
:s :p :0123\~\.\-\!\$\&\'\(\)\*\+\,\;\=\/\?\#\@\_\%AA123 .
diff --git a/tests/TurtleTests/turtle-syntax-pname-esc-03.ttl b/tests/TurtleTests/turtle-syntax-pname-esc-03.ttl
new file mode 100644
index 00000000..9949c52b
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-pname-esc-03.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:xyz\~ :abc\.: : .
diff --git a/tests/TurtleTests/turtle-syntax-prefix-01.ttl b/tests/TurtleTests/turtle-syntax-prefix-01.ttl
new file mode 100644
index 00000000..7fd69327
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-prefix-01.ttl
@@ -0,0 +1 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
diff --git a/tests/TurtleTests/turtle-syntax-prefix-02.ttl b/tests/TurtleTests/turtle-syntax-prefix-02.ttl
new file mode 100644
index 00000000..99d4ae45
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-prefix-02.ttl
@@ -0,0 +1 @@
+PreFIX : <http://www.w3.org/2013/TurtleTests/>
diff --git a/tests/TurtleTests/turtle-syntax-prefix-03.ttl b/tests/TurtleTests/turtle-syntax-prefix-03.ttl
new file mode 100644
index 00000000..c834d10f
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-prefix-03.ttl
@@ -0,0 +1,2 @@
+PREFIX : <http://www.w3.org/2013/TurtleTests/>
+:s :p :123 .
diff --git a/tests/TurtleTests/turtle-syntax-prefix-04.ttl b/tests/TurtleTests/turtle-syntax-prefix-04.ttl
new file mode 100644
index 00000000..4ff94dc0
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-prefix-04.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:s :p :%20 .
diff --git a/tests/TurtleTests/turtle-syntax-prefix-05.ttl b/tests/TurtleTests/turtle-syntax-prefix-05.ttl
new file mode 100644
index 00000000..30441026
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-prefix-05.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+: : : .
diff --git a/tests/TurtleTests/turtle-syntax-prefix-06.ttl b/tests/TurtleTests/turtle-syntax-prefix-06.ttl
new file mode 100644
index 00000000..7044be5a
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-prefix-06.ttl
@@ -0,0 +1,4 @@
+# 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 :::: .
diff --git a/tests/tests-ttl/turtle-syntax-prefix-07.ttl b/tests/TurtleTests/turtle-syntax-prefix-07.ttl
index bb498d91..1db61e8a 100644
--- a/tests/tests-ttl/turtle-syntax-prefix-07.ttl
+++ b/tests/TurtleTests/turtle-syntax-prefix-07.ttl
@@ -1,3 +1,3 @@
# dash is a legal pname character
-@prefix x: <http://example/> .
+@prefix x: <http://www.w3.org/2013/TurtleTests/> .
x:a-b-c x:p x:o .
diff --git a/tests/tests-ttl/turtle-syntax-prefix-08.ttl b/tests/TurtleTests/turtle-syntax-prefix-08.ttl
index e5ecff2b..f969a4af 100644
--- a/tests/tests-ttl/turtle-syntax-prefix-08.ttl
+++ b/tests/TurtleTests/turtle-syntax-prefix-08.ttl
@@ -1,3 +1,3 @@
# underscore is a legal pname character
-@prefix x: <http://example/> .
+@prefix x: <http://www.w3.org/2013/TurtleTests/> .
x:_ x:p_1 x:o .
diff --git a/tests/TurtleTests/turtle-syntax-prefix-09.ttl b/tests/TurtleTests/turtle-syntax-prefix-09.ttl
new file mode 100644
index 00000000..5c57ebea
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-prefix-09.ttl
@@ -0,0 +1,4 @@
+# percents
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+@prefix x: <http://www.w3.org/2013/TurtleTests/> .
+:a%3E x:%25 :a%3Eb .
diff --git a/tests/TurtleTests/turtle-syntax-str-esc-01.ttl b/tests/TurtleTests/turtle-syntax-str-esc-01.ttl
new file mode 100644
index 00000000..f11f2827
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-str-esc-01.ttl
@@ -0,0 +1 @@
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> "a\n" .
diff --git a/tests/TurtleTests/turtle-syntax-str-esc-02.ttl b/tests/TurtleTests/turtle-syntax-str-esc-02.ttl
new file mode 100644
index 00000000..0b77f95a
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-str-esc-02.ttl
@@ -0,0 +1 @@
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> "a\u0020b" .
diff --git a/tests/TurtleTests/turtle-syntax-str-esc-03.ttl b/tests/TurtleTests/turtle-syntax-str-esc-03.ttl
new file mode 100644
index 00000000..af1e3281
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-str-esc-03.ttl
@@ -0,0 +1 @@
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> "a\U00000020b" .
diff --git a/tests/TurtleTests/turtle-syntax-string-01.ttl b/tests/TurtleTests/turtle-syntax-string-01.ttl
new file mode 100644
index 00000000..7bf8a6d4
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-string-01.ttl
@@ -0,0 +1 @@
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> "string" .
diff --git a/tests/TurtleTests/turtle-syntax-string-02.ttl b/tests/TurtleTests/turtle-syntax-string-02.ttl
new file mode 100644
index 00000000..8cb89e98
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-string-02.ttl
@@ -0,0 +1 @@
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> "string"@en .
diff --git a/tests/TurtleTests/turtle-syntax-string-03.ttl b/tests/TurtleTests/turtle-syntax-string-03.ttl
new file mode 100644
index 00000000..312d1d67
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-string-03.ttl
@@ -0,0 +1 @@
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> "string"@en-uk .
diff --git a/tests/TurtleTests/turtle-syntax-string-04.ttl b/tests/TurtleTests/turtle-syntax-string-04.ttl
new file mode 100644
index 00000000..3ecdea3a
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-string-04.ttl
@@ -0,0 +1 @@
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> 'string' .
diff --git a/tests/TurtleTests/turtle-syntax-string-05.ttl b/tests/TurtleTests/turtle-syntax-string-05.ttl
new file mode 100644
index 00000000..f32b6d02
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-string-05.ttl
@@ -0,0 +1 @@
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> 'string'@en .
diff --git a/tests/TurtleTests/turtle-syntax-string-06.ttl b/tests/TurtleTests/turtle-syntax-string-06.ttl
new file mode 100644
index 00000000..77399380
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-string-06.ttl
@@ -0,0 +1 @@
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> 'string'@en-uk .
diff --git a/tests/TurtleTests/turtle-syntax-string-07.ttl b/tests/TurtleTests/turtle-syntax-string-07.ttl
new file mode 100644
index 00000000..6c3e6a44
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-string-07.ttl
@@ -0,0 +1 @@
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> """abc""def''ghi""" .
diff --git a/tests/TurtleTests/turtle-syntax-string-08.ttl b/tests/TurtleTests/turtle-syntax-string-08.ttl
new file mode 100644
index 00000000..2fb0227b
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-string-08.ttl
@@ -0,0 +1,2 @@
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> """abc
+def""" .
diff --git a/tests/TurtleTests/turtle-syntax-string-09.ttl b/tests/TurtleTests/turtle-syntax-string-09.ttl
new file mode 100644
index 00000000..390c8af9
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-string-09.ttl
@@ -0,0 +1,2 @@
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> '''abc
+def''' .
diff --git a/tests/TurtleTests/turtle-syntax-string-10.ttl b/tests/TurtleTests/turtle-syntax-string-10.ttl
new file mode 100644
index 00000000..5b6e5c35
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-string-10.ttl
@@ -0,0 +1,2 @@
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> """abc
+def"""@en .
diff --git a/tests/TurtleTests/turtle-syntax-string-11.ttl b/tests/TurtleTests/turtle-syntax-string-11.ttl
new file mode 100644
index 00000000..7b78abf1
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-string-11.ttl
@@ -0,0 +1,2 @@
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> '''abc
+def'''@en .
diff --git a/tests/TurtleTests/turtle-syntax-struct-01.ttl b/tests/TurtleTests/turtle-syntax-struct-01.ttl
new file mode 100644
index 00000000..990e5160
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-struct-01.ttl
@@ -0,0 +1,2 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:s :p :o1 , :o2 .
diff --git a/tests/TurtleTests/turtle-syntax-struct-02.ttl b/tests/TurtleTests/turtle-syntax-struct-02.ttl
new file mode 100644
index 00000000..0684b2fe
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-struct-02.ttl
@@ -0,0 +1,3 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:s :p1 :o1 ;
+ :p2 :o2 .
diff --git a/tests/TurtleTests/turtle-syntax-struct-03.ttl b/tests/TurtleTests/turtle-syntax-struct-03.ttl
new file mode 100644
index 00000000..1e303515
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-struct-03.ttl
@@ -0,0 +1,4 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:s :p1 :o1 ;
+ :p2 :o2 ;
+ .
diff --git a/tests/TurtleTests/turtle-syntax-struct-04.ttl b/tests/TurtleTests/turtle-syntax-struct-04.ttl
new file mode 100644
index 00000000..3d1bf3b0
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-struct-04.ttl
@@ -0,0 +1,4 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:s :p1 :o1 ;;
+ :p2 :o2
+ .
diff --git a/tests/TurtleTests/turtle-syntax-struct-05.ttl b/tests/TurtleTests/turtle-syntax-struct-05.ttl
new file mode 100644
index 00000000..c39e0411
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-struct-05.ttl
@@ -0,0 +1,4 @@
+@prefix : <http://www.w3.org/2013/TurtleTests/> .
+:s :p1 :o1 ;
+ :p2 :o2 ;;
+ .
diff --git a/tests/TurtleTests/turtle-syntax-uri-01.ttl b/tests/TurtleTests/turtle-syntax-uri-01.ttl
new file mode 100644
index 00000000..2e2d5baf
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-uri-01.ttl
@@ -0,0 +1 @@
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p> <http://www.w3.org/2013/TurtleTests/o> .
diff --git a/tests/TurtleTests/turtle-syntax-uri-02.ttl b/tests/TurtleTests/turtle-syntax-uri-02.ttl
new file mode 100644
index 00000000..f355d38c
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-uri-02.ttl
@@ -0,0 +1,2 @@
+# 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> .
diff --git a/tests/TurtleTests/turtle-syntax-uri-03.ttl b/tests/TurtleTests/turtle-syntax-uri-03.ttl
new file mode 100644
index 00000000..0ea581af
--- /dev/null
+++ b/tests/TurtleTests/turtle-syntax-uri-03.ttl
@@ -0,0 +1,2 @@
+# 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> .
diff --git a/tests/tests-ttl/turtle-syntax-uri-04.ttl b/tests/TurtleTests/turtle-syntax-uri-04.ttl
index bd042040..db805c8f 100644
--- a/tests/tests-ttl/turtle-syntax-uri-04.ttl
+++ b/tests/TurtleTests/turtle-syntax-uri-04.ttl
@@ -1,3 +1,3 @@
# IRI with all chars in it.
-<http://example/s> <http://example/p>
+<http://www.w3.org/2013/TurtleTests/s> <http://www.w3.org/2013/TurtleTests/p>
<scheme:!$%25&'()*+,-./0123456789:/@ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz~?#> .
diff --git a/tests/tests-ttl/two_LITERAL_LONG2s.nt b/tests/TurtleTests/two_LITERAL_LONG2s.nt
index af94fe6a..af94fe6a 100644
--- a/tests/tests-ttl/two_LITERAL_LONG2s.nt
+++ b/tests/TurtleTests/two_LITERAL_LONG2s.nt
diff --git a/tests/tests-ttl/two_LITERAL_LONG2s.ttl b/tests/TurtleTests/two_LITERAL_LONG2s.ttl
index ceaad3d4..ceaad3d4 100644
--- a/tests/tests-ttl/two_LITERAL_LONG2s.ttl
+++ b/tests/TurtleTests/two_LITERAL_LONG2s.ttl
diff --git a/tests/tests-ttl/underscore_in_localName.nt b/tests/TurtleTests/underscore_in_localName.nt
index f9d0c4f1..f9d0c4f1 100644
--- a/tests/tests-ttl/underscore_in_localName.nt
+++ b/tests/TurtleTests/underscore_in_localName.nt
diff --git a/tests/tests-ttl/underscore_in_localName.ttl b/tests/TurtleTests/underscore_in_localName.ttl
index 34596fdf..34596fdf 100644
--- a/tests/tests-ttl/underscore_in_localName.ttl
+++ b/tests/TurtleTests/underscore_in_localName.ttl
diff --git a/tests/tests-ttl/LICENSE b/tests/tests-ttl/LICENSE
deleted file mode 100644
index c4172201..00000000
--- a/tests/tests-ttl/LICENSE
+++ /dev/null
@@ -1,40 +0,0 @@
-## License for RDF 1.1 Turtle test Suite.
-##
-## By obtaining, using and/or copying this work, you (the licensee) agree that
-## you have read, understood, and will comply with the following terms and
-## conditions.
-##
-## Permission to copy, modify, and distribute this software and its
-## documentation, with or without modification, for any purpose and without
-## fee or royalty is hereby granted, provided that you include the following
-## on ALL copies of the software and documentation or portions thereof,
-## including modifications:
-##
-## * The full text of this NOTICE in a location viewable to users of the
-## redistributed or derivative work.
-##
-## * Any pre-existing intellectual property disclaimers, notices, or terms and
-## conditions. If none exist, the W3C Software Short Notice should be included
-## (hypertext is preferred, text is permitted) within the body of any
-## redistributed or derivative code.
-##
-## * Notice of any changes or modifications to the files, including the date
-## changes were made. (We recommend you provide URIs to the location from
-## which the code is derived.)
-##
-## Disclaimers
-##
-## THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS
-## MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT
-## NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR
-## PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENTATION WILL NOT INFRINGE
-## ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
-##
-## COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR
-## CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR
-## DOCUMENTATION.
-##
-## The name and trademarks of copyright holders may NOT be used in advertising
-## or publicity pertaining to the software without specific, written prior
-## permission. Title to copyright in this software and any associated
-## documentation will at all times remain with copyright holders.
diff --git a/tests/tests-ttl/LITERAL_with_UTF8_boundaries.nt b/tests/tests-ttl/LITERAL_with_UTF8_boundaries.nt
deleted file mode 100644
index c952f632..00000000
--- a/tests/tests-ttl/LITERAL_with_UTF8_boundaries.nt
+++ /dev/null
@@ -1 +0,0 @@
-<http://a.example/s> <http://a.example/p> "\u0080\u07FF\u0800\u0FFF\u1000\uCFFF\uD000\uD7FF\uE000\uFFFF\U00010000\U0003FFFF\U00040000\U000FFFFF\U00100000\U0010FFFD" .
diff --git a/tests/tests-ttl/README b/tests/tests-ttl/README
deleted file mode 100644
index 83ef182b..00000000
--- a/tests/tests-ttl/README
+++ /dev/null
@@ -1 +0,0 @@
-See http://www.w3.org/2011/rdf-wg/wiki/Turtle_Test_Suite for details.
diff --git a/tests/tests-ttl/turtle-eval-bad-01.ttl b/tests/tests-ttl/turtle-eval-bad-01.ttl
deleted file mode 100644
index dc58ca82..00000000
--- a/tests/tests-ttl/turtle-eval-bad-01.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# Bad IRI : good escape, bad charcater
-<http://example/\u0020> <http://example/p> <http://example/o> .
diff --git a/tests/tests-ttl/turtle-eval-bad-02.ttl b/tests/tests-ttl/turtle-eval-bad-02.ttl
deleted file mode 100644
index ef20d6ae..00000000
--- a/tests/tests-ttl/turtle-eval-bad-02.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# Bad IRI : hex 3C is <
-<http://example/\u003C> <http://example/p> <http://example/o> .
diff --git a/tests/tests-ttl/turtle-eval-bad-03.ttl b/tests/tests-ttl/turtle-eval-bad-03.ttl
deleted file mode 100644
index 55ecd5b0..00000000
--- a/tests/tests-ttl/turtle-eval-bad-03.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# Bad IRI : hex 3E is >
-<http://example/\u003E> <http://example/p> <http://example/o> .
diff --git a/tests/tests-ttl/turtle-eval-bad-04.ttl b/tests/tests-ttl/turtle-eval-bad-04.ttl
deleted file mode 100644
index 557418ff..00000000
--- a/tests/tests-ttl/turtle-eval-bad-04.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# Bad IRI
-<http://example/{abc}> <http://example/p> <http://example/o> .
diff --git a/tests/tests-ttl/turtle-eval-struct-01.nt b/tests/tests-ttl/turtle-eval-struct-01.nt
deleted file mode 100644
index 02e6ba98..00000000
--- a/tests/tests-ttl/turtle-eval-struct-01.nt
+++ /dev/null
@@ -1 +0,0 @@
-<http://example/s> <http://example/p> <http://example/o> .
diff --git a/tests/tests-ttl/turtle-eval-struct-01.ttl b/tests/tests-ttl/turtle-eval-struct-01.ttl
deleted file mode 100644
index 02e6ba98..00000000
--- a/tests/tests-ttl/turtle-eval-struct-01.ttl
+++ /dev/null
@@ -1 +0,0 @@
-<http://example/s> <http://example/p> <http://example/o> .
diff --git a/tests/tests-ttl/turtle-eval-struct-02.nt b/tests/tests-ttl/turtle-eval-struct-02.nt
deleted file mode 100644
index a4a5286c..00000000
--- a/tests/tests-ttl/turtle-eval-struct-02.nt
+++ /dev/null
@@ -1,2 +0,0 @@
-<http://example/s> <http://example/p1> <http://example/o1> .
-<http://example/s> <http://example/p2> <http://example/o2> .
diff --git a/tests/tests-ttl/turtle-eval-struct-02.ttl b/tests/tests-ttl/turtle-eval-struct-02.ttl
deleted file mode 100644
index 13231835..00000000
--- a/tests/tests-ttl/turtle-eval-struct-02.ttl
+++ /dev/null
@@ -1,4 +0,0 @@
-<http://example/s>
- <http://example/p1> <http://example/o1> ;
- <http://example/p2> <http://example/o2> ;
- .
diff --git a/tests/tests-ttl/turtle-subm-01.nt b/tests/tests-ttl/turtle-subm-01.nt
deleted file mode 100644
index ae545ac3..00000000
--- a/tests/tests-ttl/turtle-subm-01.nt
+++ /dev/null
@@ -1 +0,0 @@
-_:b1 <http://example/base/turtle-subm-01.ttl#x> <http://example/base/turtle-subm-01.ttl#y> .
diff --git a/tests/tests-ttl/turtle-syntax-bad-base-02.ttl b/tests/tests-ttl/turtle-syntax-bad-base-02.ttl
deleted file mode 100644
index 1b2e4845..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-base-02.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# @base in wrong case.
-@BASE <http://example/> .
diff --git a/tests/tests-ttl/turtle-syntax-bad-blank-label-dot-end.ttl b/tests/tests-ttl/turtle-syntax-bad-blank-label-dot-end.ttl
deleted file mode 100644
index 613e775f..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-blank-label-dot-end.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-_:b1. :p :o .
diff --git a/tests/tests-ttl/turtle-syntax-bad-esc-01.ttl b/tests/tests-ttl/turtle-syntax-bad-esc-01.ttl
deleted file mode 100644
index f7a88add..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-esc-01.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# Bad string escape
-<http://example/s> <http://example/p> "a\zb" .
diff --git a/tests/tests-ttl/turtle-syntax-bad-esc-02.ttl b/tests/tests-ttl/turtle-syntax-bad-esc-02.ttl
deleted file mode 100644
index 72711d49..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-esc-02.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# Bad string escape
-<http://example/s> <http://example/p> "\uWXYZ" .
diff --git a/tests/tests-ttl/turtle-syntax-bad-esc-03.ttl b/tests/tests-ttl/turtle-syntax-bad-esc-03.ttl
deleted file mode 100644
index 3a4522fc..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-esc-03.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# Bad string escape
-<http://example/s> <http://example/p> "\U0000WXYZ" .
diff --git a/tests/tests-ttl/turtle-syntax-bad-esc-04.ttl b/tests/tests-ttl/turtle-syntax-bad-esc-04.ttl
deleted file mode 100644
index 3a4522fc..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-esc-04.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# Bad string escape
-<http://example/s> <http://example/p> "\U0000WXYZ" .
diff --git a/tests/tests-ttl/turtle-syntax-bad-kw-01.ttl b/tests/tests-ttl/turtle-syntax-bad-kw-01.ttl
deleted file mode 100644
index f2e3927f..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-kw-01.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-:s A :C .
diff --git a/tests/tests-ttl/turtle-syntax-bad-kw-02.ttl b/tests/tests-ttl/turtle-syntax-bad-kw-02.ttl
deleted file mode 100644
index ab5bf1e7..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-kw-02.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-a :p :o .
diff --git a/tests/tests-ttl/turtle-syntax-bad-kw-03.ttl b/tests/tests-ttl/turtle-syntax-bad-kw-03.ttl
deleted file mode 100644
index 1be7e34a..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-kw-03.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-:s :p a .
diff --git a/tests/tests-ttl/turtle-syntax-bad-kw-04.ttl b/tests/tests-ttl/turtle-syntax-bad-kw-04.ttl
deleted file mode 100644
index 11cb50b5..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-kw-04.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-true :p :o .
diff --git a/tests/tests-ttl/turtle-syntax-bad-kw-05.ttl b/tests/tests-ttl/turtle-syntax-bad-kw-05.ttl
deleted file mode 100644
index 12e3a4cb..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-kw-05.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-:s true :o .
diff --git a/tests/tests-ttl/turtle-syntax-bad-lang-01.ttl b/tests/tests-ttl/turtle-syntax-bad-lang-01.ttl
deleted file mode 100644
index a4d952c8..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-lang-01.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# Bad lang tag
-<http://example/s> <http://example/p> "string"@1 .
diff --git a/tests/tests-ttl/turtle-syntax-bad-ln-dash-start.ttl b/tests/tests-ttl/turtle-syntax-bad-ln-dash-start.ttl
deleted file mode 100644
index 291bdda3..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-ln-dash-start.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-:s :p :-o .
diff --git a/tests/tests-ttl/turtle-syntax-bad-ln-escape-start.ttl b/tests/tests-ttl/turtle-syntax-bad-ln-escape-start.ttl
deleted file mode 100644
index d1661bd7..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-ln-escape-start.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-:s :p :%2o .
diff --git a/tests/tests-ttl/turtle-syntax-bad-ln-escape.ttl b/tests/tests-ttl/turtle-syntax-bad-ln-escape.ttl
deleted file mode 100644
index 585e28b5..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-ln-escape.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-:s :p :o%2 .
diff --git a/tests/tests-ttl/turtle-syntax-bad-n3-extras-02.ttl b/tests/tests-ttl/turtle-syntax-bad-n3-extras-02.ttl
deleted file mode 100644
index 510cd226..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-n3-extras-02.ttl
+++ /dev/null
@@ -1,4 +0,0 @@
-# = is not Turtle
-@prefix : <http://example/> .
-
-:a = :b .
diff --git a/tests/tests-ttl/turtle-syntax-bad-n3-extras-03.ttl b/tests/tests-ttl/turtle-syntax-bad-n3-extras-03.ttl
deleted file mode 100644
index 1f7e0df1..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-n3-extras-03.ttl
+++ /dev/null
@@ -1,7 +0,0 @@
-# N3 paths
-@prefix : <http://example/> .
-@prefix ns: <http://example/p#> .
-
-:x.
- ns:p.
- ns:q :p :z .
diff --git a/tests/tests-ttl/turtle-syntax-bad-n3-extras-04.ttl b/tests/tests-ttl/turtle-syntax-bad-n3-extras-04.ttl
deleted file mode 100644
index 151db2da..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-n3-extras-04.ttl
+++ /dev/null
@@ -1,5 +0,0 @@
-# N3 paths
-@prefix : <http://example/> .
-@prefix ns: <http://example/p#> .
-
-:x^ns:p :p :z .
diff --git a/tests/tests-ttl/turtle-syntax-bad-n3-extras-05.ttl b/tests/tests-ttl/turtle-syntax-bad-n3-extras-05.ttl
deleted file mode 100644
index 76d03261..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-n3-extras-05.ttl
+++ /dev/null
@@ -1,4 +0,0 @@
-# N3 is...of
-@prefix : <http://example/> .
-
-:z is :p of :x .
diff --git a/tests/tests-ttl/turtle-syntax-bad-n3-extras-06.ttl b/tests/tests-ttl/turtle-syntax-bad-n3-extras-06.ttl
deleted file mode 100644
index 12bdd9ef..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-n3-extras-06.ttl
+++ /dev/null
@@ -1,4 +0,0 @@
-# = is not Turtle
-@prefix : <http://example/> .
-
-:a.:b.:c .
diff --git a/tests/tests-ttl/turtle-syntax-bad-n3-extras-09.ttl b/tests/tests-ttl/turtle-syntax-bad-n3-extras-09.ttl
deleted file mode 100644
index 390ef6d2..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-n3-extras-09.ttl
+++ /dev/null
@@ -1,3 +0,0 @@
-# => is not Turtle
-@prefix : <http://example/> .
-:s => :o .
diff --git a/tests/tests-ttl/turtle-syntax-bad-n3-extras-10.ttl b/tests/tests-ttl/turtle-syntax-bad-n3-extras-10.ttl
deleted file mode 100644
index efef5f6b..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-n3-extras-10.ttl
+++ /dev/null
@@ -1,3 +0,0 @@
-# <= is not Turtle
-@prefix : <http://example/> .
-:s <= :o .
diff --git a/tests/tests-ttl/turtle-syntax-bad-n3-extras-11.ttl b/tests/tests-ttl/turtle-syntax-bad-n3-extras-11.ttl
deleted file mode 100644
index dabadf02..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-n3-extras-11.ttl
+++ /dev/null
@@ -1,3 +0,0 @@
-# @forSome is not Turtle
-@prefix : <http://example/> .
-@forSome :x .
diff --git a/tests/tests-ttl/turtle-syntax-bad-n3-extras-12.ttl b/tests/tests-ttl/turtle-syntax-bad-n3-extras-12.ttl
deleted file mode 100644
index 5a6c3562..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-n3-extras-12.ttl
+++ /dev/null
@@ -1,3 +0,0 @@
-# @forAll is not Turtle
-@prefix : <http://example/> .
-@forAll :x .
diff --git a/tests/tests-ttl/turtle-syntax-bad-ns-dot-end.ttl b/tests/tests-ttl/turtle-syntax-bad-ns-dot-end.ttl
deleted file mode 100644
index a99fc98d..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-ns-dot-end.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix eg. : <http://example/> .
-eg.:s eg.:p eg.:o .
diff --git a/tests/tests-ttl/turtle-syntax-bad-ns-dot-start.ttl b/tests/tests-ttl/turtle-syntax-bad-ns-dot-start.ttl
deleted file mode 100644
index b3993dd7..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-ns-dot-start.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix .eg : <http://example/> .
-.eg:s .eg:p .eg:o .
diff --git a/tests/tests-ttl/turtle-syntax-bad-num-01.ttl b/tests/tests-ttl/turtle-syntax-bad-num-01.ttl
deleted file mode 100644
index 817809f6..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-num-01.ttl
+++ /dev/null
@@ -1 +0,0 @@
-<http://example/s> <http://example/p> 123.abc .
diff --git a/tests/tests-ttl/turtle-syntax-bad-num-02.ttl b/tests/tests-ttl/turtle-syntax-bad-num-02.ttl
deleted file mode 100644
index dca36d2b..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-num-02.ttl
+++ /dev/null
@@ -1 +0,0 @@
-<http://example/s> <http://example/p> 123e .
diff --git a/tests/tests-ttl/turtle-syntax-bad-num-03.ttl b/tests/tests-ttl/turtle-syntax-bad-num-03.ttl
deleted file mode 100644
index e9ea90c9..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-num-03.ttl
+++ /dev/null
@@ -1 +0,0 @@
-<http://example/s> <http://example/p> 123abc .
diff --git a/tests/tests-ttl/turtle-syntax-bad-num-04.ttl b/tests/tests-ttl/turtle-syntax-bad-num-04.ttl
deleted file mode 100644
index 363755f0..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-num-04.ttl
+++ /dev/null
@@ -1 +0,0 @@
-<http://example/s> <http://example/p> 0x123 .
diff --git a/tests/tests-ttl/turtle-syntax-bad-num-05.ttl b/tests/tests-ttl/turtle-syntax-bad-num-05.ttl
deleted file mode 100644
index d8fab1ab..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-num-05.ttl
+++ /dev/null
@@ -1 +0,0 @@
-<http://example/s> <http://example/p> +-1 .
diff --git a/tests/tests-ttl/turtle-syntax-bad-number-dot-in-anon.ttl b/tests/tests-ttl/turtle-syntax-bad-number-dot-in-anon.ttl
deleted file mode 100644
index 46d15f9a..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-number-dot-in-anon.ttl
+++ /dev/null
@@ -1,6 +0,0 @@
-@prefix : <http://example/> .
-
-:s
- :p [
- :p1 27.
- ] .
diff --git a/tests/tests-ttl/turtle-syntax-bad-pname-01.ttl b/tests/tests-ttl/turtle-syntax-bad-pname-01.ttl
deleted file mode 100644
index 90e42197..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-pname-01.ttl
+++ /dev/null
@@ -1,3 +0,0 @@
-# ~ must be escaped.
-@prefix : <http://example/> .
-:a~b :p :o .
diff --git a/tests/tests-ttl/turtle-syntax-bad-pname-02.ttl b/tests/tests-ttl/turtle-syntax-bad-pname-02.ttl
deleted file mode 100644
index ff3e35c8..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-pname-02.ttl
+++ /dev/null
@@ -1,3 +0,0 @@
-# Bad %-sequence
-@prefix : <http://example/> .
-:a%2 :p :o .
diff --git a/tests/tests-ttl/turtle-syntax-bad-pname-03.ttl b/tests/tests-ttl/turtle-syntax-bad-pname-03.ttl
deleted file mode 100644
index cb358bd0..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-pname-03.ttl
+++ /dev/null
@@ -1,3 +0,0 @@
-# No \u (x39 is "9")
-@prefix : <http://example/> .
-:a\u0039 :p :o .
diff --git a/tests/tests-ttl/turtle-syntax-bad-prefix-01.ttl b/tests/tests-ttl/turtle-syntax-bad-prefix-01.ttl
deleted file mode 100644
index 97021d96..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-prefix-01.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# No prefix
-:s <http://example/p> "x" .
diff --git a/tests/tests-ttl/turtle-syntax-bad-prefix-04.ttl b/tests/tests-ttl/turtle-syntax-bad-prefix-04.ttl
deleted file mode 100644
index dbbda05b..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-prefix-04.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# @prefix without prefix name .
-@prefix <http://example/> .
diff --git a/tests/tests-ttl/turtle-syntax-bad-prefix-05.ttl b/tests/tests-ttl/turtle-syntax-bad-prefix-05.ttl
deleted file mode 100644
index 6d145e07..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-prefix-05.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# @prefix without :
-@prefix x <http://example/> .
diff --git a/tests/tests-ttl/turtle-syntax-bad-string-01.ttl b/tests/tests-ttl/turtle-syntax-bad-string-01.ttl
deleted file mode 100644
index 7e8da141..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-string-01.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-:s :p "abc' .
diff --git a/tests/tests-ttl/turtle-syntax-bad-string-02.ttl b/tests/tests-ttl/turtle-syntax-bad-string-02.ttl
deleted file mode 100644
index d2866d25..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-string-02.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-:s :p 'abc" .
diff --git a/tests/tests-ttl/turtle-syntax-bad-string-03.ttl b/tests/tests-ttl/turtle-syntax-bad-string-03.ttl
deleted file mode 100644
index 610446b2..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-string-03.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-:s :p '''abc' .
diff --git a/tests/tests-ttl/turtle-syntax-bad-string-04.ttl b/tests/tests-ttl/turtle-syntax-bad-string-04.ttl
deleted file mode 100644
index 6643614c..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-string-04.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-:s :p """abc''' .
diff --git a/tests/tests-ttl/turtle-syntax-bad-string-05.ttl b/tests/tests-ttl/turtle-syntax-bad-string-05.ttl
deleted file mode 100644
index e25a4927..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-string-05.ttl
+++ /dev/null
@@ -1,4 +0,0 @@
-# Long literal with missing end
-@prefix : <http://example/> .
-:s :p """abc
-def
diff --git a/tests/tests-ttl/turtle-syntax-bad-string-06.ttl b/tests/tests-ttl/turtle-syntax-bad-string-06.ttl
deleted file mode 100644
index 2c717b5e..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-string-06.ttl
+++ /dev/null
@@ -1,3 +0,0 @@
-# Long literal with 4"
-@prefix : <http://example/> .
-:s :p """abc""""@en .
diff --git a/tests/tests-ttl/turtle-syntax-bad-string-07.ttl b/tests/tests-ttl/turtle-syntax-bad-string-07.ttl
deleted file mode 100644
index ce6f7a7d..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-string-07.ttl
+++ /dev/null
@@ -1,3 +0,0 @@
-# Long literal with 4'
-@prefix : <http://example/> .
-:s :p '''abc''''@en .
diff --git a/tests/tests-ttl/turtle-syntax-bad-struct-01.ttl b/tests/tests-ttl/turtle-syntax-bad-struct-01.ttl
deleted file mode 100644
index 7594edc4..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-struct-01.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# Turtle is not TriG
-{ <http://example/s> <http://example/p> <http://example/o> }
diff --git a/tests/tests-ttl/turtle-syntax-bad-struct-02.ttl b/tests/tests-ttl/turtle-syntax-bad-struct-02.ttl
deleted file mode 100644
index e447c376..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-struct-02.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# Turtle is not N3
-<http://example/s> = <http://example/o> .
diff --git a/tests/tests-ttl/turtle-syntax-bad-struct-03.ttl b/tests/tests-ttl/turtle-syntax-bad-struct-03.ttl
deleted file mode 100644
index 76d57aee..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-struct-03.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# Turtle is not NQuads
-<http://example/s> <http://example/p> <http://example/o> <http://example/g> .
diff --git a/tests/tests-ttl/turtle-syntax-bad-struct-04.ttl b/tests/tests-ttl/turtle-syntax-bad-struct-04.ttl
deleted file mode 100644
index 6c675a0c..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-struct-04.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# Turtle does not allow literals-as-subjects
-"hello" <http://example/p> <http://example/o> .
diff --git a/tests/tests-ttl/turtle-syntax-bad-struct-05.ttl b/tests/tests-ttl/turtle-syntax-bad-struct-05.ttl
deleted file mode 100644
index c7a3552d..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-struct-05.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# Turtle does not allow literals-as-predicates
-<http://example/s> "hello" <http://example/o> .
diff --git a/tests/tests-ttl/turtle-syntax-bad-struct-06.ttl b/tests/tests-ttl/turtle-syntax-bad-struct-06.ttl
deleted file mode 100644
index dd663288..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-struct-06.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# Turtle does not allow bnodes-as-predicates
-<http://example/s> [] <http://example/o> .
diff --git a/tests/tests-ttl/turtle-syntax-bad-struct-07.ttl b/tests/tests-ttl/turtle-syntax-bad-struct-07.ttl
deleted file mode 100644
index c1e4aa7c..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-struct-07.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# Turtle does not allow bnodes-as-predicates
-<http://example/s> _:p <http://example/o> .
diff --git a/tests/tests-ttl/turtle-syntax-bad-struct-08.ttl b/tests/tests-ttl/turtle-syntax-bad-struct-08.ttl
deleted file mode 100644
index 5449ad93..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-struct-08.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# No DOT
-<http://example/s> <http://example/p> <http://example/o>
diff --git a/tests/tests-ttl/turtle-syntax-bad-struct-09.ttl b/tests/tests-ttl/turtle-syntax-bad-struct-09.ttl
deleted file mode 100644
index 33159c97..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-struct-09.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# Too many DOT
-<http://example/s> <http://example/p> <http://example/o> . .
diff --git a/tests/tests-ttl/turtle-syntax-bad-struct-10.ttl b/tests/tests-ttl/turtle-syntax-bad-struct-10.ttl
deleted file mode 100644
index 8fcc7fea..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-struct-10.ttl
+++ /dev/null
@@ -1,3 +0,0 @@
-# Too many DOT
-<http://example/s> <http://example/p> <http://example/o> . .
-<http://example/s1> <http://example/p1> <http://example/o1> .
diff --git a/tests/tests-ttl/turtle-syntax-bad-struct-11.ttl b/tests/tests-ttl/turtle-syntax-bad-struct-11.ttl
deleted file mode 100644
index 2351eb87..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-struct-11.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# Trailing ;
-<http://example/s> <http://example/p> <http://example/o> ;
diff --git a/tests/tests-ttl/turtle-syntax-bad-struct-12.ttl b/tests/tests-ttl/turtle-syntax-bad-struct-12.ttl
deleted file mode 100644
index b11d7f53..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-struct-12.ttl
+++ /dev/null
@@ -1 +0,0 @@
-<http://example/s> <http://example/p>
diff --git a/tests/tests-ttl/turtle-syntax-bad-struct-13.ttl b/tests/tests-ttl/turtle-syntax-bad-struct-13.ttl
deleted file mode 100644
index b11d7f53..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-struct-13.ttl
+++ /dev/null
@@ -1 +0,0 @@
-<http://example/s> <http://example/p>
diff --git a/tests/tests-ttl/turtle-syntax-bad-struct-14.ttl b/tests/tests-ttl/turtle-syntax-bad-struct-14.ttl
deleted file mode 100644
index 039f96d4..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-struct-14.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# Literal as subject
-"abc" <http://example/p> <http://example/p> .
diff --git a/tests/tests-ttl/turtle-syntax-bad-struct-15.ttl b/tests/tests-ttl/turtle-syntax-bad-struct-15.ttl
deleted file mode 100644
index c3b147ca..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-struct-15.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# Literal as predicate
-<http://example/s> "abc" <http://example/p> .
diff --git a/tests/tests-ttl/turtle-syntax-bad-struct-16.ttl b/tests/tests-ttl/turtle-syntax-bad-struct-16.ttl
deleted file mode 100644
index f8621e9c..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-struct-16.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# BNode as predicate
-<http://example/s> [] <http://example/p> .
diff --git a/tests/tests-ttl/turtle-syntax-bad-struct-17.ttl b/tests/tests-ttl/turtle-syntax-bad-struct-17.ttl
deleted file mode 100644
index 194c0f0e..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-struct-17.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# BNode as predicate
-<http://example/s> _:a <http://example/p> .
diff --git a/tests/tests-ttl/turtle-syntax-bad-uri-01.ttl b/tests/tests-ttl/turtle-syntax-bad-uri-01.ttl
deleted file mode 100644
index 0e69dc0c..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-uri-01.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# Bad IRI : space.
-<http://example/ space> <http://example/p> <http://example/o> .
diff --git a/tests/tests-ttl/turtle-syntax-bad-uri-02.ttl b/tests/tests-ttl/turtle-syntax-bad-uri-02.ttl
deleted file mode 100644
index 36d91af9..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-uri-02.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# Bad IRI : bad escape
-<http://example/\u00ZZ11> <http://example/p> <http://example/o> .
diff --git a/tests/tests-ttl/turtle-syntax-bad-uri-03.ttl b/tests/tests-ttl/turtle-syntax-bad-uri-03.ttl
deleted file mode 100644
index f512345f..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-uri-03.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# Bad IRI : bad escape
-<http://example/\U00ZZ1111> <http://example/p> <http://example/o> .
diff --git a/tests/tests-ttl/turtle-syntax-bad-uri-04.ttl b/tests/tests-ttl/turtle-syntax-bad-uri-04.ttl
deleted file mode 100644
index 5cab062c..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-uri-04.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# Bad IRI : character escapes not allowed.
-<http://example/\n> <http://example/p> <http://example/o> .
diff --git a/tests/tests-ttl/turtle-syntax-bad-uri-05.ttl b/tests/tests-ttl/turtle-syntax-bad-uri-05.ttl
deleted file mode 100644
index be0a21e0..00000000
--- a/tests/tests-ttl/turtle-syntax-bad-uri-05.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# Bad IRI : character escapes not allowed.
-<http://example/\/> <http://example/p> <http://example/o> .
diff --git a/tests/tests-ttl/turtle-syntax-base-01.ttl b/tests/tests-ttl/turtle-syntax-base-01.ttl
deleted file mode 100644
index dff1b3b4..00000000
--- a/tests/tests-ttl/turtle-syntax-base-01.ttl
+++ /dev/null
@@ -1 +0,0 @@
-@base <http://example/> .
diff --git a/tests/tests-ttl/turtle-syntax-base-03.ttl b/tests/tests-ttl/turtle-syntax-base-03.ttl
deleted file mode 100644
index 19414dd0..00000000
--- a/tests/tests-ttl/turtle-syntax-base-03.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@base <http://example/> .
-<s> <p> <o> .
diff --git a/tests/tests-ttl/turtle-syntax-bnode-01.ttl b/tests/tests-ttl/turtle-syntax-bnode-01.ttl
deleted file mode 100644
index 2d0a548a..00000000
--- a/tests/tests-ttl/turtle-syntax-bnode-01.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-[] :p :o .
diff --git a/tests/tests-ttl/turtle-syntax-bnode-02.ttl b/tests/tests-ttl/turtle-syntax-bnode-02.ttl
deleted file mode 100644
index 8d681582..00000000
--- a/tests/tests-ttl/turtle-syntax-bnode-02.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-:s :p [] .
diff --git a/tests/tests-ttl/turtle-syntax-bnode-03.ttl b/tests/tests-ttl/turtle-syntax-bnode-03.ttl
deleted file mode 100644
index 58719441..00000000
--- a/tests/tests-ttl/turtle-syntax-bnode-03.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-:s :p [ :q :o ] .
diff --git a/tests/tests-ttl/turtle-syntax-bnode-04.ttl b/tests/tests-ttl/turtle-syntax-bnode-04.ttl
deleted file mode 100644
index 09f096d1..00000000
--- a/tests/tests-ttl/turtle-syntax-bnode-04.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-:s :p [ :q1 :o1 ; :q2 :o2 ] .
diff --git a/tests/tests-ttl/turtle-syntax-bnode-05.ttl b/tests/tests-ttl/turtle-syntax-bnode-05.ttl
deleted file mode 100644
index 6eec0b5f..00000000
--- a/tests/tests-ttl/turtle-syntax-bnode-05.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-[ :q1 :o1 ; :q2 :o2 ] :p :o .
diff --git a/tests/tests-ttl/turtle-syntax-bnode-06.ttl b/tests/tests-ttl/turtle-syntax-bnode-06.ttl
deleted file mode 100644
index a930b24c..00000000
--- a/tests/tests-ttl/turtle-syntax-bnode-06.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-_:a :p :o .
diff --git a/tests/tests-ttl/turtle-syntax-bnode-07.ttl b/tests/tests-ttl/turtle-syntax-bnode-07.ttl
deleted file mode 100644
index 19462a69..00000000
--- a/tests/tests-ttl/turtle-syntax-bnode-07.ttl
+++ /dev/null
@@ -1,3 +0,0 @@
-@prefix : <http://example/> .
-:s :p _:a .
-_:a :p :o .
diff --git a/tests/tests-ttl/turtle-syntax-bnode-08.ttl b/tests/tests-ttl/turtle-syntax-bnode-08.ttl
deleted file mode 100644
index e379819d..00000000
--- a/tests/tests-ttl/turtle-syntax-bnode-08.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-[ :p :o ] .
diff --git a/tests/tests-ttl/turtle-syntax-bnode-09.ttl b/tests/tests-ttl/turtle-syntax-bnode-09.ttl
deleted file mode 100644
index 568be4e3..00000000
--- a/tests/tests-ttl/turtle-syntax-bnode-09.ttl
+++ /dev/null
@@ -1,3 +0,0 @@
-@prefix : <http://example/> .
-[ :p :o1,:2 ] .
-:s :p :o .
diff --git a/tests/tests-ttl/turtle-syntax-kw-03.ttl b/tests/tests-ttl/turtle-syntax-kw-03.ttl
deleted file mode 100644
index ca35f7a5..00000000
--- a/tests/tests-ttl/turtle-syntax-kw-03.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-:s a :C .
diff --git a/tests/tests-ttl/turtle-syntax-lists-01.ttl b/tests/tests-ttl/turtle-syntax-lists-01.ttl
deleted file mode 100644
index 438a4711..00000000
--- a/tests/tests-ttl/turtle-syntax-lists-01.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-:s :p () .
diff --git a/tests/tests-ttl/turtle-syntax-lists-02.ttl b/tests/tests-ttl/turtle-syntax-lists-02.ttl
deleted file mode 100644
index 20ddd626..00000000
--- a/tests/tests-ttl/turtle-syntax-lists-02.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-:s :p (1 "2" :o) .
diff --git a/tests/tests-ttl/turtle-syntax-lists-03.ttl b/tests/tests-ttl/turtle-syntax-lists-03.ttl
deleted file mode 100644
index 5656dca3..00000000
--- a/tests/tests-ttl/turtle-syntax-lists-03.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-(1) :p (1) .
diff --git a/tests/tests-ttl/turtle-syntax-lists-04.ttl b/tests/tests-ttl/turtle-syntax-lists-04.ttl
deleted file mode 100644
index 2adee236..00000000
--- a/tests/tests-ttl/turtle-syntax-lists-04.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-(()) :p (()) .
diff --git a/tests/tests-ttl/turtle-syntax-lists-05.ttl b/tests/tests-ttl/turtle-syntax-lists-05.ttl
deleted file mode 100644
index 84f6e722..00000000
--- a/tests/tests-ttl/turtle-syntax-lists-05.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-(1 2 (1 2)) :p (( "a") "b" :o) .
diff --git a/tests/tests-ttl/turtle-syntax-ns-dots.ttl b/tests/tests-ttl/turtle-syntax-ns-dots.ttl
deleted file mode 100644
index 78465870..00000000
--- a/tests/tests-ttl/turtle-syntax-ns-dots.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix e.g: <http://example/> .
-e.g:s e.g:p e.g:o .
diff --git a/tests/tests-ttl/turtle-syntax-pname-esc-03.ttl b/tests/tests-ttl/turtle-syntax-pname-esc-03.ttl
deleted file mode 100644
index e259f345..00000000
--- a/tests/tests-ttl/turtle-syntax-pname-esc-03.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-:xyz\~ :abc\.: : .
diff --git a/tests/tests-ttl/turtle-syntax-prefix-01.ttl b/tests/tests-ttl/turtle-syntax-prefix-01.ttl
deleted file mode 100644
index 89e08cc7..00000000
--- a/tests/tests-ttl/turtle-syntax-prefix-01.ttl
+++ /dev/null
@@ -1 +0,0 @@
-@prefix : <http://example/> .
diff --git a/tests/tests-ttl/turtle-syntax-prefix-04.ttl b/tests/tests-ttl/turtle-syntax-prefix-04.ttl
deleted file mode 100644
index 3d1b4097..00000000
--- a/tests/tests-ttl/turtle-syntax-prefix-04.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-:s :p :%20 .
diff --git a/tests/tests-ttl/turtle-syntax-prefix-05.ttl b/tests/tests-ttl/turtle-syntax-prefix-05.ttl
deleted file mode 100644
index 36b46fcc..00000000
--- a/tests/tests-ttl/turtle-syntax-prefix-05.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-: : : .
diff --git a/tests/tests-ttl/turtle-syntax-prefix-06.ttl b/tests/tests-ttl/turtle-syntax-prefix-06.ttl
deleted file mode 100644
index eb21c253..00000000
--- a/tests/tests-ttl/turtle-syntax-prefix-06.ttl
+++ /dev/null
@@ -1,4 +0,0 @@
-# colon is a legal pname character
-@prefix : <http://example/> .
-@prefix x: <http://example/> .
-:a:b:c x:d:e:f :::: .
diff --git a/tests/tests-ttl/turtle-syntax-prefix-09.ttl b/tests/tests-ttl/turtle-syntax-prefix-09.ttl
deleted file mode 100644
index 6f6345e1..00000000
--- a/tests/tests-ttl/turtle-syntax-prefix-09.ttl
+++ /dev/null
@@ -1,4 +0,0 @@
-# percents
-@prefix : <http://example/> .
-@prefix x: <http://example/> .
-:a%3E x:%25 :a%3Eb .
diff --git a/tests/tests-ttl/turtle-syntax-str-esc-01.ttl b/tests/tests-ttl/turtle-syntax-str-esc-01.ttl
deleted file mode 100644
index 3925f2ec..00000000
--- a/tests/tests-ttl/turtle-syntax-str-esc-01.ttl
+++ /dev/null
@@ -1 +0,0 @@
-<http://example/s> <http://example/p> "a\n" .
diff --git a/tests/tests-ttl/turtle-syntax-str-esc-02.ttl b/tests/tests-ttl/turtle-syntax-str-esc-02.ttl
deleted file mode 100644
index e7d032f0..00000000
--- a/tests/tests-ttl/turtle-syntax-str-esc-02.ttl
+++ /dev/null
@@ -1 +0,0 @@
-<http://example/s> <http://example/p> "a\u0020b" .
diff --git a/tests/tests-ttl/turtle-syntax-str-esc-03.ttl b/tests/tests-ttl/turtle-syntax-str-esc-03.ttl
deleted file mode 100644
index b8588c79..00000000
--- a/tests/tests-ttl/turtle-syntax-str-esc-03.ttl
+++ /dev/null
@@ -1 +0,0 @@
-<http://example/s> <http://example/p> "a\U00000020b" .
diff --git a/tests/tests-ttl/turtle-syntax-string-01.ttl b/tests/tests-ttl/turtle-syntax-string-01.ttl
deleted file mode 100644
index 5333aefe..00000000
--- a/tests/tests-ttl/turtle-syntax-string-01.ttl
+++ /dev/null
@@ -1 +0,0 @@
-<http://example/s> <http://example/p> "string" .
diff --git a/tests/tests-ttl/turtle-syntax-string-02.ttl b/tests/tests-ttl/turtle-syntax-string-02.ttl
deleted file mode 100644
index 1ab55a33..00000000
--- a/tests/tests-ttl/turtle-syntax-string-02.ttl
+++ /dev/null
@@ -1 +0,0 @@
-<http://example/s> <http://example/p> "string"@en .
diff --git a/tests/tests-ttl/turtle-syntax-string-03.ttl b/tests/tests-ttl/turtle-syntax-string-03.ttl
deleted file mode 100644
index b34ca0f6..00000000
--- a/tests/tests-ttl/turtle-syntax-string-03.ttl
+++ /dev/null
@@ -1 +0,0 @@
-<http://example/s> <http://example/p> "string"@en-uk .
diff --git a/tests/tests-ttl/turtle-syntax-string-04.ttl b/tests/tests-ttl/turtle-syntax-string-04.ttl
deleted file mode 100644
index 09ebaa1f..00000000
--- a/tests/tests-ttl/turtle-syntax-string-04.ttl
+++ /dev/null
@@ -1 +0,0 @@
-<http://example/s> <http://example/p> 'string' .
diff --git a/tests/tests-ttl/turtle-syntax-string-05.ttl b/tests/tests-ttl/turtle-syntax-string-05.ttl
deleted file mode 100644
index b7d3978d..00000000
--- a/tests/tests-ttl/turtle-syntax-string-05.ttl
+++ /dev/null
@@ -1 +0,0 @@
-<http://example/s> <http://example/p> 'string'@en .
diff --git a/tests/tests-ttl/turtle-syntax-string-06.ttl b/tests/tests-ttl/turtle-syntax-string-06.ttl
deleted file mode 100644
index da99bc28..00000000
--- a/tests/tests-ttl/turtle-syntax-string-06.ttl
+++ /dev/null
@@ -1 +0,0 @@
-<http://example/s> <http://example/p> 'string'@en-uk .
diff --git a/tests/tests-ttl/turtle-syntax-string-07.ttl b/tests/tests-ttl/turtle-syntax-string-07.ttl
deleted file mode 100644
index b848eead..00000000
--- a/tests/tests-ttl/turtle-syntax-string-07.ttl
+++ /dev/null
@@ -1 +0,0 @@
-<http://example/s> <http://example/p> """abc""def''ghi""" .
diff --git a/tests/tests-ttl/turtle-syntax-string-08.ttl b/tests/tests-ttl/turtle-syntax-string-08.ttl
deleted file mode 100644
index c7376d44..00000000
--- a/tests/tests-ttl/turtle-syntax-string-08.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-<http://example/s> <http://example/p> """abc
-def""" .
diff --git a/tests/tests-ttl/turtle-syntax-string-09.ttl b/tests/tests-ttl/turtle-syntax-string-09.ttl
deleted file mode 100644
index fd300f4a..00000000
--- a/tests/tests-ttl/turtle-syntax-string-09.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-<http://example/s> <http://example/p> '''abc
-def''' .
diff --git a/tests/tests-ttl/turtle-syntax-string-10.ttl b/tests/tests-ttl/turtle-syntax-string-10.ttl
deleted file mode 100644
index a0ead0cf..00000000
--- a/tests/tests-ttl/turtle-syntax-string-10.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-<http://example/s> <http://example/p> """abc
-def"""@en .
diff --git a/tests/tests-ttl/turtle-syntax-string-11.ttl b/tests/tests-ttl/turtle-syntax-string-11.ttl
deleted file mode 100644
index fb722b6f..00000000
--- a/tests/tests-ttl/turtle-syntax-string-11.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-<http://example/s> <http://example/p> '''abc
-def'''@en .
diff --git a/tests/tests-ttl/turtle-syntax-struct-01.ttl b/tests/tests-ttl/turtle-syntax-struct-01.ttl
deleted file mode 100644
index 0674e0ab..00000000
--- a/tests/tests-ttl/turtle-syntax-struct-01.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-@prefix : <http://example/> .
-:s :p :o1 , :o2 .
diff --git a/tests/tests-ttl/turtle-syntax-struct-02.ttl b/tests/tests-ttl/turtle-syntax-struct-02.ttl
deleted file mode 100644
index ccbf36e8..00000000
--- a/tests/tests-ttl/turtle-syntax-struct-02.ttl
+++ /dev/null
@@ -1,3 +0,0 @@
-@prefix : <http://example/> .
-:s :p1 :o1 ;
- :p2 :o2 .
diff --git a/tests/tests-ttl/turtle-syntax-struct-03.ttl b/tests/tests-ttl/turtle-syntax-struct-03.ttl
deleted file mode 100644
index 503ee6e9..00000000
--- a/tests/tests-ttl/turtle-syntax-struct-03.ttl
+++ /dev/null
@@ -1,4 +0,0 @@
-@prefix : <http://example/> .
-:s :p1 :o1 ;
- :p2 :o2 ;
- .
diff --git a/tests/tests-ttl/turtle-syntax-struct-04.ttl b/tests/tests-ttl/turtle-syntax-struct-04.ttl
deleted file mode 100644
index 8e771a54..00000000
--- a/tests/tests-ttl/turtle-syntax-struct-04.ttl
+++ /dev/null
@@ -1,4 +0,0 @@
-@prefix : <http://example/> .
-:s :p1 :o1 ;;
- :p2 :o2
- .
diff --git a/tests/tests-ttl/turtle-syntax-struct-05.ttl b/tests/tests-ttl/turtle-syntax-struct-05.ttl
deleted file mode 100644
index 53757297..00000000
--- a/tests/tests-ttl/turtle-syntax-struct-05.ttl
+++ /dev/null
@@ -1,4 +0,0 @@
-@prefix : <http://example/> .
-:s :p1 :o1 ;
- :p2 :o2 ;;
- .
diff --git a/tests/tests-ttl/turtle-syntax-uri-01.ttl b/tests/tests-ttl/turtle-syntax-uri-01.ttl
deleted file mode 100644
index 02e6ba98..00000000
--- a/tests/tests-ttl/turtle-syntax-uri-01.ttl
+++ /dev/null
@@ -1 +0,0 @@
-<http://example/s> <http://example/p> <http://example/o> .
diff --git a/tests/tests-ttl/turtle-syntax-uri-02.ttl b/tests/tests-ttl/turtle-syntax-uri-02.ttl
deleted file mode 100644
index 664feea1..00000000
--- a/tests/tests-ttl/turtle-syntax-uri-02.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# x53 is capital S
-<http://example/\u0053> <http://example/p> <http://example/o> .
diff --git a/tests/tests-ttl/turtle-syntax-uri-03.ttl b/tests/tests-ttl/turtle-syntax-uri-03.ttl
deleted file mode 100644
index b5aeb26e..00000000
--- a/tests/tests-ttl/turtle-syntax-uri-03.ttl
+++ /dev/null
@@ -1,2 +0,0 @@
-# x53 is capital S
-<http://example/\U00000053> <http://example/p> <http://example/o> .
diff --git a/wscript b/wscript
index 7277e336..f5f02439 100644
--- a/wscript
+++ b/wscript
@@ -307,7 +307,7 @@ def test_thru(ctx, base, path, check_filename, flags):
return False
-def test_manifest(ctx, srcdir, testdir, report, test_base, parse_base):
+def test_manifest(ctx, srcdir, testdir, report, base_uri):
import rdflib
import urlparse
@@ -319,7 +319,7 @@ def test_manifest(ctx, srcdir, testdir, report, test_base, parse_base):
model = rdflib.ConjunctiveGraph()
model.parse(os.path.join(srcdir, 'tests', testdir, 'manifest.ttl'),
- rdflib.URIRef(test_base + 'manifest.ttl'),
+ rdflib.URIRef(base_uri + 'manifest.ttl'),
format='n3')
is_drobilla = (os.getenv('USER') == 'drobilla')
@@ -329,14 +329,14 @@ def test_manifest(ctx, srcdir, testdir, report, test_base, parse_base):
output = os.path.join('tests', testdir, action_node + '.out')
action = os.path.join(srcdir, 'tests', testdir, action_node)
rel = os.path.relpath(action, os.path.join(srcdir, 'tests', testdir))
- command = 'serdi_static -f "%s" "%s" > %s' % (action, parse_base + rel, output)
+ command = 'serdi_static -f "%s" "%s" > %s' % (action, base_uri + rel, output)
return autowaf.run_test(ctx, APPNAME, command, expected_return, name=name)
for i in sorted(model.triples([None, rdf.type, rdft.TestTurtlePositiveSyntax])):
test = i[0]
name = model.value(test, mf.name, None)
- action_node = model.value(test, mf.action, None)[len(test_base):]
+ action_node = model.value(test, mf.action, None)[len(base_uri):]
passed = run_test(action_node, 0)
report.write(earl_assertion(test, passed, asserter))
@@ -344,7 +344,7 @@ def test_manifest(ctx, srcdir, testdir, report, test_base, parse_base):
for i in sorted(model.triples([None, rdf.type, rdft.TestTurtleNegativeSyntax])):
test = i[0]
name = model.value(test, mf.name, None)
- action_node = model.value(test, mf.action, None)[len(test_base):]
+ action_node = model.value(test, mf.action, None)[len(base_uri):]
passed = run_test(action_node, 1)
report.write(earl_assertion(test, passed, asserter))
@@ -352,7 +352,7 @@ def test_manifest(ctx, srcdir, testdir, report, test_base, parse_base):
for i in sorted(model.triples([None, rdf.type, rdft.TestTurtleNegativeEval])):
test = i[0]
name = model.value(test, mf.name, None)
- action_node = model.value(test, mf.action, None)[len(test_base):]
+ action_node = model.value(test, mf.action, None)[len(base_uri):]
passed = run_test(action_node, 1)
report.write(earl_assertion(test, passed, asserter))
@@ -360,8 +360,8 @@ def test_manifest(ctx, srcdir, testdir, report, test_base, parse_base):
for i in sorted(model.triples([None, rdf.type, rdft.TestTurtleEval])):
test = i[0]
name = model.value(test, mf.name, None)
- action_node = model.value(test, mf.action, None)[len(test_base):]
- result_node = model.value(test, mf.result, None)[len(test_base):]
+ action_node = model.value(test, mf.action, None)[len(base_uri):]
+ result_node = model.value(test, mf.result, None)[len(base_uri):]
passed = run_test(action_node, 0)
@@ -379,13 +379,13 @@ def test_manifest(ctx, srcdir, testdir, report, test_base, parse_base):
else:
Logs.pprint('GREEN', '** Pass %s' % output)
- test_thru(ctx, parse_base + action_node, action, result, "")
+ test_thru(ctx, base_uri + action_node, action, result, "")
report.write(earl_assertion(test, passed, asserter))
def test(ctx):
blddir = autowaf.build_dir(APPNAME, 'tests')
- for i in ['', 'bad', 'good', 'new', 'tests-ttl', 'extra']:
+ for i in ['', 'bad', 'good', 'new', 'TurtleTests', 'extra']:
try:
os.makedirs(os.path.join(blddir, i))
except:
@@ -508,6 +508,8 @@ def test(ctx):
check = os.path.join(srcdir, path.replace('.ttl', '.nt'))
test_thru(ctx, test_base(test), path, check, flags)
+
+ # New manifest-driven tests
try:
report = open('earl.ttl', 'w')
report.write('''@prefix earl: <http://www.w3.org/ns/earl#> .
@@ -517,10 +519,8 @@ def test(ctx):
for line in serd_ttl:
report.write(line)
serd_ttl.close()
- rdf_turtle = 'https://dvcs.w3.org/hg/rdf/raw-file/default/rdf-turtle/'
- test_manifest(ctx, srcdir, 'tests-ttl', report,
- rdf_turtle + 'tests-ttl/', 'http://example/base/')
-
+ turtle_tests = 'http://www.w3.org/2013/TurtleTests/'
+ test_manifest(ctx, srcdir, 'TurtleTests', report, turtle_tests)
report.close()
except: