Stricter requirements for document submissions (SD-7)

Document number:
P3702R0
Date:
2025-05-19
Audience:
WG21
Project:
ISO/IEC 14882 Programming Languages — C++, ISO/IEC JTC1/SC22/WG21
Reply-To:
Jan Schultke <janschultke@gmail.com>
GitHub Issue:
wg21.link/P3702R0/github
Source:
github.com/Eisenwave/cpp-proposals/blob/master/src/sd-7-updates.cow

HTML is an extremely feature-rich file format, and a popular format for WG21 proposals. However, the current SD-7 rules for document submissions are extremely lax, and permit the use of legally problematic features. It would be better to formalize the currently unwritten rules.

Contents

1

Introduction

1.1

Accessibility and legal concerns

1.2

Generative AI

1.3

Goals

1.4

Non-goals

2

Wording

3

References

1. Introduction

HTML is an extremely feature-rich file format. Among other features, this includes:

There exists an unwritten rule to keep HTML papers as simple and non-interactive as possible, but this has never been properly formalized.

This could have legally problematic consequences. For example, if HTML papers are hosted on open-std.org and they make use of cookies (perhaps unintentionally, via YouTube <embed>), and the user never consented to this, this may be in violation of European law ([GdprCookies]).

1.2. Generative AI

ISO has recently published "Guidance on use of artificial intelligence (AI) for ISO committees" ([ISO-AI]). Among other principles, there is:

Respect ISO’s standards development policies
Do ensure you are familiar with, and abide by, the ISO Copyright policy and implementation guidelines, ISO/IEC Directives and ISO Privacy notice, which are mandatorily applicable to ISO technical work.

Do not use images or text created by generative AI in any ISO content, either internally or externally.

While not all documents may be considered "ISO content", we expect them to be written by humans, not ChatGPT. This applies universally to meeting announcements, editor's reports, proposals, etc.

1.3. Goals

The purpose of this proposal is to come up with a set of rules that would:

1.4. Non-goals

The goal is not to put a blanket-ban any technologies outside of "simple HTML" and CSS. There are many valid uses for more advanced parts. For example,

2. Wording

Change [SD-7] as follows:

Note blocks like this one within the changes are editor's notes, not part of the change itself.

Doc. No.: SD-7
Date: 2023-02-18 2025-05-19
Reply to: Nevin Liber
Title: Mailing procedures

Note: This document is intended for WG21 committee members. If you are not a committee member, please see the How To Submit a Proposal page for public instructions about how to get started with a proposal.


This is a summary of the procedures to be used for submitting papers to PL22.16/WG21.

We are fortunate to have a very large volume of papers, but to allow everyone to make the best use of their time in reading the papers, some additional effort is needed from the authors.

  1. Please make sure the document header includes the information specified below.
  2. Non-trivial papers should include an abstract.
  3. Papers that revise earlier papers should provide a change history to allow people to focus on the changed sections of the paper.

Items (2) and (3) above are not needed for things like working drafts, papers that essentially just provide working paper changes for an issue or feature, and issue lists excerpts for reference by straw polls.

Document headers and metadata

The following information should be included in the document header:

In case it's not clear: the changes above merely make some text bold, i.e. add <b> tags.

This may precede or follow the document title depending on the way in which your document is formatted.

In the past, many documents included something like:

“Project: ISO JTC1/SC22/WG21: Programming Language C++”

While you are welcome to include this, it is not necessary.

The above should only be considered as the information needed, not the formatting. People prepare documents in a variety of ways, and that is fine.

The blocks which are now sectioned "Document numbers" and "Audience" have been reordered, compared to the original.

This was done to match the order in the bullet list above, and so that document numbers are explained first. Document numbers are arguably more important and commonly needed information than the audience.

Document numbers

Meeting announcements, minutes, working drafts, editor's reports, and official document submissions (CD, PDTS, etc.), and records of response must use N numbers. ; all other documents should use P numbers.

All other documents should use P numbers.

P documents will initially be published as P0xxxR0 PxxxxR0 (revision 0). The document number in the paper header should be in that format. If you submit an updated version at some point, it will still be P0xxx Pxxxx, but will be revision 1. The revision numbers only change when a document is submitted for a mailing.

The revision numbers only change when a document is submitted for a mailing.

Documents circulated as drafts should have D numbers (Dxxxx for N documents, and D0xxxRn DxxxxRn for P documents). Only documents for publication should have the N or P numbers.

To obtain a document number, send mail to vice-chair Nevin Liber. Include as much of the document header information as is available in the document number request.

Audience

In particular, the The “audience” is the piece of information most commonly not made explicit. For the audience, you can put working group names (Core, Evolution, Library, etc.), study groups (concurrency Concurrency, modules Modules, etc.). The group names are generally used in the document index, so you might want to use those in your document. But if you put SG1 in your document, I will normalize that to Concurrency in the index.

The deleted sentence appears to be outdated. wg21.link/index.html displays "SG1 Concurrency and Parallelism", and wg21.link/index.json stores "SG1".

I think we can simply delete it because the normalization is an implementation detail of the document index, and may be subject to change.

Note also that a document can have more than one audience.

File format and content requirements

Documents must be in PDF (.pdf), HTML (.html or .htm), text (.txt), or Markdown (.md) format.

For Markdown files, use UTF-8 encoding. All documents should use UTF-8 encoding.

For HTML files, make sure that the encoding is specified in the file. For text files, please use US ASCII (ISO 646) encoding.

If this change is not implementable due to limitations of the server that isocpp.org is running on, then this change may have to be discarded.

Otherwise, UTF-8 HTML papers papers without <meta charset=UTF-8>, and UTF-8 plain text files ought to work; the year is 2025.

General rules

  1. Documents shall not contain content that is illegal, plagiarized, and/or produced by generative AI.
  2. Documents should be accessible. For instance:
    • Text should be high-contrast.
    • Any non-decorative image should include an alt text (![...]() in Markdown, <img alt=...> in HTML, etc.). Alternatively, the contents of the image should be described in text.
    • In HTML documents, you can use <math> (MathML) tags for math formulas; assistive technology like screen readers can process these.
    See also Web Content Accessibility Guidelines (Quick Reference).
  3. Except for plain text files, code samples should use monospace/code font. This can be done with ``` in Markdown, <pre> in HTML, etc.

We could go into much more detail with general good practices and tips on how to make your documents more readable, but that is outside the scope of SD-7.

The goal here is to establish a minimum set of rules that every document needs to satisfy. For example, yellow-on-white Times New Roman code blocks could be considered such a severe violation of the mailing procedures, that the author could be required to revise the paper.

Furthermore, while we cannot expect all submitted documents to have AAA compliance with the [WCAG], the [ISO-Coc] requires us to "Promote and enable all voices to be heard", and raising awareness for document accessibility is a good step towards that.

Rules for HTML documents

  1. Documents shall not use any technology that requires user consent in some countries. This includes <embed>s with third-party content, cookies, etc.
  2. All non-decorative content should be static and readable with JavaScript disabled. For example, do not hide possible design or wording options for a proposal in a <detail> element. However, you can use JavaScript and other interactive features for dark/light theme toggles, to show/hide sidebars, and other optional enhancements.
  3. Documents should only use features that are commonly supported by modern browsers.
  4. Documents should be portable. That is, when the HTML file is downloaded and viewed offline with file: protocol, all non-decorative content needs to be readable. In particular, images and other media need to be embedded in the HTML file, not loaded from an external website. You can use external sources for fonts, as long as the document is readable without these fonts (in an uglier state).

Rules for Markdown documents

Markdown documents should follow the following rules:

  1. Files should be usable either in their original text form or as formatted by a Markdown processor, so make sure the text form is well formatted.
  2. The document should follow the Commonmark specification.

Submission deadlines

The pre-meeting mailing deadline is the Monday four weeks before the start of the meeting.

The post-meeting mailing is the Monday three weeks after the start of the meeting.

All papers must be received by the vice-chair by 15:00 UTC on the Monday of the mailing deadline.

3. References

[SD-7] Nevin Liber. SD-7: Mailing Procedures and How to Write Papers 2025-02-18 https://isocpp.org/std/standing-documents/sd-7-mailing-procedures-and-how-to-write-papers
[GdprCookies] Cookies, the GDPR, and the ePrivacy Directive https://gdpr.eu/cookies/
[WCAG] How to Meet Web Content Accessibility Guidelines (Quick Reference) https://www.w3.org/WAI/WCAG22/quickref/