The legal templates are structured using these defined HTML structures. They are the building blocks, or grammar, of legalese.
Restricting document authors is necessary to aid the end user. Some benefits of a defined markup are design consistency, improved legibility. Having a fixed format also makes it possible to build advanced tools around these documents.
This document does not define any guidelines for the readable content of legal templates. That is left up to authors. It is recommended that any adopted rules are applied consistently throughout the same document. Style guides exist for specific languages, cultures, academic fields, industries, and institutions.
Turn some of these semantic HTML structures into Web Components. Custom elements would allow both cleaner semantics, and richer design/behaviour extensions.
<h1>Document Title</h1>
Document titles can be used at the top of the template.
<h2>Attachment Title</h2>
Related documents can be schedules, appendices, or other included documents that are used to support the main template.
<h3>Section Title</h3>
Used for major sections in the document.
<p>General text</p>
Paragraphs can be added to explicitly separate blocks of content within a section.
<b>This is very important</b>
Typically the start of a particularly important paragraph.
Displaying nested sections follows rules from the CSS Lists and Counters Module Level 3 specification.
-
The first level is
decimal
and ends in a period (.
).Example:
15.
(Section 15) -
The second level is also
decimal
and ends in a period (.
). In the document viewer it is shown appended to the first level number.Example:
15.3.
(Section 15, subsection 3) -
The third level drops is
lower-latin
and wrapped in parenthesis.Example:
(b)
(Subsection 2) -
The fourth and consecutive levels are
lower-roman
and wrapped in parenthesis.Example:
(xiv)
(Subsection 14)
To reference a nested level, concatenate all the counters.
Example: 15.3(b)(xiv)
(Section 15, subsection 3, subsection 2, subsection 14)
<ol>
<li>The first section</li>
<li>The second section</li>
</ol>
If the numbered section has a title it should be formatted as follows:
<ol>
<li>
<h4>The first section</h4>
More clauses and other content.
</li>
</ol>
<ol>
<li> <!-- section -->
The first section
<ol>
<li>The first subsection</li> <!-- subsection -->
<li>The second subsection</li> <!-- subsection -->
</ol>
</li>
<li>The second section</li> <!-- section -->
</ol>
If the numbered section has a title it should be formatted as follows:
<ol>
<li> <!-- section -->
<ol>
<li> <!-- subsection -->
<h5>The first subsection</h5>
Followed by more text.
</li>
</ol>
</li>
</ol>
This line of text defines <dfn>Some Term</dfn> in the document.
Wrap text in a <dfn>
tag to identify instances of the same word throughout the template. The defining term algorithm is used to determine the matched string.
<dl>
<dt><dfn>Some Term</dfn> means</dt>
<dd>something specific.</dd>
<dt><dfn>Another Term</dfn> means</dt>
<dd>either this;</dd>
<dd>or else this.</dd>
</dl>
A tooltip shows the definition of defined terms used elsewhere in the template.
This line references <a href="#define-Something">Something</a> defined elsewhere.
Lookup anchors are added automatically. There is no need to manually add them to the template source code.
Typically used in schedules to an agreement.
<table>
<thead>
<tr>
<th>ID</th>
<th>Name</th>
<th>Quantity</th>
</tr>
</thead>
<tbody>
<tr>
<td>123</td>
<td>Foo</td>
<td>10</td>
</tr>
<tr>
<td>456</td>
<td>Bar</td>
<td>20</td>
</tr>
</tbody>
</table>
<ol>
<li>
<p><b>The Consultant</b></p>
<p><input placeholder="Company Name" /></p>
<p><label>By: <input alt="Signature" type="image" /></label></p>
<p><label>Name: <input placeholder="Name" /></label></p>
<p><label>Title: <input placeholder="Title" /></label></p>
<p><label>Witnessed by: <input alt="Signature" type="image" /></label></p>
<p><label>Name of witness: <input placeholder="Name" /></label></p>
</li>
</ol>
<textarea placeholder="Some Description"></textarea>
<input placeholder="Some Description" />
<input type="number" />
<input type="date" />
Add easy to understand comments to explain the intention behind complex legalese. Depending on the containing HTML element, use either <span class="aside">
or <aside>
elements.
The <aside>
element is Flow content and therefore not allowed inside <p>
, <dd>
elements or other elements that expect Phrasing content. Use it only inside <li>
elements or the top-level container.
Examples:
<li>
<aside>This is easy to read and makes people happy.</aside>
Here is the long and dry legalese section that no one ever bothers reading anyway.
</li>
<p>
<span class="aside">No worries, just read this.</span>
Yet another complicated section which may as well be lorem ipsum to most people.
</p>