줄 단위로 독립적인 값
각 줄은 그 자체로 올바른 JSON 값이어야 한다. 객체와 배열뿐 아니라 문자열이나 숫자, null도 사용할 수 있다. 빈 줄은 JSON 값이 아니므로 유효한 기록으로 취급하지 않는다. 하나의 값을 보기 좋게 여러 줄로 펼치면 줄마다 값이 완성되어야 한다는 규칙에 맞지 않는다.
인코딩과 마지막 줄
UTF-8을 사용하고 파일 시작에 바이트 순서 표시는 넣지 않는다. 줄바꿈은 LF를 기준으로 하며 CRLF도 해석할 수 있다. 마지막 값 뒤의 줄바꿈은 필수가 아니지만 권장된다. 모든 기록을 줄바꿈으로 끝내면 파일을 이어 붙일 때 기록 경계를 유지하기 쉽다.
연속 처리와 파일 보관
기록을 차례로 처리할 수 있어 텍스트 도구와 결합하기 편하다. gzip 같은 스트림 압축을 적용해 보관할 수도 있다. 줄 구분만으로 전체 파일이 하나의 JSON 문서가 되는 것은 아니며 각 기록의 자료 구조가 서로 같아야 한다는 별도 규칙도 없다.
관련 문서
JSON 텍스트 시퀀스 / JSON / UTF-8 / 로그 / Gzip / 데이터 직렬화