blob: f5c94c9326f3161c69d6b05f6ab5d7d66df9005b [file] [log] [blame]
<?xml version="1.0"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.2//EN" "http://forrest.apache.org/dtd/document-v12.dtd">
<document>
<header>
<title>The document-v1.2 DTD</title>
<notice>This document doesn't make any sense at all.</notice>
<abstract>
A nonsense document using all possible elements in the current
<code>document-v12.dtd</code>.
</abstract>
</header>
<body>
<note>
The document-v12 has been superceded by
<link href="site:document-v13">document-v13</link>
</note>
<section>
<title>Changes since document-v11</title>
<p>
doc-v12 enhances doc-v11 by relaxing various restrictions that were
found to be unnecessary.
</p>
<ul>
<li>
Links (link,jump,fork) and inline elements (br,img,icon,acronym) are
allowed inside title.
</li>
<li>
Paragraphs (p,source,note,warning,fixme), table and figure,anchor are
allowed inside li.
</li>
<li>
Paragraphs (p,source,note,warning,fixme), lists (ol,ul,dl), table,
figure,anchor are allowed inside definition lists (dd) and tables (td
and dh).
</li>
<li>
Inline content
(strong,em,code,sub,sup,br,img,icon,acronym,link,jump,fork) is
allowed in strong and em.
</li>
</ul>
</section>
<section>
<title>Sample Content</title>
<p>
<strong>Hint:</strong> See the xml source to see how the various
elements are used and see the <link href="site:dtd-docs">DTD
documentation</link>.
</p>
<p>
This is a simple paragraph. Most documents contain a fair amount of
paragraphs. Paragraphs are called <code>&lt;p&gt;</code>.
</p>
<p xml:space="preserve">
With the <code>&lt;p xml:space="preserve"&gt;</code> attribute, you can declare
that whitespace should be preserved, without implying it is in any other
way special.
</p>
<p>
A number of in-line elements are available in the DTD, we will show them
inside an unordered list (<code>&lt;ul&gt;</code>):
</p>
<ul>
<li>Here is a simple list item (<code>&lt;li&gt;</code>).</li>
<li>Have you seen the use of the <code>&lt;code&gt;</code> element in the
previous item?</li>
<li>Also, we have <code>&lt;sub&gt;</code> and <code>&lt;sup&gt;</code>
elements to show content <sup>above</sup> or <sub>below</sub> the text
baseline.</li>
<li>There is a facility to <em>emphasize</em> certain words using the
<code>&lt;em&gt;</code><strong><code>&lt;strong&gt;</code></strong>
elements.</li>
<li>We can use
<icon height="22" width="26" src="images/icon.png" alt="feather"/><code>&lt;icon&gt;</code>s, too.</li>
<li>Another possibility is the <code>&lt;img&gt;</code> element:
<img src="images/icon.png" alt="another feather" height="22" width="26"/>,
which offers the ability to refer to an image map.</li>
<li>We have elements for hyperlinking:
<dl>
<dt><code>&lt;link href="../index.html"&gt;</code></dt>
<dd>Use this to
<link href="../index.html" title="Example of a document via link">link</link>
to another document. As per normal, this will open the new document
in the same browser window.</dd>
<dt><code>&lt;link href="#section"&gt;</code></dt>
<dd>Use this to
<link href="#section" title="Example of a document via local anchor">link</link>
to the named anchor in the current document.
</dd>
<dt><code>&lt;link href="../index.html#History"&gt;</code></dt>
<dd>Use this to
<link href="../index.html#History" title="Example of a document via link and anchor">link</link>
to another document and go to the named anchor. This will open
the new document in the same browser window.
</dd>
<dt><code>&lt;jump href="../index.html"&gt;</code></dt>
<dd>Use this to
<jump href="../index.html" title="Example of a document via jump">jump</jump>
to another document and optionally go to a named
<jump href="../index.html#History" title="Example of a document via jump to anchor">anchor</jump>
within that document. This will open the new document in the same
browser window. So what is the difference between link and jump?
The jump behaves differently, in that it will replace any frames
in the current window.
This is the equivalent of
<code>&lt;a ... target="_top"&gt;</code></dd>
<dt><code>&lt;fork href="../index.html"&gt;</code></dt>
<dd>Use this to
<fork href="../index.html" title="Example of a document via fork">fork</fork>
your webbrowser to another document. This will open the document
in a new, unnamed browser window.
This is the equivalent of
<code>&lt;a ... target="_blank"&gt;</code></dd>
</dl></li>
<li>Oh, by the way, a definition list <code>&lt;dl&gt;</code> was used inside
the previous list item. We could put another
<ul>
<li>unordered list</li>
<li>inside the list item</li>
</ul>
<table>
<caption>A sample nested table</caption>
<tr>
<td>Or even tables</td>
<td>inside lists</td>
</tr>
</table></li>
</ul>
<p>
So far for the in-line elements, let's look at some paragraph-level
elements.
</p>
<fixme author="SN">
The <code>&lt;fixme&gt;</code> element is used for stuff which still
needs work. Mind the <code>author</code> attribute!
</fixme>
<note>
Use the <code>&lt;note&gt;</code> element to draw attention to
something, e.g. ...The <code>&lt;code&gt;</code> element is used when
the author can't express himself clearly using normal sentences ;-)
</note>
<warning>
Sleep deprivation can be the result of being involved in an open source
project. (a.k.a. the <code>&lt;warning&gt;</code> element).
</warning>
<note label="Important">
If you want your own labels for notes and warnings, specify them using
the <code>label</code> attribute.
</note>
<p>
Apart from unordered lists, we have ordered lists too, of course.
</p>
<ol>
<li>Item 1</li>
<li>Item 2</li>
<li>This should be 3 if my math is still OK.</li>
</ol>
<anchor id="section"/>
<section>
<title>Using sections</title>
<p>
You can use sections to put some structure in your document. For some
strange historical reason, the section title is an attribute of the
<code>&lt;section&gt;</code> element.
</p>
</section>
<section>
<title>Sections, the sequel</title>
<p>
Just some second section.
</p>
<section>
<title>Section 2.1</title>
<p>
Which contains a subsection (2.1).
</p>
</section>
</section>
<anchor id="source"/>
<section>
<title>Showing preformatted source code</title>
<p>
Enough about these sections. Let's have a look at more interesting
elements, <code>&lt;source&gt;</code> for instance:
</p>
<source>// This example is from the book _Java in a Nutshell_ by David Flanagan.
// Written by David Flanagan. Copyright (c) 1996 O'Reilly &amp; Associates.
// You may study, use, modify, and distribute this example for any purpose.
// This example is provided WITHOUT WARRANTY either expressed or implied.
import java.applet.*; // Don't forget these import statements!
import java.awt.*;
public class FirstApplet extends Applet {
// This method displays the applet.
// The Graphics class is how you do all drawing in Java.
public void paint(Graphics g) {
g.drawString("Hello World", 25, 50);
}
}</source>
<p>
Please take care to still use a sensible line-length within your
source elements.
</p>
</section>
<section id="table">
<title>Using tables</title>
<p>
And now for a table:
</p>
<table>
<caption>Table caption</caption>
<tr>
<th>heading cell</th>
<th>heading cell</th>
</tr>
<tr>
<td>data cell</td>
<td>data cell</td>
</tr>
<tr>
<td>
Tables can be nested
</td>
<td>
<ul>
<li>and can include most other elements, like lists</li>
</ul>
</td>
</tr>
</table>
<p>
Not much of attributes with <code>&lt;table&gt;</code>, if you ask me.
</p>
</section>
<anchor id="second-figure-anchor"/>
<section id="figure">
<title>Using figures</title>
<p>
And a <code>&lt;figure&gt;</code> to end all of this. Note that this
can also be implemented with an <code>&lt;img&gt;</code> element.
</p>
<figure src="images/project-logo2.png" alt="The fine Forrest logo" width="220" height="65"/>
</section>
</section>
</body>
<footer>
<legal>Copyright 2002-2005 The Apache Software Foundation or its licensors,
as applicable.</legal>
</footer>
</document>