Skip to content

Turtle import rejects _:label. (blank-node label immediately followed by statement dot) #1444

Description

@aaj3f

parse_blank_node_name (fluree-graph-turtle/src/lex/lexer.rs:477-490) greedily consumes a trailing . into the label, then hard-errors, rejecting valid Turtle (_:o6.) that every other store ingests (per Turtle spec, PN_LOCAL must not end with a dot; the dot is the statement terminator). Blocks the four W3C json-res tests and any user data of this shape.

Fix constraint from adversarial review: use greedy-scan + trailing-dot rewind, not a lookahead loop — spec-valid _:a..b currently lexes and must remain byte-identical. Import-hot path: insert_formats + import_bulk benches gate the change. Roadmap PR-L1.

Found and verified by the W3C SPARQL burn-down audit (PR #1437; docs/audit/burn-down/ROADMAP.md §5 on branch test/sparql-testsuite-full-coverage).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions