RFC 4180 quoting: always quote, so a field containing a newline stays one field.
A cell that would start a formula additionally gets a leading apostrophe, the
conventional way to force a spreadsheet to treat it as text. That does alter the
value, which this project otherwise never does — but a title is upstream text we
do not control, and the same reasoning that strips terminal escapes out of server
responses applies to handing a parliament's text to Excel as executable. CSV is
already the lossy rendering (it drops the Q/A text); json, jsonl and jsonld
carry every value exactly as extracted.
RFC 4180 quoting: always quote, so a field containing a newline stays one field.
A cell that would start a formula additionally gets a leading apostrophe, the conventional way to force a spreadsheet to treat it as text. That does alter the value, which this project otherwise never does — but a title is upstream text we do not control, and the same reasoning that strips terminal escapes out of server responses applies to handing a parliament's text to Excel as executable. CSV is already the lossy rendering (it drops the Q/A text);
json,jsonlandjsonldcarry every value exactly as extracted.