Skip to content

Instantly share code, notes, and snippets.

View tmcw's full-sized avatar
💭
merging your prs

Tom MacWright tmcw

💭
merging your prs
View GitHub Profile
<wfs:WFS_Capabilities xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.opengis.net/wfs" xmlns:wfs="http://www.opengis.net/wfs" xmlns:ows="http://www.opengis.net/ows" xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:it.geosolutions="http://www.geo-solutions.it" xmlns:cite="http://www.opengeospatial.net/cite" xmlns:tiger="http://www.census.gov" xmlns:sde="http://geoserver.sf.net" xmlns:topp="http://www.openplans.org/topp" xmlns:sf="http://www.openplans.org/spearfish" xmlns:nurc="http://www.nurc.nato.int" version="1.1.0" xsi:schemaLocation="http://www.opengis.net/wfs http://localhost:8080/geoserver/schemas/wfs/1.1.0/wfs.xsd" updateSequence="57">
<ows:ServiceIdentification>
<ows:Title>Drupal WFS</ows:Title>
<ows:Abstract>A Simple Drupal WFS Server</ows:Abstract>
<ows:Keywords>
<ows:Keyword>WFS</ows:Keyword>
</ows:Keywords>
<ows:ServiceType>WFS</ows:ServiceType>
<ows:ServiceTypeVersion>1.1.0
/**
* APIFunction: setCode
* Set the language code for string translation. This code is used by
* the <OpenLayers.Lang.translate> method.
*
* Parameters-
* code - {String} These codes follow the IETF recommendations at
* http://www.ietf.org/rfc/rfc3066.txt. If no value is set, the
* browser's language setting will be tested. If no <OpenLayers.Lang>
* dictionary exists for the code, the <OpenLayers.String.defaultLang>
!SLIDE
# Open Data is Also About Accessibility: Hosting Government and NGO Data in the Amazon's Cloud #
!SLIDE bullets
# The Cloud #
* Not a magic bullet
* Hardware abstraction over networks
* Encapsulate and reuse servers and storage
* Fast and often free within the network
<?xml version="1.0" encoding="UTF-8"?>
<sld:StyledLayerDescriptor version="1.0.0"
xmlns:sld="http://www.opengis.net/sld"
xmlns:ogc="http://www.opengis.net/ogc"
xmlns:gml="http://www.opengis.net/gml"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.0.0/StyledLayerDescriptor.xsd">
<sld:NamedLayer>
<sld:Name>LocalStyle</sld:Name>
<?xml version="1.0" encoding="utf-8" ?><wfs:FeatureCollection
xmlns:drupal="http://drupal.org/project/wfs"
xmlns:wfs="http://www.opengis.net/wfs"
xmlns:gml="http://www.opengis.net/gml"
xmlns:ogc="http://www.opengis.net/ogc"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.opengis.net/wfs http://schemas.opengeospatial.net//wfs/1.0.0/WFS-basic.xsd">
<gml:featureMembers>
<gml:featureMember>
<drupal:wfs fid="1">
options_2 = {
drupalID: options.drupalID,
strategies: [new OpenLayers.Strategy.BBOX()],
protocol: new OpenLayers.Protocol.WFS({
url: '/drupal/wfs',
featurePrefix: 'drupal',
featureType: 'drupal_points',
geometryName: 'geometry',
featureNS: 'http://drupal.org/project/wfs',
srsName: 'EPSG:4326',
private function process_filter() {
$post_text = trim(file_get_contents('php://input'));
if (isset($_GET['filter']) || $post_text) {
// $xml = new SimpleXMLElement($_GET['filter']);
$xml = new SimpleXMLElement($post_text);
// the filter is wrapped in two namespaces so specify each;
// this has only been tested with GeoServer
$envelope = $xml->children('http://www.opengis.net/ogc')->
BBOX->children('http://www.opengis.net/gml')->Envelope;
$bounding_box = array_merge(
<Rule>
<Name>Low</Name>
<Title>250,000 - 499,999</Title>
<ogc:Filter>
<ogc:And>
<ogc:PropertyIsGreaterThanOrEqualTo>
<ogc:PropertyName>BENEFICI</ogc:PropertyName>
<ogc:Literal>250000</ogc:Literal>
</ogc:PropertyIsGreaterThanOrEqualTo>
<ogc:PropertyIsLessThan>
Index: lib/OpenLayers/Format/GML/Base.js
===================================================================
--- lib/OpenLayers/Format/GML/Base.js (revision 10367)
+++ lib/OpenLayers/Format/GML/Base.js (working copy)
@@ -346,7 +346,8 @@
// Assume attribute elements have one child node and that the child
// is a text node. Otherwise assume it is a geometry node.
if(node.childNodes.length == 0 ||
- (node.childNodes.length == 1 && node.firstChild.nodeType == 3)) {
+ (node.childNodes.length == 1 && node.firstChild.nodeType == 3) |