ProficientNowTechRFCs

3. Document Structure

RFC Authoring Standards                                           Section 3
Category: Standards Track                              Document Structure

3. Document Structure

← Versioning | Index | Next →


3.1 Multi-File Organization

Each RFC MUST be organized as a directory containing multiple markdown files. The specific structure depends on the RFC Kind (see Section 1.4).

General Directory Structure:

Path PatternRFC Type
docs/platform/rfcs/<domain>/Architecture RFCs
docs/platform/rfcs/spec-<domain>/Specification RFCs
docs/platform/rfcs/bcp-<domain>/BCP RFCs
docs/standards/rfc-kinds/<kind>/Standards RFCs

3.2 File Naming Conventions

RuleDescription
CaseFiles MUST use lowercase with hyphens as separators
PrefixFiles MUST be prefixed with two-digit section numbers
SequenceSection numbers MUST be sequential starting from 00
AppendicesAppendices MUST use format appendix-<letter>-<name>.md

3.3 Section Requirement Levels

Each section in an RFC has a requirement level:

LevelMeaningFile Presence
REQUIREDSection MUST be presentFile MUST exist
CONDITIONALSection MUST be present if criteria metFile MUST exist if criteria apply
RECOMMENDEDSection SHOULD be presentFile SHOULD exist
OPTIONALSection MAY be presentFile MAY exist

3.4 Omission Criteria for Non-Required Sections

A RECOMMENDED or OPTIONAL section MAY be omitted when ALL of the following criteria are met:

CriterionDescription
IrrelevanceThe section content does not apply to this RFC's scope
No Loss of ClarityOmission does not create ambiguity about the RFC's intent
Documented JustificationThe omission is noted in the Index with brief rationale
Reviewer AgreementRFC reviewers agree the omission is appropriate

Omission Documentation Format (in 00-index.md):

### Omitted Sections
 
| Section | Reason for Omission |
|---------|---------------------|
| NN-evolution.md | RFC defines a static process with no planned extensions |

3.5 Common Sections Across All Kinds

Regardless of Kind, every RFC MUST include these sections:

SectionFileRequirementPurpose
Index00-index.mdREQUIREDMetadata, abstract, TOC
Glossaryappendix-a-glossary.mdREQUIREDTerm definitions
Referencesappendix-b-references.mdREQUIREDCitations and version history

3.6 Kind-Specific Section Requirements

Section requirements vary by RFC Kind. See the governing RFC for each kind:

KindGoverning RFCSection Requirements
StandardsRFC-RFCSTD-0001docs/standards/rfc-kinds/standards/RFC-RFCSTD-0001/
ArchitectureRFC-RFCSTD-0002docs/standards/rfc-kinds/architecture/RFC-RFCSTD-0002/
SpecificationRFC-RFCSTD-0003docs/standards/rfc-kinds/specification/RFC-RFCSTD-0003/
BCPRFC-RFCSTD-0004docs/standards/rfc-kinds/bcp/RFC-RFCSTD-0004/

3.7 Architecture Kind Sections

SectionFileRequirementOmission Criteria
Index00-index.mdREQUIRED—
Introduction01-introduction.mdREQUIRED—
Requirements02-requirements.mdREQUIRED—
Architecture03-architecture.mdREQUIRED—
Components04-components.mdREQUIRED—
Domain Sections05-*.mdCONDITIONALRequired if domain has specific mechanics
RationaleNN-rationale.mdREQUIRED—
EvolutionNN-evolution.mdRECOMMENDEDMay omit if static, non-extensible system
Glossaryappendix-a-glossary.mdREQUIRED—
Referencesappendix-b-references.mdREQUIRED—

3.8 Specification Kind Sections

SectionFileRequirementOmission Criteria
Index00-index.mdREQUIRED—
Prerequisites01-prerequisites.mdREQUIRED—
Phases02-phases.mdREQUIRED—
Resources03-resources.mdREQUIRED—
Validation04-validation.mdREQUIRED—
Testing05-testing.mdREQUIRED—
Risks06-risks.mdREQUIRED—
Glossaryappendix-a-glossary.mdREQUIRED—
Referencesappendix-b-references.mdREQUIRED—

3.9 BCP Kind Sections

SectionFileRequirementOmission Criteria
Index00-index.mdREQUIRED—
Scope01-scope.mdREQUIRED—
Background02-background.mdRECOMMENDEDMay omit if context is obvious
Guidelines03-guidelines.mdREQUIRED—
Procedures04-procedures.mdCONDITIONALInclude only if BCP defines procedures
Considerations05-considerations.mdRECOMMENDEDMay omit for simple BCPs
Glossaryappendix-a-glossary.mdREQUIRED—
Referencesappendix-b-references.mdREQUIRED—

3.10 Standards Kind Sections

SectionFileRequirementOmission Criteria
Index00-index.mdREQUIRED—
Scope01-scope.mdREQUIRED—
Requirements02-requirements.mdREQUIRED—
Structure03-structure.mdREQUIRED—
Formatting04-formatting.mdRECOMMENDEDMay omit if no kind-specific formatting
Validation05-validation.mdREQUIRED—
Examples06-examples.mdRECOMMENDEDMay omit for simple standards
Glossaryappendix-a-glossary.mdREQUIRED—
Referencesappendix-b-references.mdREQUIRED—

End of Section 3 — RFC Authoring Standards