<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8"/>
  <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
  <meta name="Date-Revision-yyyymmdd" content="20140918"/>
  <meta http-equiv="Content-Language" content="en"/>
  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">

  <title>Documentation Style Guide</title>

  <link href="//fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600,700,400italic,600italic,700italic" rel="stylesheet" type="text/css">
  <link href="//netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.css" rel="stylesheet">
  <link href="/css/main.css" rel="stylesheet">
  <link href="/css/custom.css" rel="stylesheet">
  <link href="/highlighter/github-theme.css" rel="stylesheet">

  <script src="//code.jquery.com/jquery-1.11.0.min.js"></script>
  <script type="text/javascript" src="/bootstrap/js/bootstrap.js"></script>
  <script type="text/javascript" src="/js/community.js"></script>
</head>
<body>

<a href="http://github.com/apache/struts" class="github-ribbon">
  <img style="position: absolute; right: 0; border: 0;" src="https://s3.amazonaws.com/github/ribbons/forkme_right_red_aa0000.png" alt="Fork me on GitHub">
</a>

<header>
  <nav>
    <div role="navigation" class="navbar navbar-default navbar-fixed-top">
      <div class="container">
        <div class="navbar-header">
          <button type="button" data-toggle="collapse" data-target="#struts-menu" class="navbar-toggle">
            Menu
            <span class="sr-only">Toggle navigation</span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
          </button>
          <a href="/index.html" class="navbar-brand logo"><img src="/img/struts-logo.svg"></a>
        </div>
        <div id="struts-menu" class="navbar-collapse collapse">
          <ul class="nav navbar-nav">
            <li class="dropdown">
              <a data-toggle="dropdown" href="#" class="dropdown-toggle">
                Home<b class="caret"></b>
              </a>
              <ul class="dropdown-menu">
                <li><a href="/index.html">Welcome</a></li>
                <li><a href="/download.cgi">Download</a></li>
                <li><a href="/releases.html">Releases</a></li>
                <li><a href="/announce-2021.html">Announcements</a></li>
                <li><a href="http://www.apache.org/licenses/">License</a></li>
                <li><a href="https://www.apache.org/foundation/thanks.html">Thanks!</a></li>
                <li><a href="https://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li>
              </ul>
            </li>
            <li class="dropdown">
              <a data-toggle="dropdown" href="#" class="dropdown-toggle">
                Support<b class="caret"></b>
              </a>
              <ul class="dropdown-menu">
                <li><a href="/mail.html">User Mailing List</a></li>
                <li><a href="https://issues.apache.org/jira/browse/WW">Issue Tracker</a></li>
                <li><a href="/security.html">Reporting Security Issues</a></li>
                <li class="divider"></li>
                <li><a href="https://cwiki.apache.org/confluence/display/WW/Migration+Guide">Version Notes</a></li>
                <li><a href="https://cwiki.apache.org/confluence/display/WW/Security+Bulletins">Security Bulletins</a></li>
                <li class="divider"></li>
                <li><a href="/maven/project-info.html">Maven Project Info</a></li>
                <li><a href="/maven/struts2-core/dependencies.html">Struts Core Dependencies</a></li>
                <li><a href="/maven/struts2-plugins/modules.html">Plugin Dependencies</a></li>
              </ul>
            </li>
            <li class="dropdown">
              <a data-toggle="dropdown" href="#" class="dropdown-toggle">
                Documentation<b class="caret"></b>
              </a>
              <ul class="dropdown-menu">
                <li><a href="/birdseye.html">Birds Eye</a></li>
                <li><a href="/primer.html">Key Technologies</a></li>
                <li><a href="/kickstart.html">Kickstart FAQ</a></li>
                <li><a href="https://cwiki.apache.org/confluence/display/WW/Home">Wiki</a></li>
                <li class="divider"></li>
                <li><a href="/getting-started/">Getting Started</a></li>
                <li><a href="/security/">Security Guide</a></li>
                <li><a href="/core-developers/">Core Developers Guide</a></li>
                <li><a href="/tag-developers/">Tag Developers Guide</a></li>
                <li><a href="/maven-archetypes/">Maven Archetypes</a></li>
                <li><a href="/plugins/">Plugins</a></li>
                <li><a href="/maven/struts2-core/apidocs/index.html">Struts Core API</a></li>
                <li><a href="/tag-developers/tag-reference.html">Tag reference</a></li>
                <li><a href="https://cwiki.apache.org/confluence/display/WW/FAQs">FAQs</a></li>
                <li><a href="http://cwiki.apache.org/S2PLUGINS/home.html">Plugin registry</a></li>
              </ul>
            </li>
            <li class="dropdown">
              <a data-toggle="dropdown" href="#" class="dropdown-toggle">
                Contributing<b class="caret"></b>
              </a>
              <ul class="dropdown-menu">
                <li><a href="/youatstruts.html">You at Struts</a></li>
                <li><a href="/helping.html">How to Help FAQ</a></li>
                <li><a href="/dev-mail.html">Development Lists</a></li>
                <li><a href="/contributors/">Contributors Guide</a></li>
                <li class="divider"></li>
                <li><a href="/submitting-patches.html">Submitting patches</a></li>
                <li><a href="/builds.html">Source Code and Builds</a></li>
                <li><a href="/coding-standards.html">Coding standards</a></li>
                <li><a href="https://cwiki.apache.org/confluence/display/WW/Contributors+Guide">Contributors Guide</a></li>
                <li class="divider"></li>
                <li><a href="/release-guidelines.html">Release Guidelines</a></li>
                <li><a href="/bylaws.html">PMC Charter</a></li>
                <li><a href="/volunteers.html">Volunteers</a></li>
                <li><a href="https://gitbox.apache.org/repos/asf?p=struts.git">Source Repository</a></li>
                <li><a href="/updating-website.html">Updating the website</a></li>
              </ul>
            </li>
            <li class="apache"><a href="http://www.apache.org/"><img src="/img/apache.png"></a></li>
          </ul>
        </div>
      </div>
    </div>
  </nav>
