Navigation xw3.org


The engine

The XW3 website engine was an open-source-project from 2004-2005. We have now stopped this project, but the idea is still alive. You can read parts of the original documentation here.

Original Documentation

  1. Motivation
  2. Features
  3. Documentation for authors

The XW3 website engine is a pure website engine (no content management system) written in PHP and is based on XML content. No SQL Database required. Our goal is to build a framework which implements the Model-View-Controller (MVC) design pattern. The layout and design of the standard-template is 100% clean XHTML and CSS, although the XW3 website engine supports all kinds of text-based output formats (HTML, WML, XML, etc.).

Motivation

The main goal when programming the XW3 engine was to create a website engine that builds a complete website fully automatical out of any content that is present. The claim was to seperate the content 100% from the design, and both of them from the code. Important were the interfaces from the code to the content and from the code to the design.

Features

Documentation for authors

As author, You'll find it very easy to write content for the XW3 website engine, because You really only have to write content, and don't have to bother with design issues or HTML-code. The author has also full freedom to change navigation text, choose between different content templates, specify author and date for a specific document, and, besides, control the complete navigation structure of a XW3 website. This can easily be done by using a file browser - drag and drop Your content. :)

Content creation

To add a content page, simply create an xml file similar to the one used for this page, and place it in the lang/en/content/ dir (for example). You can create subcontent by creating a folder in the content-dir and place any number of xml files there. In every subcontent dir a index-xml file is required. These can for example be used for the sitemap-plugin. Plugins can be loaded by adding this attribute to the <document> node:

plugins="sitemap"

Please do always use the syntax presented in the following chapter on this page. You can add any number of chapters and subchapters, as long as they are nested in the right way. Subcontent is created by creating a new dir in the htdocs/data/en/modules/main/ dir, and place the xml there.

If You need a table of contents for a content page, add this attribute to the <document> node:

toc="yes"

To create an alternative theme for the content, create a file in the themes/(your theme)/modules/main/ dir with the extension .ihtml (for example 2columns.ihtml). The name of this file can now be used in the <document> node like this:

template="2columns"

You can also add emblems to documents or chapters, add this attribute to the <document> or <chapter> node: (The emblems must be placed in the images/emblems/ dir and named emblem_[name of emblem].png)

emblem="art"

XML structure of the XW3 content files

<?xml version="1.0" encoding="utf-8"?>
<document toc="" template="" plugins="" emblem="">
	<language></language>
	<headline></headline>
	<footline></footline>
	<author></author>
	<date></date>
	<link></link>
	<info></info>
	<summary></summary>
	<content>
		<chapter emblem="">
			<headline></headline>
			<text></text>
			<subchapter>
				<headline></headline>
				<text></text>
			</subchapter>
		</chapter>
	</content>
</document>