Thanks, Torsten. Very illuminating.
The org-syntax.html says of blocks:
#+BEGIN_NAME PARAMETERS
CONTENTS
#+END_NAME
NAME can contain any non-whitespace character.
PARAMETERS can contain any character other than new line, and can be omitted.
If NAME is “CENTER”, it will be a “center block”. If it is “QUOTE”, it will be a “quote block”.
If the block is neither a center block, a quote block or a block element, it will be a “special block”.
That does not seem to be quite true as lisp/org-element.el recognises the following blocks (perlregexp: /begin_(\w+)/i):
- CENTER
- COMMENT
- EXAMPLE
- QUOTE
- SRC
- VERSE
... in addition to any other valid block names. For these, the content is displayed as plain text after striping the BEGIN/END lines unless the exporter used has code for handling it differently.
Note: org-syntax.html needs updating.
So, to implement parameters for the EXAMPLE block, relevant code has to be added to the exporter. That's a nontrivial task to do consistently.
Incidentally, the solution to my immediate problem is the COMMENT block. Its contents are completely ignored and not passed to exporters. If I find myself using that a lot, a macro or a a function to toggle between these two might come handy:
#+BEGIN_COMMENT :type EXAMPLE
text in a block
#+END_COMMENT
<>
#+BEGIN_ EXAMPLE
text in a block
#+END_EXAMPLE
Unless someone beats me to it, I'll write it one day. :)