A section is started with a section command and terminated with a corresponding end command. Implementations MUST ignore any content between and including an unrecognized section command and the corresponding end command [5].
A section is terminated with an end command. Implementations MUST raise errors if an end-of-file condition is encountered before an end command is given for the current section.
Ignoring unrecognized sections allows for forwards compatibility: An implementation supporting version m can read a file of version n, where m < n, and ignore any new sections specified by format n that it does not understand.