<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Thanks for your work (and perseverance) on this, any chance you can open up a github pull request for this? TIA.<div><br></div><div>Best regards,</div><div>Bart</div><div><br></div><div><div>
<span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><div>-- <br>Bart van den Eijnden<br>OpenGeo - <a href="http://opengeo.org/">http://opengeo.org</a><br>Expert service straight from the developers.</div><div><br></div></span><br class="Apple-interchange-newline">

</div>
<br><div><div>On Jul 14, 2013, at 12:38 AM, brking <<a href="mailto:brking@gmail.com">brking@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite">If anyone is interested in how to make this work.<br><br>Format/Filter/v1.js:<br><br>add "FUNCTION" to the filter map<br><br>    filterMap: {<br>        "&&": "And",<br>...<br>        "FID": "_featureIds",<br>        "FUNCTION": "Function"<br>    },<br><br>I also wanted to support PropertyName as an argument to a function, so<br>change the writer to add a "properties" collection:<br><br>            "Function": function(filter) {<br>                var node = this.createElementNSPlus("ogc:Function", {<br>                    attributes: {<br>                        name: filter.name<br>                    }<br>                });<br>                var params = filter.params;<br>                for(var i=0, len=params.length; i<len; i++){<br>                    this.writeOgcExpression(params[i], node);<br>                }<br>                var properties = filter.properties;<br>                for(var i=0, len=properties.length; i&lt;len; i++){<br>                    var propNode =<br>this.createElementNSPlus(&quot;ogc:PropertyName&quot;, { value:<br>properties[i] });<br>                    node.appendChild(propNode);<br>                }<br>                return node;<br>            },<br><br>Now I can use it like this:<br><br>                var subFilter = new OpenLayers.Filter.Function({<br>                    type: 'FUNCTION',<br>                    name: 'MyFunction',<br>                    params: [1.23, 4.56, 'param3'],<br>                    properties: ['Altitude', 'Heading']<br>                });<br><br>                var timeFilter = new OpenLayers.Filter.Logical( {<br>                        type: OpenLayers.Filter.Logical.AND,<br>                        filters: [<br>                            new OpenLayers.Filter.Comparison({<br>                                type:<br>OpenLayers.Filter.Comparison.GREATER_THAN_OR_EQUAL_TO,<br>                                property: 'startdate',<br>                                value: startDate<br>                            }),<br>                            subFilter<br>                        ]<br>                    }<br>                );<br><br>and get OGC encoded like this:<br><br>&lt;wfs:GetFeature xmlns:wfs=&quot;<a href="http://www.opengis.net/wfs&quot">http://www.opengis.net/wfs&quot</a>;<br>service=&quot;WFS&quot; version=&quot;1.0.0&quot;<br>xsi:schemaLocation=&quot;<a href="http://www.opengis.net/wfs">http://www.opengis.net/wfs</a><br><a href="http://schemas.opengis.net/wfs/1.0.0/WFS-transaction.xsd&quot">http://schemas.opengis.net/wfs/1.0.0/WFS-transaction.xsd&quot</a>;<br>xmlns:xsi=&quot;<a href="http://www.w3.org/2001/XMLSchema-instance&quot">http://www.w3.org/2001/XMLSchema-instance&quot</a>;><br><span class="Apple-tab-span" style="white-space:pre">  </span><wfs:Query typeName="feature:nyc_buildings" xmlns:feature="ncr"><br><span class="Apple-tab-span" style="white-space:pre">        </span><span class="Apple-tab-span" style="white-space:pre">    </span><ogc:Filter xmlns:ogc="<a href="http://www.opengis.net/ogc">http://www.opengis.net/ogc</a>"><br><span class="Apple-tab-span" style="white-space:pre">        </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><ogc:And><br><span class="Apple-tab-span" style="white-space:pre">   </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><ogc:And><br><span class="Apple-tab-span" style="white-space:pre">   </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><ogc:PropertyIsGreaterThanOrEqualTo><br><span class="Apple-tab-span" style="white-space:pre">        </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><ogc:PropertyName>startdate</ogc:PropertyName><br><span class="Apple-tab-span" style="white-space:pre">        </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><ogc:Literal>"2003-04-12 04:00:00 z"</ogc:Literal><br><span class="Apple-tab-span" style="white-space:pre">  </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span></ogc:PropertyIsGreaterThanOrEqualTo><br><span class="Apple-tab-span" style="white-space:pre">       </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><ogc:Function name="MyFunction"><br><span class="Apple-tab-span" style="white-space:pre">  </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><ogc:Literal>1.23</ogc:Literal><br><span class="Apple-tab-span" style="white-space:pre">       </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><ogc:Literal>4.56</ogc:Literal><br><span class="Apple-tab-span" style="white-space:pre">       </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><ogc:Literal>param3</ogc:Literal><br><span class="Apple-tab-span" style="white-space:pre">     </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><ogc:PropertyName>Altitude</ogc:PropertyName><br><span class="Apple-tab-span" style="white-space:pre"> </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><ogc:PropertyName>Heading</ogc:PropertyName><br><span class="Apple-tab-span" style="white-space:pre">  </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span></ogc:Function><br><span class="Apple-tab-span" style="white-space:pre">     </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span></ogc:And><br><span class="Apple-tab-span" style="white-space:pre">  </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><ogc:BBOX><br><span class="Apple-tab-span" style="white-space:pre">  </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><ogc:PropertyName>the_geom</ogc:PropertyName><br><span class="Apple-tab-span" style="white-space:pre"> </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><gml:Box xmlns:gml="<a href="http://www.opengis.net/gml">http://www.opengis.net/gml</a>" srsName="EPSG:4326"><br><span class="Apple-tab-span" style="white-space:pre">     </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><gml:coordinates decimal="." cs="," ts=" ">-188.17578125,-2.275390625<br>-7.82421875,82.275390625</gml:coordinates><br><span class="Apple-tab-span" style="white-space:pre">       </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span></gml:Box><br><span class="Apple-tab-span" style="white-space:pre">  </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span></ogc:BBOX><br><span class="Apple-tab-span" style="white-space:pre"> </span><span class="Apple-tab-span" style="white-space:pre">    </span><span class="Apple-tab-span" style="white-space:pre">    </span></ogc:And><br><span class="Apple-tab-span" style="white-space:pre">  </span><span class="Apple-tab-span" style="white-space:pre">    </span></ogc:Filter><br><span class="Apple-tab-span" style="white-space:pre">       </span></wfs:Query><br></wfs:GetFeature><br><br><br><br><br>--<br>View this message in context: <a href="http://osgeo-org.1560.x6.nabble.com/Problems-with-Openlayers-Filter-Function-in-WFS-tp5066248p5066253.html">http://osgeo-org.1560.x6.nabble.com/Problems-with-Openlayers-Filter-Function-in-WFS-tp5066248p5066253.html</a><br>Sent from the OpenLayers Users mailing list archive at <a href="http://Nabble.com">Nabble.com</a>.<br>_______________________________________________<br>Users mailing list<br><a href="mailto:Users@lists.osgeo.org">Users@lists.osgeo.org</a><br>http://lists.osgeo.org/mailman/listinfo/openlayers-users<br></blockquote></div><br></div></body></html>