Skip to content

Contributing — SCE (Semantic Communication Encoding)

This document defines the contribution and change process for the SCE standard, associated ontology files, tooling, and supporting documentation.

Contributions to SCE MUST adhere to the requirements specified herein. By submitting a contribution, the contributor acknowledges and agrees to the licensing terms defined in LICENSE.md.


1. Governance Model

SCE operates under a Hybrid Transition Governance Model:

  1. Foundational Phase (Current Phase)

  2. A designated Maintainer has final decision authority over changes.

  3. Community feedback MAY be submitted but is not binding.

  4. Transitional Phase (Triggered by Adoption Thresholds)

  5. A Working Group SHALL be established once the following conditions are met:

    • At least two independent external implementations exist.
    • At least five independent contributors participate in active development.
  6. The Maintainer MAY delegate authority to the Working Group.

  7. Stewardship Phase (Maturity Stage)

  8. Once governance is formally transitioned, decision-making authority SHALL follow Working Group governance rules.
  9. The Maintainer role becomes advisory.

Transition timing SHALL be documented publicly once initiated.


2. Contribution Requirements

Contributions MAY include:

  • Ontology updates or new symbol proposals
  • Specification language improvements
  • Tooling enhancements (validation, interpreter, schema utilities)
  • Documentation corrections
  • New test cases or compliance examples
  • Translation or accessibility improvements

Each contribution MUST include:

  1. A clear purpose statement
  2. The affected domains or files
  3. A justification demonstrating alignment with SCE goals
  4. Test or usage examples where applicable

3. Proposal Standards

Substantive changes — including ontology additions, semantic rule modifications, or backwards-incompatible behavior — MUST be submitted through a formal proposal using the format:

SCE-RFC-XXXX: Revision: <0.y or 1.0 if proposal stabilizing> Status: Draft / Review / Accepted / Rejected / Withdrawn</p> <p>The RFC MUST include:</p> <ul> <li>Motivation</li> <li>Specification text</li> <li>Examples</li> <li>Backward compatibility impact</li> <li>Alternatives considered</li> <li>Security and ethical impact assessment</li> </ul> <p>RFCs SHALL be stored under <code>/rfcs</code>.</p> <hr /> <h2 id="4-versioning-and-compatibility">4. Versioning and Compatibility<a class="headerlink" href="#4-versioning-and-compatibility" title="Permanent link">¶</a></h2> <p>SCE uses semantic versioning:</p> <p>MAJOR.MINOR.PATCH</p> <ul> <li><strong>MAJOR</strong> increments indicate breaking changes.</li> <li><strong>MINOR</strong> increments indicate additions that are backwards compatible.</li> <li><strong>PATCH</strong> increments indicate non-semantic corrections.</li> </ul> <p>Breaking changes SHOULD be avoided unless necessary for clarity, safety, or correctness.</p> <hr /> <h2 id="5-review-and-acceptance">5. Review and Acceptance<a class="headerlink" href="#5-review-and-acceptance" title="Permanent link">¶</a></h2> <p>During the Foundational Phase:</p> <ul> <li>The Maintainer reviews all submissions.</li> <li>The Maintainer MAY request modifications or reject proposals.</li> </ul> <p>During the Transitional or Stewardship phases:</p> <ul> <li>A Working Group vote SHALL determine acceptance.</li> <li>Approval threshold defaults to <strong>simple majority</strong>, unless process amendments define otherwise.</li> </ul> <hr /> <h2 id="6-ethical-compliance">6. Ethical Compliance<a class="headerlink" href="#6-ethical-compliance" title="Permanent link">¶</a></h2> <p>All contributions MUST align with the ethical principles defined in the SCE Ethical Use License.</p> <p>Proposed contributions that enable or simplify prohibited use cases SHALL be rejected.</p> <hr /> <h2 id="7-attribution">7. Attribution<a class="headerlink" href="#7-attribution" title="Permanent link">¶</a></h2> <p>Substantial contributors MAY be listed in a public CONTRIBUTORS file.</p> <p>Listing is not automatic and SHALL be determined by governance.</p> <hr /> <h2 id="8-communication-channels">8. Communication Channels<a class="headerlink" href="#8-communication-channels" title="Permanent link">¶</a></h2> <p>Temporary communication channels:</p> <ul> <li>GitHub issue tracker (pending repository publication)</li> </ul> <p>Permanent governance communication structure SHALL be defined during transition to the Working Group phase.</p> <hr /> <h2 id="9-document-status">9. Document Status<a class="headerlink" href="#9-document-status" title="Permanent link">¶</a></h2> <p>This document is a <strong>living governance instrument</strong>. Amendments SHALL follow the RFC process.</p> <p>Current Status: <strong>Foundational Phase — Active</strong></p> </article> </div> <script>var target=document.getElementById(location.hash.slice(1));target&&target.name&&(target.checked=target.name.startsWith("__tabbed_"))</script> </div> <button type="button" class="md-top md-icon" data-md-component="top" hidden> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M13 20h-2V8l-5.5 5.5-1.42-1.42L12 4.16l7.92 7.92-1.42 1.42L13 8z"/></svg> Back to top </button> </main> <footer class="md-footer"> <div class="md-footer-meta md-typeset"> <div class="md-footer-meta__inner md-grid"> <div class="md-copyright"> Made with <a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener"> Material for MkDocs </a> </div> <div class="md-social"> <a href="https://github.com/SemanticEncoding/sce" target="_blank" rel="noopener" title="SCE on GitHub" class="md-social__link"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Free 7.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2025 Fonticons, Inc.--><path d="M173.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6m-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3m44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9M252.8 8C114.1 8 8 113.3 8 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C436.2 457.8 504 362.9 504 252 504 113.3 391.5 8 252.8 8M105.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1m-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7m32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1m-11.4-14.7c-1.6 1-1.6 3.6 0 5.9s4.3 3.3 5.6 2.3c1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2"/></svg> </a> </div> </div> </div> </footer> </div> <div class="md-dialog" data-md-component="dialog"> <div class="md-dialog__inner md-typeset"></div> </div> <script id="__config" type="application/json">{"annotate": null, "base": "..", "features": ["navigation.instant", "navigation.tracking", "navigation.top", "search.highlight", "search.share", "content.code.copy", "content.action.edit"], "search": "../assets/javascripts/workers/search.7a47a382.min.js", "tags": null, "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}, "version": null}</script> <script src="../assets/javascripts/bundle.e71a0d61.min.js"></script> </body> </html>