</header>


<article class="container">
  <section class="col-md-12">
    <a class="edit-on-gh" href="https://github.com/apache/struts-site/edit/master/source/contributors/documentation-style-guide.md" title="Edit this page on GitHub">Edit on GitHub</a>
    
    <a href="index.html" title="back to Contributors Guide"><< back to Contributors Guide</a>
    
    <h1 class="no_toc" id="documentation-style-guide">Documentation Style Guide</h1>

<ul id="markdown-toc">
  <li><a href="#do-it-now-do-it-once-do-it-well" id="markdown-toc-do-it-now-do-it-once-do-it-well">Do it now. Do it once. Do it well.</a></li>
  <li><a href="#capitalization-of-common-terms" id="markdown-toc-capitalization-of-common-terms">Capitalization of common terms</a></li>
  <li><a href="#general-punctuation-and-grammar" id="markdown-toc-general-punctuation-and-grammar">General Punctuation and Grammar</a></li>
  <li><a href="#quick-tips" id="markdown-toc-quick-tips">Quick Tips</a></li>
  <li><a href="#dont-be-smurfy" id="markdown-toc-dont-be-smurfy">Don’t be smurfy!</a></li>
  <li><a href="#page-save-comment" id="markdown-toc-page-save-comment">Page Save Comment</a></li>
  <li><a href="#parent-pages" id="markdown-toc-parent-pages">Parent Pages</a></li>
  <li><a href="#labels" id="markdown-toc-labels">Labels</a></li>
  <li><a href="#avoid-skipping-headers" id="markdown-toc-avoid-skipping-headers">Avoid skipping headers</a></li>
  <li><a href="#more-on-text-effects" id="markdown-toc-more-on-text-effects">More on Text Effects</a></li>
  <li><a href="#text-breaks" id="markdown-toc-text-breaks">Text Breaks</a></li>
  <li><a href="#lists" id="markdown-toc-lists">Lists</a></li>
  <li><a href="#images" id="markdown-toc-images">Images</a></li>
  <li><a href="#tables" id="markdown-toc-tables">Tables</a></li>
  <li><a href="#advanced-formatting" id="markdown-toc-advanced-formatting">Advanced Formatting</a></li>
  <li><a href="#change-happens" id="markdown-toc-change-happens">Change Happens</a></li>
</ul>

<p>It’s well-known that a consistent user interface is easier to use. Consistency helps users focus on the task rather 
than the user interface. Likewise, a consistent documentation style helps users focus on the information, rather 
than the formatting.</p>

<p>A related goal is to design the documentation so that it is easy to maintain, so that it tends to remain internally 
consistent with the framework itself.</p>

<h2 id="do-it-now-do-it-once-do-it-well">Do it now. Do it once. Do it well.</h2>

<p>Overall, there are three goals for the documentation system.</p>

<ul>
  <li>Say it all</li>
  <li>Say it once</li>
  <li>Say it well</li>
</ul>

<p>First, we want the documentation to be both complete and concise. This is job one! The documentation should also be a quick 
but practical introduction to the framework, so newcomers can get started as easily as possible. To keep people coming back, 
the documentation should also be a repository of the tips and tricks we use in our own applications, so that people can find 
it here instead of asking over and over again on the list.</p>

<p>Second, the documentation should be easy to maintain. Ideally, we should cover the detail of each topic once, and draw 
as much detail from the source code and examples as possible (using the <em>snippet macro</em>).</p>

<p>Third, the documentation should be text-book quality; if not in the first draft, then in the next. Don’t hesitate 
to hack in a new page. Better that we have the page than we don’t. (See Job One!) But, as time allows, we should try 
to make each page the best that it can be. A great many people access the documentation, and it’s worth the effort 
to make the “documentation experience” productive and enjoyable.</p>

<h2 id="capitalization-of-common-terms">Capitalization of common terms</h2>

<ul>
  <li>Java</li>
  <li>Javadoc</li>
  <li>HTML</li>
  <li>XML</li>
</ul>

<h2 id="general-punctuation-and-grammar">General Punctuation and Grammar</h2>

<p>Good online resources for punctuation, grammar, and text style include</p>

<ul>
  <li><a href="https://en.wikipedia.org/wiki/Wikipedia:Manual_of_Style">Wikipedia Manual of Style</a></li>
</ul>

<p>In print, two excellent (and inexpensive!) resources are</p>

<ul>
  <li><a href="https://www.amazon.com/exec/obidos/tg/detail/-/020530902X/apachesoftwar-20/">The Elements of Style</a></li>
  <li><a href="https://www.amazon.com/exec/obidos/tg/detail/-/0465004881/apachesoftwar-20/">Associated Press Stylebook</a></li>
</ul>

<p>Also excellent, but more expensive:</p>

<ul>
  <li><a href="https://www.chicagomanualofstyle.org/">Chicago Manual of Style</a></li>
</ul>

<h2 id="quick-tips">Quick Tips</h2>

<ul>
  <li>Use as few words as possible. Instead of “but there are some quirks about it” try “but there are quirks”.</li>
  <li>If a list of items includes both a term and an explanation, consider using a table instead of bullets.</li>
  <li>Avoid using “This” by itself. Instead of “This lets us” try “This strategy lets us”.
    <ul>
      <li>Ask yourself: “This what?”</li>
    </ul>
  </li>
  <li>References to other wiki pages can be unqualified. For example: “See .”</li>
</ul>

<h2 id="dont-be-smurfy">Don’t be smurfy!</h2>

<p>A lot of API members use the term “action”. We have</p>

<ul>
  <li>action extensions on pages,</li>
  <li>action attributes in forms,</li>
  <li>action elements in configuration files, and</li>
  <li>Action Java classes, some of which may implement the</li>
  <li>Action interface.</li>
</ul>

<p>Here are some terms that can be used to help clarify which action is which.</p>

<ul>
  <li>Use “the framework” or “Struts 2” to refer to the codebase as a whole, including any frameworks we use internally, like OGNL.</li>
  <li>Use “Action class” or “action handler” to refer to the Java class incorporated by the action element.</li>
  <li>Use “action mapping” to refer to the object created by the action element.</li>
</ul>

