<?oxygen RNGSchema="../resources/schemas/page.rng" type="xml"?>
<?oxygen SCHSchema="../resources/schemas/page.rng"?>
<page:page __file="dee2d2b78c4b0d7087c549641ee8d53b" __status="-1">......</page:page>
<page:page __file="dee2d2b78c4b0d7087c549641ee8d53b" __status="-1" xmlns:paloose="http://www.paloose.org/schemas/Paloose/1.0" xmlns:graphic="http://www.hsfr.org.uk/Schema/Graphic" xmlns:link="http://www.hsfr.org.uk/Schema/Link" xmlns:list="http://www.hsfr.org.uk/Schema/List" xmlns:page="http://www.hsfr.org.uk/Schema/Page" xmlns:t="http://www.hsfr.org.uk/Schema/Text" xmlns:i18n="http://apache.org/cocoon/i18n/2.1" xmlns:xi="http://www.w3.org/2001/XInclude">
<page:meta>......</page:meta>
<page:meta>
<page:title>Paloose — Home Page</page:title>
<page:copyright>Copyright 2006 – 2017 Hugh Field-Richards. All Rights Reserved.</page:copyright>
</page:meta>
<page:content>......</page:content>
<page:content>
<t:group id="body">......</t:group>
<t:group id="body">
<t:heading level="1">Welcome to Paloose</t:heading>
<t:index entry="Tomcat"/>
<t:p>......</t:p>
<t:p>
Paloose is a simplified version of
<link:link type="uri" ref="http://cocoon.apache.org/" target="cocoon">......</link:link>
<link:link type="uri" ref="http://cocoon.apache.org/" target="cocoon">
<t:index entry="Cocoon"/>
Cocoon
</link:link>
using PHP. It resulted from scratching a long standing personal itch: that there are very few ISPs who will support Java/Tomcat for web sites, other than as a very expensive "professional" addition. Almost all will support PHP5 (sorry, Paloose does not use PHP4), so I decided to write my version of a simple, cut-down
<t:index entry="Cocoon"/>
Cocoon in PHP5. I wanted to use XML on my personal sites but could not use
<t:index entry="Cocoon"/>
Cocoon because of the expense. I have been using Paloose for some time now and have always found it a good substitute for
<t:index entry="Cocoon"/>
Cocoon in all but the most complex sites. Paloose may also encourage others to start using XML and XSL without having to use extra bits such as Tomcat, Jetty or a full
<t:index entry="Cocoon"/>
Cocoon installation.
</t:p>
<t:p>......</t:p>
<t:p>
Please note that the technology underlying Paloose does not make it suitable for very large sites. If you need performance (see a
<link:link type="uri" ref="/pp/documentation/performance-1.html">discussion of performance issues here</link:link>
) then upgrade to
<t:index entry="Cocoon"/>
Cocoon — the extra expense of an updated server account will probably be unnoticeable in the overall cost of a large site anyway. However, having the ability to try out XML and XSL ideas in a PHP environment with a subset of
<t:index entry="Cocoon"/>
Cocoon is very useful.
</t:p>
<t:p>......</t:p>
<t:p>
Although Paloose is free software (see Licence
<link:link type="uri" ref="faq.html#licence">here</link:link>
) I would appreciate an EMAIL (hsfr@hsfr.org.uk) from anyone who downloads it — especially those who actual use it. Comments are welcome, good or bad.
</t:p>
<t:group id="peopleComments" latex="no">......</t:group>
<t:group id="peopleComments" latex="no">
<t:heading level="2">What people say ...</t:heading>
<t:quote who="Jason Johnston (327creative)" type="para">......</t:quote>
<t:quote who="Jason Johnston (327creative)" type="para">
started using [Paloose] soon after your announcement on the
<t:index entry="Cocoon"/>
Cocoon-users mailing list, and have been very impressed by its completeness. I'd been wanting a way to work in a
<t:index entry="Cocoon"/>
Cocoon-like paradigm ... that could be used on "standard" web hosts, and Paloose has filled that need very well.
</t:quote>
<t:quote who="Gary T. Schultz (Wisconsin Department of Commerce)" type="para">......</t:quote>
<t:quote who="Gary T. Schultz (Wisconsin Department of Commerce)" type="para">
I just want to say thank you for developing Paloose and releasing it to the world. I have wondered at times about a PHP framework similar to
<t:index entry="Cocoon"/>
Cocoon. ... Paloose does exactly what I need ... [it] is an excellent package. I was able to move a small web site from
<t:index entry="Cocoon"/>
Cocoon to Paloose with very little changes.
<t:index entry="Cocoon"/>
Cocoon and Paloose both demonstrate that content management can take place in a simple manner without the need for a database. ... Keep up the great work. You already have a great package that can only get better.
</t:quote>
</t:group>
</t:group>
<t:group id="oxygen" latex="no">......</t:group>
<t:group id="oxygen" latex="no">
<t:p>Site XML developed with</t:p>
<link:link type="uri" ref="http://www.oxygenxml.com" label="Oxygen XML Editor">......</link:link>
<link:link type="uri" ref="http://www.oxygenxml.com" label="Oxygen XML Editor">
<graphic:graphic ref="http://www.oxygenxml.com/img/resources/oxygen190x62.png" width="190" label="Oxygen XML Editor"/>
</link:link>
</t:group>
<t:group id="rightPanel" latex="no">......</t:group>
<t:group id="rightPanel" latex="no">
<t:heading level="2">Generators</t:heading>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/aggregation.html">Aggregation</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/fileGenerator.html">Simple XML file generator</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/pxTemplateGenerator.html">XML Template file generator</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/directoryGenerator.html">Directory listing generator</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/GedComGenerator.html">GedCom generator</link:link>
</t:p>
<t:heading level="2">Transformers</t:heading>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/traxTransformer.html">XSL transforms</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/logTransformer.html">Logging Transformer</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/i18nTransformer.html">Multi-language support</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/sourceWritingTransformer.html">XML Write to external file</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/SQLTransformer.html">Querying an SQL database</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/filterTransformer.html">Filter Transformer</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/XIncludeTransformer.html">XInclude Transformer</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/entityTransformer.html">Entity Transformer</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/passwordTransformer.html">Password Encoding Transformer</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/moduleWriteTransformer.html">Module Write Transformer</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/pageHitTransformer.html">Page-hit Transformer</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/galleryTransformer.html">Picture Gallery Transformer</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/variableTransformer.html">Variable Transformer</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/string2XMLTransformer.html">String to XML Transformer</link:link>
</t:p>
<t:heading level="2">Serializers</t:heading>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/htmlSerializer.html">HTML serializer</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/xhtmlSerializer.html">XHTML serializer</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/xmlSerializer.html">XML serializer</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/textSerializer.html">Text serializer</link:link>
</t:p>
<t:heading level="2">Actions</t:heading>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/sendMailAction.html">SendMail action</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/cookiesAction.html">Cookie action</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/authorisationActions.html">Authentication actions</link:link>
</t:p>
<t:heading level="2">Selectors</t:heading>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/selectors.html#BrowserSelector">Browser Selector</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/selectors.html#RequestParameterSelector">Request Parameter Selector</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/selectors.html#RegexpSelector">Regular Expression Selector</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/selectors.html#VariableSelector">Variable Selector</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/selectors.html#ResourceExistsSelector">Resource Exists Selector</link:link>
</t:p>
<t:heading level="2">Forms</t:heading>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/pforms.html">Paloose Forms</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/flows.html">Flowscripts and continuations</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/flows-2.html">Entry checking</link:link>
</t:p>
<t:heading level="2">Also...</t:heading>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/sitemap.html#internalPipeline">Internal-only pipelines</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/sitemap.html#patterns">Wildcard/regex pattern matchers</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/redirect.html">Redirection</link:link>
</t:p>
<t:p>Simple Resource Readers</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/mount.html">Subsitemaps</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/views.html">Views</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/handleErrors.html">Error handling</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/sitemap.html#variables">Sitemap variables</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/sitemap.html#protocols">pseudo-protocols</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/sitemap.html#variables">Global sitemap variables</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/sitemap.html#variables">Request parameters</link:link>
</t:p>
<t:p>......</t:p>
<t:p>
<link:link type="uri" ref="/pp/documentation/caching.html">Caching support</link:link>
</t:p>
</t:group>
</page:content>
</page:page>