Adding an XSLT step at the end allows the content to be styled for the mobile browser:
<p:pipe xmlns:p="urn:publicid:IDN+smallx.com:pipeline:1.0" name="changeme" xmlns:c="urn:publicid:IDN+smallx.com:component-language:1.0" xmlns:f="urn:publicid:IDN+smallx.com:server:forms:post:1.0" xmlns:param="urn:publicid:IDN+smallx.com:server:parameters" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:t="http://www.smallx.com/services/tideinfo/2005" > <p:template> <xsl:param name="param:server"/> <c:url-post href="{$param:server}tideinfo-service/tideinfo.pd"> <t:tideinfo location="{/f:form/f:parameter[@name='location']}"/> </c:url-post> </p:template> <p:url/> <p:xslt src="mobile.xsl"/> </p:pipe>
The result of this pipeline is XHTML, so we should configure the pipeline engine to set the content type.