<h2 id="page-save-comment">Page Save Comment</h2>

<p>Try to include a brief description of a change when saving a page. The comments are included in the page’s history. 
The comments are also included on the daily change report. In a group environment, it’s important to help each other follow along.</p>

<h2 id="parent-pages">Parent Pages</h2>

<p>Use the Parent Page feature to create a hierarchy of pages. The parent pages are reflected in the “bread crumb” menu. 
If properly used, parent pages can help browsers “visualize” the documentation as an outline.</p>

<p>The root of the documentation is the “Home” page, which is also the “Welcome” page. The documentation is ordered into 
three main areas: Tutorials, FAQs, and Guides. Each area has a contents page, whose parent is Home. Other pages within 
each section can also serve as parents, to help organize the documentation into a coherent outline.</p>

<h2 id="labels">Labels</h2>

<p>Pages can be cross-indexed with the Label feature. Labels are not be used much yet, except for internal authoring.</p>

<table>
  <thead>
    <tr>
      <th>FIXME</th>
      <th>A page that mentions a problem in the distribution that we intend to fix. Review these pages before tagging a distribution to see if the issue has been resolved.</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>TODO</td>
      <td>A page that is incomplete. Try to complete these pages before tagging a distribution</td>
    </tr>
  </tbody>
</table>

<h2 id="avoid-skipping-headers">Avoid skipping headers</h2>

<p>The headers form an outline for the page. When writing term papers, it is not a good practice to skip outline levels.
When writing hypertext, it is not a good practice to skip heading levels either. Try not to skip from a <code class="highlighter-rouge">h2</code> to a <code class="highlighter-rouge">h4</code>.</p>

<blockquote>
  <p>If you find yourself writing too many h2 headings in a single page, consider breaking the page into child pages.</p>
</blockquote>

<h2 id="more-on-text-effects">More on Text Effects</h2>

<p>Text effects like <strong>strong</strong>, <em>emphasis</em> , and inserted can be used in the usual way to denote important parts of a sentence.</p>

<p><code class="highlighter-rouge">Monospaced</code> should be used to files, tags, and methods, like <code class="highlighter-rouge">struts.xml</code>, <code class="highlighter-rouge">&lt;xmltag /&gt;</code>, and <code class="highlighter-rouge">execute</code>. 
Class and Interface names may be left in normal face, like Action and Interceptor.</p>

<p>A panel should be preferred to a block quote. The color fonts should be avoided or used only with great care. 
Some people have difficulty seeing some colors, and the colors may not be apparent if the page is printed.</p>

<h2 id="text-breaks">Text Breaks</h2>

<p>Text breaks should not be used to format blocks on the screen. If there is an issue with the way paragraphs or headings 
are being rendered, we should customize the stylesheet.</p>

<h2 id="lists">Lists</h2>

<p>Unordered lists should be created only with the <code class="highlighter-rouge">-</code> notation.</p>

<p>Ordered list should be used when numbering the items is important. Otherwise, prefer unordered lists.</p>

<ul>
  <li>This is an unordered list in star notation;</li>
  <li>Items can have sub-items
    <ul>
      <li>That can have sub-items
        <ul>
          <li>That can have sub-items …
            <ul>
              <li>What is the limit?</li>
            </ul>
          </li>
        </ul>
      </li>
    </ul>
  </li>
  <li>Mixing ordered and unordered lists is possible:
    <ol>
      <li>One;</li>
      <li>Two;</li>
      <li>Three.</li>
    </ol>
  </li>
</ul>

<h2 id="images">Images</h2>

<p>Avoid using external images for bullets or icons. Prefer the equivalents provided with Confluence.</p>

<p>Images can be included by URL or annexing the binary to the page. Prefer annexing when possible, since URLs are subject to change.</p>

<p>Always observe copyright issues. Do not annex images unless it an original or public domain work, or the author has donated the image to the foundation.</p>

<p>Example:</p>

<p><img src="http://struts.apache.org/images/struts-power.gif" alt="http://struts.apache.org/images/struts-power.gif" /></p>

<h2 id="tables">Tables</h2>

