leafletWFSTFormats (v3)

Revision 3 of this benchmark created by kuzkok on


Preparation HTML

<script src="https://cdnjs.cloudflare.com/ajax/libs/leaflet/0.7.3/leaflet.js"></script>
<script src="http://flexberry.github.io/Leaflet-WFST/dist/Leaflet-WFST.src.js"></script>

Setup

var gmlFormat = new L.Format.GML({
    crs: L.CRS.Simple,
    geometryField: 'ogr_geometry'
  });
  var geoJsonFormat = new L.Format.GeoJSON({
    crs: L.CRS.Simple,
    geometryField: 'ogr_geometry'
  });
  var gmlData = '<?xml version="1.0" encoding="UTF-8"?><wfs:FeatureCollection xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:wfs="http://www.opengis.net/wfs" xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc" xmlns:ows="http://www.opengis.net/ows" xmlns:nurc="http://www.nurc.nato.int" xmlns:tiger="http://www.census.gov" xmlns:topp="http://www.openplans.org/topp" xmlns:sf="http://www.openplans.org/spearfish" xmlns:sde="http://geoserver.sf.net" xmlns:osm_perm_region="http://geoserver.ics.perm.ru" xmlns:cite="http://www.opengeospatial.net/cite" xmlns:it.geosolutions="http://www.geo-solutions.it" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" numberOfFeatures="1" timeStamp="2015-06-18T15:29:08.145Z" xsi:schemaLocation="http://www.opengis.net/wfs http://localhost:8080/geoserver/schemas/wfs/1.1.0/wfs.xsd http://geoserver.ics.perm.ru http://localhost:8080/geoserver/osm_perm_region/wfs?service=WFS&amp;version=1.1.0&amp;request=DescribeFeatureType&amp;typeName=osm_perm_region%3Aperm_water_polygon"><gml:featureMembers><osm_perm_region:perm_water_polygon gml:id="perm_water_polygon.2644"><osm_perm_region:ogr_geometry><gml:Polygon srsDimension="2" srsName="urn:x-ogc:def:crs:EPSG:4326"><gml:exterior><gml:LinearRing srsDimension="2"><gml:posList>57.98147969999997 55.82065059999997 57.98329989999998 55.82090809999997 57.98471059999998 55.82073639999997 57.986212099999975 55.82082229999998 57.9873496 55.82116559999997 57.98771359999997 55.82185219999998 57.98662159999998 55.8221097 57.98539309999998 55.8221097 57.98343649999998 55.8217664 57.98198029999997 55.821337299999975 57.98138869999997 55.82107979999997 57.98147969999997 55.82065059999997</gml:posList></gml:LinearRing></gml:exterior></gml:Polygon></osm_perm_region:ogr_geometry><osm_perm_region:osm_id>4.5847949E7</osm_perm_region:osm_id><osm_perm_region:natural>water</osm_perm_region:natural></osm_perm_region:perm_water_polygon></gml:featureMembers></wfs:FeatureCollection>';
  var geoJSONData = '{"type":"FeatureCollection","totalFeatures":1,"features":[{"type":"Feature","id":"perm_water_polygon.2644","geometry":{"type":"Polygon","coordinates":[[[55.82065059999997,57.98147969999997],[55.82090809999997,57.98329989999998],[55.82073639999997,57.98471059999998],[55.82082229999998,57.986212099999975],[55.82116559999997,57.9873496],[55.82185219999998,57.98771359999997],[55.8221097,57.98662159999998],[55.8221097,57.98539309999998],[55.8217664,57.98343649999998],[55.821337299999975,57.98198029999997],[55.82107979999997,57.98138869999997],[55.82065059999997,57.98147969999997]]]},"geometry_name":"ogr_geometry","properties":{"osm_id":4.5847949E7,"name":null,"natural":"water","waterway":null,"wetland":null}}],"crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:EPSG::4326"}}}';
  var description = '<?xml version="1.0" encoding="UTF-8"?><xsd:schema xmlns:gml="http://www.opengis.net/gml" xmlns:osm_perm_region="http://geoserver.ics.perm.ru" xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://geoserver.ics.perm.ru">  <xsd:import namespace="http://www.opengis.net/gml" schemaLocation="http://localhost:8080/geoserver/schemas/gml/3.1.1/base/gml.xsd"/>  <xsd:complexType name="perm_water_polygonType">    <xsd:complexContent>      <xsd:extension base="gml:AbstractFeatureType">        <xsd:sequence>          <xsd:element maxOccurs="1" minOccurs="0" name="ogr_geometry" nillable="true" type="gml:GeometryPropertyType"/>          <xsd:element maxOccurs="1" minOccurs="0" name="osm_id" nillable="true" type="xsd:double"/>          <xsd:element maxOccurs="1" minOccurs="0" name="natural" nillable="true" type="xsd:string"/>          <xsd:element maxOccurs="1" minOccurs="0" name="waterway" nillable="true" type="xsd:string"/>          <xsd:element maxOccurs="1" minOccurs="0" name="wetland" nillable="true" type="xsd:string"/>        </xsd:sequence>      </xsd:extension>    </xsd:complexContent>  </xsd:complexType>  <xsd:element name="perm_water_polygon" substitutionGroup="gml:_Feature" type="osm_perm_region:perm_water_polygonType"/></xsd:schema>';
  var descriptionElement = L.XmlUtil.parseXml(description);
  gmlFormat.setFeatureDescription(descriptionElement.documentElement);

Test runner

Ready to run.

Testing in
TestOps/sec
GeoJSON
geoJsonFormat.responseToLayers(geoJSONData);
ready
GML
gmlFormat.responseToLayers(gmlData);
ready

Revisions

You can edit these tests or add more tests to this page by appending /edit to the URL.