| .. This work is licensed under a Creative Commons Attribution 4.0 |
| .. International License. http://creativecommons.org/licenses/by/4.0 |
| .. Copyright 2017 AT&T Intellectual Property. All rights reserved. |
| |
| Style guide |
| =========== |
| |
| This style guide is for ONAP documentation contributors, reviewers and |
| committers. |
| |
| Getting started |
| --------------- |
| |
| When is documentation required? |
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
| All ONAP project contributions should have corresponding documentation. |
| This includes all new features and changes to features that impact users. |
| |
| How do I create ONAP documentation? |
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
| ONAP documentation is written in ReStructuredText_ (an easy-to-read, |
| what-you-see-is-what-you-get, plain text markup syntax). The process for |
| creating ONAP documentation and what documents are required are |
| described in later sections of this Developer Documentation Guide. |
| |
| .. _ReStructuredText: http://docutils.sourceforge.net/rst.html |
| |
| ReStructuredText markup conventions |
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
| For detailed information ReStructuredText and how to best use the format, see: |
| |
| - `ReStructured Text Primer <http://docutils.sourceforge.net/docs/user/rst/quickstart.html>`_ |
| - `ReStructured Text Quick Reference <http://docutils.sourceforge.net/docs/user/rst/quickref.html>`_ |
| |
| Writing guidelines |
| ------------------ |
| Following these writing guidelines will keep ONAP documentation |
| consistent and readable. Only a few areas are covered below, as |
| we don't want to make it too complex. Try to keep things simple |
| and clear, and you can't go far wrong. |
| |
| Don’t get too hung up on using correct style. We’d rather have you |
| submit good information that does not conform to this guide than no |
| information at all. ONAP’s Documentation project team will be happy |
| to help you with the prose. |
| |
| General guidelines for all documents |
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
| - Use standard American English and spelling |
| - Use consistent terminology |
| - Write in the active voice, using present simple tense when possible |
| - Write objective, professional content |
| - Keep sentences and paragraphs short and clear |
| - Use a spell checker |
| |
| Abbreviations and acronyms |
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ |
| - Write out the term the first time it appears in the document, |
| immediately followed by the acronym or abbreviation in parenthesis. |
| Then use the acronym in the rest of the document. In diagrams, if |
| space allows, write out the full term. |
| |
| - Use “an” before an acronym that begins with a vowel sound when spoken |
| aloud; use "a" before an acronym that begins with a consonant |
| sound when spoken aloud. |
| |
| + Examples: an MSO component, a LAN, an L3-VPN |
| |
| |
| ONAP terms |
| ^^^^^^^^^^ |
| - AA&I vs AAI: AAI should be used. |
| |
| - APP-C vs APPC: APPC should be used. |
| |
| - SDN-C vs SDNC: SDNC should be used. |
| |
| - Heat vs HEAT: Both are in use. The official website uses "Heat". |
| |
| - life cycle vs lifecycle or life-cycle: "life cycle" is preferred. |
| |
| - open source (adjective): capitalize only in titles; avoid |
| "open-source". (Based on prevalence on the web.) |
| |
| - run-time vs. execution-time (adjective): prefer run-time. |
| Example: "run-time logging of events" |
| |
| - run time (noun). Example: "logging of events at run time". |
| |
| GUI elements |
| ^^^^^^^^^^^^ |
| - In general, write menu names as they appear in the UI. |
| For example, if a menu or item name is all caps, then write |
| it all caps in the document. |
| |
| Headings (Titles) |
| ^^^^^^^^^^^^^^^^^ |
| - Use brief, but specific, informative titles. Titles should give |
| context when possible. |
| |
| - Use sentence-style capitalization; do not end with a period or colon. |
| |
| - Use a gerund to begin section titles. Examples: Configuring, |
| Managing, Starting. |
| |
| - Use descriptive titles for tables and figures titles. Do not |
| number tables or figures. Do not (in general) add titles for screen shots. |
| |
| Tasks |
| ^^^^^ |
| - Start task titles with an action word. Examples: Create, Add, |
| Validate, Update. |
| |
| - Use [Optional] at the beginning of an optional step. |
| |
| - Provide information on the expected outcome of a step, especially |
| when it is not obvious. |
| |
| - Break down end-to-end tasks into manageable chunks. |
| |
| |
| ONAP Conventions for the Use of Sphinx Directives |
| ------------------------------------------------- |
| |
| Needs Directive |
| ^^^^^^^^^^^^^^^ |
| |
| * Needs IDs must match the regular expression "^[A-Z0-9]+-[A-Z0-9]+" |
| |
| * The prefix (string before the dash) must be described in the following table |
| |
| .. list-table:: Needs Prefix Use |
| :align: center |
| :widths: 8 40 40 |
| :header-rows: 1 |
| |
| * - Prefix |
| - Description |
| - Use |
| |
| * - R |
| - Represents a requirement that must be met by a VNF provider |
| - Defined only in the vnfrqts project repositories, may be referenced in any project repository source |
| |