Update How To Guide & Git submodules
[doc.git] / docs / guide / onap-developer / how-to-use-docs / style-guide.rst
1 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
2
3 Style guide
4 ===========
5
6 This style guide is for ONAP documentation contributors, reviewers and committers.
7
8 Getting started
9 ---------------
10
11 When is documentation required?
12 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
13 All ONAP project contributions should have corresponding documentation. This includes all new features and changes to features that impact users.
14
15 How do I create ONAP documentation?
16 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
17 ONAP documentation is written in ReStructuredText_ (an easy-to-read, what-you-see-is-what-you-get, plain text markup syntax). 
18 The process for creating ONAP documentation and what documents are required are described here: <<add links to Documentation process/automated tools sections>>
19
20 .. _ReStructuredText: http://docutils.sourceforge.net/rst.html
21
22 ReStructuredText markup conventions
23 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
24 For detailed information ReStructuredText and how to best use the format, see:
25
26 - `ReStructured Text Primer <http://docutils.sourceforge.net/docs/user/rst/quickstart.html>`
27 - `ReStructured Text Quick Reference <http://docutils.sourceforge.net/docs/user/rst/quickref.html>`
28
29 Writing guidelines
30 ------------------
31 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. 
32
33 Don’t get too hung up on using correct style. We’d rather have you submit good information that doesn’t conform to this guide than no information at all. ONAP’s Documentation project team will be happy to help you with the prose.
34
35 General guidelines for all documents
36 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
37 -  Use standard American English and spelling
38 -  Use consistent terminology 
39 -  Write in the active voice, using present simple tense when possible
40 -  Write objective, professional content
41 -  Keep sentences and paragraphs short and clear
42 -  Use a spell checker
43
44 Abbreviations and acronyms
45 ^^^^^^^^^^^^^^^^^^^^^^^^^^
46 -  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. 
47 -  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.  
48    +  Examples: an MSO component, a LAN, an L3-VPN
49
50
51 ONAP terms
52 ^^^^^^^^^^
53 -  AA&I vs AAI: AAI should be used.
54 -  APP-C vs APPC: APPC should be used. 
55 -  SDN-C vs SDNC: SDNC should be used.
56 -  Heat vs HEAT: Both are in use. The official website uses "Heat".
57 -  life cycle vs lifecycle or life-cycle: "life cycle" is preferred.
58 -  open source (adjective): capitalize only in titles; avoid "open-source". (Based on prevalence on the web.)
59 -  run-time vs. execution-time (adjective): prefer run-time. Example: "run-time logging of events" 
60 -  run time (noun). Example: "logging of events at run time".
61
62 GUI elements
63 ^^^^^^^^^^^^
64 -  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.
65
66 Headings (Titles)
67 ^^^^^^^^^^^^^^^^^
68 -  Use brief, but specific, informative titles. Titles should give context when possible.
69 -  Use sentence-style capitalization; do not end with a period or colon.
70 -  Use a gerund to begin section titles. Examples: Configuring, Managing, Starting.
71 -  Use descriptive titles for tables and figures titles. Do not number tables or figures. Do not (in general) add titles for screen shots. 
72
73 Tasks
74 ^^^^^
75 -  Start task titles with an action word. Examples: Create, Add, Validate, Update.
76 -  Use [Optional] at the beginning of an optional step.
77 -  Provide information on the expected outcome of a step, especially when it is not obvious.
78 -  Break down end-to-end tasks into manageable chunks.
79