<p>Prefer lists for single-value entries. Prefer tables for lists with multiple columns.</p>

<p>Tables are very useful when lists just don’t do it. Meaning: don’t write a table when a list suffices. Tables are more 
organized, because you can align the text in columns. Since the markup text for tables in Confluence is not easy to read, 
complex and big tables can be hard to maintain.</p>

<table>
  <thead>
    <tr>
      <th>File</th>
      <th>Optional</th>
      <th>Location (relative to webapp)</th>
      <th>Purpose</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><code class="highlighter-rouge">web.xml</code></td>
      <td>no</td>
      <td>/WEB-INF/</td>
      <td>Web deployment descriptor to include all necessary WebWork components</td>
    </tr>
    <tr>
      <td><code class="highlighter-rouge">struts.xml</code></td>
      <td>no</td>
      <td>/WEB-INF/classes/</td>
      <td>Main configuration, contains result/view types, action mappings, interceptors, and so forth</td>
    </tr>
  </tbody>
</table>

<h2 id="advanced-formatting">Advanced Formatting</h2>

<p>Try to specify the language for ``` … ``` blocks.</p>

<p><strong>HelloWorld.java</strong></p>

<div class="language-java highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="cm">/** Hello World class. */</span>
<span class="kd">public</span> <span class="kd">class</span> <span class="nc">HelloWorld</span> <span class="o">{</span>
  <span class="cm">/** Main method. */</span>
  <span class="kd">public</span> <span class="kd">static</span> <span class="kt">void</span> <span class="nf">main</span><span class="o">(</span><span class="n">String</span><span class="o">[]</span> <span class="n">args</span><span class="o">)</span> <span class="o">{</span>
    <span class="n">System</span><span class="o">.</span><span class="na">out</span><span class="o">.</span><span class="na">println</span><span class="o">(</span><span class="s">"Hello, World!"</span><span class="o">);</span>
  <span class="o">}</span>
<span class="o">}</span>
</code></pre></div></div>

<p>Avoid tabs in code blocks, use two spaces instead. Long lines should be formatted to fit in a 800x600 resolution screen, 
without resorting to horizontal scrolling.</p>

<p>A typical example of “non-lang” block would be the command line statements to compile and run the code above.</p>

<p>The terminal notation <code class="highlighter-rouge">$</code> should be used to represent a system prompt.</p>

<p><strong>Compiling and Running Hello World</strong></p>

<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>$ javac HelloWorld.java

$ java HelloWorld
Hello, World!
</code></pre></div></div>

<h2 id="change-happens">Change Happens</h2>

<p>Anyone who has worked with databases knows the value of normalizing the schema. Ideally, we want to store each fact 
exactly once, and then use query system to retrieve that fact wherever it is needed. If we store a fact once, we only 
need to update it once, and we avoid inconsistencies in our data set.</p>

<p>To the extent possible, we want to “normalize” our technical documentation. Like a database, all technical documentation 
is subject to change. When change happens, we want the documentation to be as easy to update as possible. One way to do 
that is to try and minimize redundancy (without sacrificing ease of use).</p>

  </section>
</article>


<footer class="container">
  <div class="col-md-12">
    Copyright &copy; 2000-2018 <a href="http://www.apache.org/">The Apache Software Foundation </a>.
    All Rights Reserved.
  </div>
  <div class="col-md-12">
    Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts project logos are
    trademarks of The Apache Software Foundation.
  </div>
  <div class="col-md-12">Logo and website design donated by <a href="https://softwaremill.com/">SoftwareMill</a>.</div>
</footer>

<script>!function (d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (!d.getElementById(id)) {
    js = d.createElement(s);
    js.id = id;
    js.src = "//platform.twitter.com/widgets.js";
    fjs.parentNode.insertBefore(js, fjs);
  }
}(document, "script", "twitter-wjs");</script>
<script src="https://apis.google.com/js/platform.js" async="async" defer="defer"></script>

<div id="fb-root"></div>

<script>(function (d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s);
  js.id = id;
  js.src = "//connect.facebook.net/en_GB/all.js#xfbml=1";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>


</body>
</html>
