NOTE_RECORD in the spec represents a root-level NOTE, and NOTE_STRUCTURE represents either a reference to a NOTE_RECORD or an inline NOTE, either of which can have its own set of custom tags. However, the existing Note class is a weird hybrid of these three possibilities. These need to get separated to allow proper parsing, writing, and custom tag processing.
NOTE_RECORD in the spec represents a root-level NOTE, and NOTE_STRUCTURE represents either a reference to a NOTE_RECORD or an inline NOTE, either of which can have its own set of custom tags. However, the existing Note class is a weird hybrid of these three possibilities. These need to get separated to allow proper parsing, writing, and custom tag processing.