|
| 1 | +--- |
| 2 | +title: Grammar |
| 3 | +description: The style guide gives advice on how to implement grammar when creating tutorials and other forms of content for AsyncAPI. |
| 4 | +weight: 100 |
| 5 | +--- |
| 6 | + |
| 7 | +## Abbreviations and acronyms |
| 8 | + |
| 9 | +When using abbreviations and acronyms, write the full term followed by the acronym in parentheses. After that, use the acronym for subsequent references. Here's an example: |
| 10 | + |
| 11 | +> An application can be a microservice, IoT (Internet of Things) device (for example, a sensor), mainframe process, and more. |
| 12 | +> That aspect is particularly beneficial in setups like IoT, where topics are often assigned per device or device segment. |
| 13 | +
|
| 14 | + By using acronyms and abbreviations effectively, users can easily understand their context and meaning within the tutorial or guide. |
| 15 | + |
| 16 | +## Active Voice |
| 17 | + |
| 18 | + When writing documentation and other forms of content for AsyncAPI, use active voice whenever possible. Here's an example: |
| 19 | + |
| 20 | +✅ **DO:** "In the context of channel addresses within AsyncAPI documents, parameters play a crucial role in defining the dynamic components of an address." |
| 21 | + |
| 22 | +❌ **DON'T:** "In the context of channel addresses within AsyncAPI documents, the dynamic components of an address were defined by parameters." |
| 23 | + |
| 24 | +As shown in the above sentence, active voice makes the concept more engaging and easier to understand. |
| 25 | + |
| 26 | +## Capitalization |
| 27 | + |
| 28 | +When capitalizing titles, headings, and certain words and terms, use the following rules: |
| 29 | + |
| 30 | +- Capitalize the first word of a sentence. |
| 31 | +- Capitalize the first word in a heading and title. |
| 32 | +- Capitalize all: |
| 33 | + - Nouns |
| 34 | + - Pronouns |
| 35 | + - Adjectives |
| 36 | + - Verbs |
| 37 | + - Adverbs |
| 38 | + - Prepositions (in, on, at, by, for, with, to, from, of, about, through, between, among, under, over, after, before, during) |
| 39 | + - Some subordinating conjunctions (if, unless, while, until, since, as, because, that, which, who, whom, whose, what, where, when, how, why) |
| 40 | +- Avoid using all capital letters for emphasizing a term or concept (use italics sparingly). |
| 41 | +- Avoid capitalizing: |
| 42 | + - Spelled-out acronyms unless they are proper nouns (API, HTTP, URL) |
| 43 | + - Articles (a, an, the) |
| 44 | + - Conjunctions (and, but, or, nor, for, so, yet) unless they are part of a title or heading ("Parameters in channel address") |
| 45 | + |
| 46 | +## Spelling |
| 47 | + |
| 48 | +Here are some preferred spellings of certain words: |
| 49 | + |
| 50 | +- Use "color" instead of "colour" |
| 51 | +- Use "center" instead of "centre" |
| 52 | +- Use "organization" instead of "organisation" |
| 53 | +- Use "program" instead of "programme" |
| 54 | + |
| 55 | +## Verb Tense |
| 56 | + |
| 57 | +When writing documentation and other forms of content for AsyncAPI, use the present tense. Here's an example: |
| 58 | + |
| 59 | +✅ **DO:** "The dynamic segment of each channel address, which corresponds to the device identifier, is then articulated through the use of parameters." |
| 60 | + |
| 61 | +❌ **DON'T:** "The dynamic segment of each channel address, which corresponds to the device identifier, was then articulated through the use of parameters." |
| 62 | + |
| 63 | +## Personal Pronouns |
| 64 | + |
| 65 | + Use personal pronouns sparingly when writing tutorials and other forms of content for AsyncAPI to make them more human and approachable to users. Here's an example: |
| 66 | + |
| 67 | +✅ **DO:** "You can add parameters to the `channel.address` by adding a parameter between curly braces like {`braces`}. Next, use `channel.parameters` to define your parameters. Finally, leverage the `components.parameters` to enable reusable parameters' definitions across multiple channels." |
| 68 | + |
| 69 | +❌ **DON'T:** "You should add parameters to the `channel.address` by placing a parameter between curly braces like {braces}. After that, you need to use `channel.parameters` to define your parameters. Finally, you should leverage `components.parameters` to enable reusable parameters' definitions across multiple channels." |
| 70 | + |
| 71 | +## Additional Resources |
| 72 | + |
| 73 | + If you're looking for more information on grammar and style, consider checking out the following guides: |
| 74 | + |
| 75 | +- [Google Style Guide](https://developers.google.com/style) |
| 76 | +- [Microsoft Style Guide](https://learn.microsoft.com/en-us/style-guide/welcome/) |
0 commit comments