[Authors] [News] [Requirements] [Download] [Success Stories] [Reference] [Panel] [Back to HELM software]
UWOBO: an XSLT Stylesheet (Chain) Processor | top |
UWOBO is a Web-Service based XSLT processor.
UWOBO interface is based on HTTP GET method: UWOBO can indeed be contacted with a proper URL containing all parameters needed to request stylesheet application.
UWOBO supports not only the usual single XSLT stylesheet application to an XML document, but also application of stylesheets chains. An XSLT stylesheets chain is a trasformation described providing an ordered list of XSLT stylesheets. First stylesheet is applied to the input XML document, output of this trasformation is the input for the application of the second stylesheet and so on until the last one. Last trasformation output is the final output sent back to the client.
UWOBO supports all output properties defined in the XSLT recommendation. Output properties are read from the last stylesheet of the chain and can be overridden by proper parameters.
UWOBO is fully developed in the OCaml programming language and is distributed under the term of the GNU General Public License (GPL).
UWOBO was born at the University of Western Ontario, London, Canada. Later it
has been further refined and developed at the University of Bologna (hence the
name).
Current version of UWOBO has been fully reimplemented from scratch at the
University of Bologna, here you can find a mirror of the
old version web page (beware that some links can be broken).
Authors | top |
News | top |
Requirements | top |
UWOBO is a standalone HTTP Daemon written in OCaml. XSLT transformations are performed using libxslt which is in turn based on libxml.
In order to build UWOBO from sources you will need:Download | top |
Success Stories | top |
Reference | top |
UWOBO web service is actually bound only to the HTTP GET method. All command
and parameters are encoded in the request URL. The generic format of
UWOBO invocations is:
http://uwobo_url/command[?parameters]
uwobo_url includes hostname on which UWOBO is running and TCP port on which UWOBO is listening (default is 58080).
A list of available commands (as returned by invoking UWOBO's /help method) follows:
help
display this help message
add?bind=key,uri[&bind=key,uri[&...]]
load a new stylesheet, specified by uri, and bind it to key
key
remove[?keys=key1,key2,...]
unload stylesheets specified by key1, key2, ... or all
stylesheets if no key was given
reload[?keys=key1,key2,...]
reload stylesheets specified by key1, key2, ... or all
stylesheets if no key was given
list
return a list of loaded stylesheets
apply?xmluri=uri&keys=key1,key2,...[¶m.name=value[¶m.name=value[&...]]][¶m.key.name=value[¶m.key.name=value[&...]]][&prop.name[=value][&prop.name[=value][&...]]]
apply a chain of stylesheets, specified by key1, key2, ..., to an
input document, specified by uri.
Additional parameters can be set for each stylesheet application: global
parameters (i.e. parameters passed to all stylesheets) are set using
param.name=value syntax, per stylesheet parameters are set using
param.key.name=value where key is the key of a loaded
stylesheet.
Properties of the final chain output can be set too: valueless properties
can be set using prop.name syntax, others can be set using
prop.name=value syntax.
Current supported properties are: cdata-section-elements, doctype-public,
doctype-system, encoding, indent, media-type, method,
omit-xml-declaration, standalone, version.
Panel | top |
We have designed a simple web page (namely the UWOBO panel) which
allows a simple interaction with the processor. Currently, the page is tuned
to be used in the context of HELM, but you can download and customize it to
your needs.
Use the panel!.