1. 1. Introduction
    1. 1.1 OGC Standards
      1. Introduction to OGC
      1. 1.1.1 Web Mapping Service
        1. Introduction to WMS
        2. WMS Examples
      1. 1.1.2 Web Feature Service
        1. Introduction to WFS
        2. WFS Examples
      1. 1.1.3 Web Coverage Service
        1. Introduction to WCS
        2. WCS Examples
      1. 1.1.4 Web Processing Service
        1. Introduction to WPS
        2. WPS Examples
    1. 1.2 CAAML
      1. Introduction to CAAML
    1. 1.3 INSPIRE
      1. Introduction to INSPIRE
  1. 2. Standards in action
    1. 2.1 Prepare data and toolkit
      1. Data and geospatial tools
      2. Start the environment
      1. 2.1.1 Manage the data
        1. Load Data
        2. Clean Data
      1. 2.1.2 Design the CAAML schema
        1. CAAML model design
        2. Populate Region
    1. 2.2 Build CAAML with GeoAvalanche
      1. Configure the application schema for CAAML
      2. Push the configuration to GeoAvalanche
      3. Query our Region features
  1. 3. Main Chapter
    1. Lesson Six

CAAML model design

Design of ER model for EAWS CAAML profile

The model has been drafted and it's still a working progress but for the goal of the tutorial is fairly enough.

The database structure is depicted in the following E/R diagram:

entity relationship caaml

There are four normalized tables:

  • caaml_Region: has basic information about the snow meteorological zone where at least measurements and bulletins insist but in general is the base building block for any CAAML object which has a spatial property (location)
  • caaml_LocationCollection: this table refers to collections where each record is made of multiple regions
  • caaml_BulletinEAWS: each record of this table stores all the information regarding a bulletin for a location such has metadata, period of time for its validity and nested information about the measurements for it
  • caaml_BulletinMeasurement: holds all the measurements that were taken for a bulletin

A one-to-many relationship exists between caaml_LocationCollection and caaml_Region

For now we will consider just the trivial case of the table caaml_Region about regions for exchanging the following CAAML element

<element name="Region" type="caaml:RegionType"/>