Wobzilla consists of two different facets.
On one hand Wobzilla is a component-framework, thats based on Clemens Szyperski:
A dedicated and focused architecture, usually around a few key mechanisms, and a fixed set of policies for mechanisms at the component level.(Wobzilla focuses on the creation of form and content-editors)
On the other hand wobzilla provides a set of components for the creation of rich graphical user interfaces. These components are further diveded by their usage.
First there are the mapper-components. Combined, they provide most of the functionality of a XSLT-Processor and allow a constant synchronisation between source and output-document.
In addition Wobzilla provides a set of manipulation-components. They allow the manipulation of the source-document. Typical components in this category are input-fields or tables.
The kernel of wobzilla is
WobzillaEngine. It initializes
the main-window, the debugging-mechanisms and the basic menus.
It provides a set of basic services like loading and storing documents
or undo/redo functionality. See WobzillaEngine
for a full list of the provided services.
The configuration of the mapping components can be
written in a way that is according to the XSLT-specification. Only the namespaces are different.
xmlns:wbz="http://wobzilla.sf.net/views" instead of
There are shortcuts for each mapper-component named by the
xslt-equivalent. So in most cases simply replacing
wbz: will do the job. For
select="title"/> instead of
The following table provides an overview of the supported
XSLT-language elements. Note that not all
XSLT-elements are supported. Some elements like
xsl:output don't make sense in the
Wobzilla-context. Others like
xsl:elements still have to many
implications for a simple implementation.
|embedding into a host-language||WbzContainer|
|<xsl:template>||configuration of WbzMapper|
|<xsl:import>||configuration of WbzMapper|
|<xsl:sort>||configuration of WbzApply. Handled with the wobzilla.sortFactory service of WbzMapper.|
|configuration of WbzChoose|
|Handled with the wobzilla.variableFactory. Used in WbzContainer, WbzMapper and WbzApply.|
As the name suggests, this components allow the manipulation of the data-document, and thus indirectly the alteration of the view-tree which is created as a result of an evaluation of template-rules on the data-document.
|Editing Text-field like html:input and html:textarea||WbzTextField|
|Editable lists, tables, trees and selecting of detail-views.||WbzRepeat|
|Component for simple alternatives (simplified WbzRepeat)||WbzChoice|