Create an analytic application

The purpose of this exercise is to create an application that allows you to select properties (parcels) using points and a radius, a freehand polygon, or a 15m buffer layer around the center-line of the roads in the city of Guelph ("Guelph Streets").




Step 1 -Create Basic Application

1) From the main menu, click on "More..." and "Form" and select your "Guelph Property - Base Form" Form (name can be different based on your input name) and click on "Edit" button.  We will use this Form to configure the data consultation of the properties from the city of Guelph.  This Form was automatically generated at import step (previous tutorial).

2) Feel free to removed several useless fields can from your Form, and make sure to add the "browsable": true  option at the end of the Form:

   "name":"Guelph Properties",
   "attributes": [
      "label": "gpid_",
      "name": "gpid",
      "type": "text"
      "label": "Parcel type",
      "name": "parceltype",
      "type": "text"
      "label": "Municipality",
      "name": "municipali",
      "type": "text"
      "editable": false,
      "queryable": true,
      "browsable": true

3) Create a new map called "[your_usernam]_guelph_properties_analytics" and make sure the Form associated with your layer is "Guelph Property". Add "Guelph Property" and the "Guelph Streets" layers.

4) Create a Web Mapping Application using your "[your_usernam]_guelph_properties_analytics" map. Make sure to enable the "Data Source Browser" from the Basic Config options in Application properties.  Save and run your application.

Step 2 - Basic Application Filters

We want to filter the data to show only the parcels of residences, public land and hide the street parcels. Since the Data Source contains a field that identifies the parcel type, it is easy to use this information to filter the data.

1)  Add an "evouala filter" in the "Guelph Property - Base Form". Here is the configuration to add at the end of the previous Form. Save and refresh the application:

"evouala_filters": [
    "choices": [
            "label": "Properties",
            "value": "SURFACE PARCEL"
            "label": "Roads",
            "value": "ROAD PARCEL"
    "default_value": "SURFACE PARCEL",
    "mode": "select",
    "priority": 21,
    "property": "parceltype",
    "title": "Parcel Type"

2) We would now like to allow users to select parcels that are within a selected "Wards" polygon. To do this, add a "Spatial Filter" in the configuration of the "Guelph Property" Form:

"spatial_filters": [

Note: The registered number is the Resource ID of the "Wards" Data Source. View the properties of this Data Source to identify it.

3) Test your application! View the documentation to understand all different types of spatial filters (crosses, cover, etc).

Step 3 - Process Buffer Filter

We would now like to select the parcels that are on a road segment identified by the user.

1)  Create a 15m Dynamic Buffer Layer, based on the center-line layer (Guelph Streets):

  • Click on the '+' button, then select "Process";
  • Click on the 'Browse...' button and select the "Guelph Street" Data Source;
  • Add the "Buffer zone" operator and configure it to create a new polygon type geometry of 15m around the center-line of the roads;
  • Run the process (button at the bottom of the page) and observe the results;

2) Save the process and carefully examine the options. For the purpose of the exercise and since the Data Source is not dynamic, it is useful here to enable the "Materialize process" option.
This will create a new static physical layer instead of a dynamic query at each lookup. The consultation will be much faster.

3) We want to add this new Resources (Processed Data source) into the Spatial filter of your analytical application.  Identify the Resource ID of your Process and add it to your Spatial Filter list contained in the "Guelph Property" Form (see Step 2 Task #2). Save your Form.

4) Refresh your application and validate. Et vouala!

Note: Filter types are numerous and several combinations are possible. Explore the Forms documentation to learn more.

Was this article helpful?
0 out of 0 found this helpful
Have more questions? Submit a request


Please sign in to leave a comment.
Powered by Zendesk