The navigational model assumes there is a single page
designated as the starting page or homepage of your
structure. Each page element in the plan.xml
file describes one page in your structure. The single page element that is the child of the plan root element in your plan.xml file describes
that starting page. Its child page
elements are the second-level entries in your outline.
Any page element can have page children, and this is how you structure
your web as an outline.
It may seem restrictive to require a strict outline format, but this is necessary so that PyStyler can set up the default “Next” and “Previous” links.
Continuing our literate exposition of the plan.rnc file:
page = element page
{ attribute pgid { pgid-pat },
text,
page*
}
The pgid attribute is required, and
contains the page identifier of the page. For the form
of a page identifier, see Section 5.2, “What is a page identifier (page-id)?”.
The content of a page element always
starts with the page's title. This title may
contain XHTML tags and character entities such as
“ó” for the
“ó” character.
If the page described by this element has sub-pages, each
of them is described by another page
element following the page title. These elements may
have sub-elements, and so on down to the deepest pages.
Here's a brief example of a whole plan.xml file.
<plan xmlns="http://www.nmt.edu/tcc/projects/pystyler3/plan.rnc"
xmlns:h="http://www.w3.org/1999/xhtml"
base-url="..." source-dir="...">
<page page-id="homepage">
Bob Smith's Home Sweet Homepage
<page page-id="bio">
Biography
</page>
<page page-id="hobbies">
Bob's Hobbies
<page page-id="hobby/caber">
Bob likes to toss a caber
</page>
<page page-id="hobby/titanic">
Simulating the sinking of the <h:em>Titanic</h:em>
</page>
</page>
</page>
</plan>
Note the use of the XHTML em element in
the page whose ID is “hobby/titanic”.