{ "version": "1.4", "category": "decode", "description": "Whitespace tolerance in decoding - surrounding spaces around delimiters and values", "tests": [ { "name": "tolerates spaces around commas in inline arrays", "input": "tags[3]: a , b , c", "expected": { "tags": ["a", "b", "c"] }, "specSection": "12", "note": "Surrounding whitespace SHOULD be tolerated; tokens are trimmed" }, { "name": "tolerates spaces around pipes in inline arrays", "input": "tags[3|]: a | b | c", "expected": { "tags": ["a", "b", "c"] }, "specSection": "12" }, { "name": "tolerates spaces around tabs in inline arrays", "input": "tags[3\t]: a \t b \t c", "expected": { "tags": ["a", "b", "c"] }, "specSection": "12" }, { "name": "tolerates leading and trailing spaces in tabular row values", "input": "items[2]{id,name}:\n 1 , Alice \n 2 , Bob ", "expected": { "items": [ { "id": 1, "name": "Alice" }, { "id": 2, "name": "Bob" } ] }, "specSection": "12", "note": "Values in tabular rows are trimmed" }, { "name": "tolerates spaces around delimiters with quoted values", "input": "items[3]: \"a\" , \"b\" , \"c\"", "expected": { "items": ["a", "b", "c"] }, "specSection": "12" }, { "name": "parses empty tokens as empty string", "input": "items[3]: a,,c", "expected": { "items": ["a", "", "c"] }, "specSection": "12", "note": "Empty token (nothing between delimiters) decodes to empty string" } ] }