Jan van Bennekom-Minnema [email protected] MSc Programme GIMA msc-gima.nl
description
Transcript of Jan van Bennekom-Minnema [email protected] MSc Programme GIMA msc-gima.nl
118.06.08
#
The Land Administration Domain Model'Survey Package'
and Model Driven Architecture
Presentation of Master of Science Thesis
Jan van [email protected]
MSc Programme GIMAhttp://www.msc-gima.nl
Master of Science Thesis Presentation218.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Agenda
Introduction
– Highlight main topics and MSc thesis project
Details on Research Topics
– Land Administration Domain Model, Model Driven Architecture, constraints in UML models, Kadaster survey measurements
Model Driven Architecture Prototype
– Transformations from PIM to PSM
– Analysis of quality/accuracy of Dutch cadastral map
Conclusion
– Revisit research question, conclusions, recommendations
Research Topics
MDA Prototype
Conclusion
Introduction
Master of Science Thesis Presentation318.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
INTRODUCTION
Land Administration Domain Model 'Survey Package'
Object Constraint Language
Model Driven Architecture
Kadaster Project "Registration Map Quality"
MSc Thesis Project
– Objective
– Research Question
– Approach
Abbreviations
LADM = Land Administration Domain Model
LADM SP = LADM's Survey Package
MDA = Model Driven Architecture
PIM = Platform Independent Model (e.g. LADM)
PSM = Platform Specific Model (e.g. for PostGIS)
OCL = Object Constraint Language
EA = Enterprise Architect (-> UML/MDA tool)
Introduction
Master of Science Thesis Presentation418.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Land Administration Domain Model 'Survey Package'
Land Administration Domain Model (LADM)– UML class diagram [Lemmen and Van Oosterom, 2006]– ISO 19152 standard [ISO/TC211, 2008]
Goals
– Extensible basis for IS development, based on Model Driven Architecture (MDA)
LADM packages
– Core elements:
Registered Object, RRR (Rights, Responsibilities, Restrictions) & Persons
– 5 LADM packages around core elements
Focus on: Survey Package– Measurements of immovable objects– Representations of objects on the cadastral map
Introduction
Master of Science Thesis Presentation518.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Object Constraint Language
Object Constraint Language (OCL) [OMG, 2006b]
– UML is not capable of modelling every kind of constraint
– Extension of the UML diagrams to formally describe constraints
– No support for spatial data types and operations
Example OCL constraint
– Based on LADM Core Elements
OCL invariant:
context RegisterObject
inv SumOfShares:
self.RRR.share->sum()=1 or self.RRR->size()=0
Written constraint:
the sum of all shares
of a certain right (RRR)
on a specific RegisterObject should be 1
Rights, Responsibilities
and Restrictions
Introduction
Master of Science Thesis Presentation618.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Model Driven Architecture
Model Driven Architecture [OMG, 2003]
– Generate information systems (semi) automatically
– Based on platform independent models
Input: Platform Independent Model (PIM)
– The LADM Survey Package UML Class Diagram (+ OCL)
– Independent of implementation technology (e.g. PostGIS)
E.g. classes, attributes, associations
Output: Platform Specific Models (PSM)
– The LADM 'Survey Package' PostgreSQL/PostGIS database
– Specific for target platform (i.e. PostGIS)
E.g. tables, columns, primary key and check constraints, views, triggers
Introduction
Master of Science Thesis Presentation718.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Kadaster Project "Registration Map Quality"
Case Study: Project "Registration Map Quality"
– NL: "Registratie Kaart Kwaliteit"
– Survey Measurements
Differences between:
– Measured coordinates of parcels & buildings
– Adjusted (Transferred) coordinates of parcels & buildings to fit in the cadastral map (with existing objects)
Survey Measurements from Kadaster
– April 2006 - December 2007
– Analysis of Quality / Accuracy of Cadastral Map
Graphical Precision: difference = max. 20 cm in urban area and 40 cm in rural area
Introduction
Master of Science Thesis Presentation818.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
MSc Thesis ProjectObjectives and Research Question
Objectives
– Investigate the possibilities and limitations of the Model Driven Architecture (MDA) approach
– Establish an extension of the Land Administration Domain Model (LADM) with regard to its Survey Package
Research Question
How can the Land Administration Domain Model 'Survey Package'
be implemented and deployed based on Model Driven Architecture principles, and
how can the Land Administration Domain Model 'Survey Package'
be extended and improved?
Introduction
Master of Science Thesis Presentation918.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
MSc Thesis ProjectSub-topics
Evaluation of LADM 'Survey Package'
– Literature research
Evaluation of Model Driven Architecture
– Literature research & MDA Prototype experiments
Evaluation of constraints in data modelling
– Literature research and MDA Prototype experiments
Case Study
– Literature research and analysis of processes, tools and data for survey measurements
Create MDA Prototype to implement Adapted LADM 'Survey Package'
– MDA Prototype experimentsCompliance with MDA concepts
Degree of automatic MDA transformations
Standard support and required custom development by MDA tool (i.e. EA)
Introduction
Master of Science Thesis Presentation1018.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Introduction - Summary
Prepare an Platform Independent Model (PIM)
– Adapted LADM 'Survey Package'
Build a MDA Prototype
– To Transform PIM into Platform Specific Model (PSM)
– Target PSM = PostGIS
– Based on Enterprise Architect (EA)
Create PostGIS database
– Generate DDL scripts to automatically create database
Load Kadaster data
– Analyse survey measurements -> quality/accuracy cadastral map
Next: Research Topics
Introduction
Research Topics
Master of Science Thesis Presentation1118.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
DETAILS on RESEARCH TOPICS
LADM Survey Package
– Adapted LADM Survey Package
Model Driven Architecture
– Process
Constraints in Data Modelling
– Object Constraint Language (OCL)
– Implementation examples
Research Topics
Master of Science Thesis Presentation1218.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
LADM ‘Survey Package’
Recommendations for extension
– Minor errors reported
– Preliminary recommendations, e.g. SurveyProject
Publications relevant for extension
– Observations and Measurements [Open Geospatial Consortium, 2006b]
– Survey Record Management System [Lee, 2005]
Adapted LADM ‘Survey Package’
– To serve as input PIM for MDA prototype
– To be able to contain the Survey Measurement data (Kadaster)
Research Topics
Master of Science Thesis Presentation1318.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Research Topics
Adapted LADM 'Survey Package'PIM / UML class diagram
SurveyProject
SurveyDocument
SurveyPoint
Master of Science Thesis Presentation1418.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Research Topics
Platform Independent Model
(PIM)
Adapted LADM 'Survey Package'
PostGIS:
•geometry
•POINT
•POLYGON
•Etc.
Platform Specific data types and operations
Platform Specific Model
(PSM)
Target platform PostgreSQL/PostGISPlatform Specific implementation code (e.g. DDL & DML)
Platform Independent data types and operations
MDA Transformation Rules:
•Class to Table
•Generate Primary Key
•Enumeration Class
•Etc.
Platform Specific Transformation Specification
ISO19107:
•GM_Point
•GM_Polygon
•Etc.
Model Driven Architecture Process
Master of Science Thesis Presentation1518.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Object Constraint Language Implementation example (1)
Simple constraint for multiple attributes
"startDate" must be before "endDate"
OCL invariant for multiple attribute:
context SurveyProject
inv startDateBeforeEndDate:
self.startDate < self.endDate
Implemented as table check constraint
Table survey_project CHECK ( start_date < end_date )
Research Topics
Master of Science Thesis Presentation1618.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Research Topics
Object Constraint Language Implementation example (2)
Complex constraint for multiple classes
Sum of "share" must be equal to 1
(Not in thesis report -> FIG WW Stockholm)OCL invariant for multiple classes:
context RegisterObject
inv SumOfShares:
self.RRR.share->sum()=1 or self.RRR->size()=0
Implemented as OCL View used in database trigger(s)
create view v_ocl_sum_of_shares as
select self.oid
from register_object self
, right_responsibility_restriction rrr
where self.oid = rrr.register_object.oid
having sum(rrr.share) = 1
OCL View: returns records that violate the
OCL invariant
Master of Science Thesis Presentation1718.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Research Topics - Summary
Adapted LADM 'Survey Package' defined (PIM)
MDA process from PIM to PSM
– Platform Specific Transformation Rules
Set of MDA transformation rules, one for each PIM element
Constraint (OCL) implementation examples
Next: MDA Prototype
Research Topics
MDA Prototype
Master of Science Thesis Presentation1818.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
MDA PROTOTYPE
MDA Prototype Setup
– Based on Enterprise Architect [Sparx Systems, 2007]
– Transformations from PIM to PSM
Result: Platform Specific Model
– For Adapted LADM 'Survey Package'
Analysis of Quality of Dutch Cadastral Map
MDA Prototype
Master of Science Thesis Presentation1918.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
C# Windows Forms
– 5800 lines of source code
– 90% custom developed
– demonstration
MDA Prototype Setup
MDA Prototype
Master of Science Thesis Presentation2018.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Transformations from PIM to PSMMDA Prototype Functionality
First Transformation from PIM to PSM-1
– Transformation of PIM elements (UML class diagram)
– based on EA functionality: Transformation Definitions
Second Transformation from PSM-1 to PSM-2
– Fine-tuning of PSM elements (UML class diagram)
– based on MDA Prototype in C# / .NET (EA SDK)
Third Transformation from PIM OCL to PSM-2
– Initial experiments with OCL invariants
– based on MDA Prototype in C# / .NET (EA SDK)
Generate database creation scripts
– E.g. Tables, Geometry Columns, Primary, Unique and Foreign Key constraints, Check constraints, Indexes, Views
MDA Prototype
Master of Science Thesis Presentation2118.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Research Topics
Model Driven ArchitectureTransformation Rules
Object Oriented UML (PIM)
– Class
– Attribute
– PIM data type
GM_Point (ISO19107)
GM_Polygon (ISO19107)
– Association
– Super & Sub Class
Flattening of class hierarchy branch
– Enumeration Class
– CodeList Class
– Attribute with [0..*] bounds
Relational DBMS (PSM)
– Table + Primary Key constraint
– Column
– PSM data type
POINT (PostGIS)
POLYGON (PostGIS)
– Foreign Key Constraint
– One Table
Inherited columns for super class attributes
– Check constraint
– 'Look-up' table
– Child table with foreign key
MDA Transformation Rule for each PIM element
Master of Science Thesis Presentation2218.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
MDA Prototype
Example MDA Transformation Rule: 1) Column Data type
– PIM: String GM_Point GM_MultiSurface
– PSM: varchar(100) POINT MULTIPOLYGON
PIM
PSM: PostGIS
Master of Science Thesis Presentation2318.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Example MDA Transformation Rule: 2) Transformation of Super and Sub Classes
Super class SourceDocument
– Inherited by table legal_document and survey_document
Super class SourceDocument
PIM PSM: PostGIS
MDA Prototype
Sub class LegalDocument
Sub class SourceDocumen
t
Master of Science Thesis Presentation2418.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
MDA Prototype
Example MDA Transformation Rule: 3) Transformation of <<enumeration>> class
Enumeration class SurveyPointQuality
– Implemented as check constraint check_survey_point_quality
PIM PSM: PostGIS
Master of Science Thesis Presentation2518.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
MDA Prototype
Result: Platform Specific Model (PSM) Adapted LADM 'Survey Package' in PostGIS
Platform Independent Model (PIM)Platform Specific Model: PostGIS
Master of Science Thesis Presentation2618.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
The Netherlands (April 2006 - Dec. 2007)
Connection Points
– Of existing objects
– Measured Coordinate
– Transferred Coordinate
– Used for analysis of quality/accuracy of cadastral map
MDA Prototype
Difference between measured and transferred coordinate
• Max 20 cm in Urban area
• Max. 40 cm in Rural area
Population of PostGIS Survey Measurements
Master of Science Thesis Presentation2718.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Analysis of provided dataCadastral Office
National level 20 cm
MDA Prototype
Difference between measured and transferred coordinate
• Max 20 cm in Urban area
• Max. 40 cm in Rural area
Master of Science Thesis Presentation2818.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Analysis of provided dataCadastral Section
Outside Kadaster Norm
– Less than 95% of measurements within resp. 20 and 40 cm
MDA Prototype
Master of Science Thesis Presentation2918.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
MDA Prototype - Summary
Custom developed MDA prototype (C#)
Based on possibilities Enterprise Architect
Based on specified MDA transformation rules
Automatically generates PSM from PIM
Automatically generates DDL creation scripts
Analysis of cadastral map accuracy performed
Next: Demonstration MDA Prototype
Next: Conclusion
MDA Prototype
Conclusion
Master of Science Thesis Presentation3018.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Demonstration MDA Prototype
From PIM to PostGIS (database create scripts)
SurveyProject, SurveyDocument & SurveyPoint
MDA Prototype
Master of Science Thesis Presentation3118.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Conclusions
Research objective reviewed
Conclusions on MSc thesis project
Recommendations for Future
Conclusion
Master of Science Thesis Presentation3218.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Research objective reviewed
Focus on Model Driven Architecture
– "to gain experience with Model Driven Architecture (MDA) by performing a literature study, and by creating a prototype of the (adapted) LADM Survey Package, based on MDA principles".
Performed partially
– the analysis of the quality / accuracy of cadastral map
differences between measured and transferred coordinates of connection points
– the involvement of OCL constraints in the MDA prototype
Limited amount of experiments
– the extension and improvement of the LADM 'Survey Package'
Conclusion
Master of Science Thesis Presentation3318.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Conclusions (1)
MDA Prototype Automatically transforms PIM to PSM
– PIM -> PSM -> PostGIS
– complaint with MDA concept [OMG, 2003]
– Based on Enterprise Architect
Solution for difference between O-O (PIM) and relational DBMS (PSM)
– Based on Platform specific transformation specification
MDA transformation rules
– Considerable custom development required
Conclusion
Master of Science Thesis Presentation3418.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Conclusions (2)
Transform and implement Geometric data types and operations
– Transforming geometric data types
e.g. GM_Point, GM_LineString, GM_Polygon
– No Topology -> future research
Constraints assessed and classified for implementation
– Object Constraint Language (OCL)
extension of UML -> constraints that cannot be recorded in UML.
– Implementation by row and statement level triggers
– Custom development of a "transaction management mechanism" required
Conclusion
Master of Science Thesis Presentation3518.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Conclusions (3)
Analysis of quality of the cadastral map at different levels
– required "graphical precision" (20/40 cm) is obtained at level of Cadastral Offices
– individual cases exist at cadastral section level need analysis
Conclusion
Master of Science Thesis Presentation3618.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Recommendations (1)
Improve the standard MDA transformations in Enterprise Architect
– Support more complex MDA transformation rules by EA
Not only the EA Software Developers Kit (~ custom development)
– Support OCL
Enhance the current MDA Prototype
– Aimed at changes to existing target databases
– Support additional MDA transformation rules
Conclusion
Master of Science Thesis Presentation3718.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Recommendations (2)
Build MDA Transformation Tool based on XMI
– Independent of commercially available tool
– Based on XMI (input/output) [OMG, 2005]
– Variation of MDA transformation rules for UML and OCL
Further research into combination of MDA, OCL, Geometry, and Topology
– Other geometric data types and operations
– Topological data types, structures and operations
Conclusion
Master of Science Thesis Presentation3818.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Recommendations (3)
Extend the OCL with spatial definitions
– Spatial data types and operations
– Platform independent level: e.g. ISO19107
– Platform specific level: e.g. ISO/IEC 13249 SQL/MM
Extend the LADM 'Survey Package'
– Resolution of errors and improvements (from MSc thesis report)
– Publications on survey measurement related areas [Ingvarsson, 2005, Lee, 2005, Open Geospatial Consortium, 2006b].
Conclusion
Master of Science Thesis Presentation3918.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Recommendations (4)
Further analysis of quality of the Cadastral Map
– Outliers in the data
– Which sections are Urban and which are Rural?
– Cadastral Sections with less than 95% within 40 cm range
Implement improvements with regard to Survey Measurement Handling
– Currently based on different and separated applications
– Not all data is preserved (digitally and centrally)
– Recommended: Permanent storage in an integrated structured database with constraint validation and handling
– Possible result: improving the (less accurate) cadastral map with (more accurate) measurements in stead of the reverse
Conclusion
Master of Science Thesis Presentation4018.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Sources
MSc Thesis & MDA Prototype source
– http://www.rgi-otb.nl/geoinfoned/mda
– http://www.janvanbennekom.nl/mscthesis.html
FIG Working Week 2008, Stockholm
– The Model Driven Architecture Approach Applied to the Land Administration Domain Model Version 1.1 - with Focus on Constraints Specified in the Object Constraint Language
– http://www.fig.net/pub/fig2008/papers/ts01e/ts01e_01_hespanha_etal_2962.pdf
Future articles
– Currently planning sub-sequent article MDA/OCL
Conclusion
Master of Science Thesis Presentation4118.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Discussion
Thank you for your attention
Next: Discussion
Introduction
Conclusion
MDA Prototype
Research Topics
Master of Science Thesis Presentation4218.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
BACKUP
Master of Science Thesis Presentation4318.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
OCL Example (1)
Constraint for one attribute
"name" must be in uppercase
OCL invariant for attribute:
context CadastralMunicipality
inv nameUppercase: self.name = self.name.toUpper()
Implemented as table check constraint
Table cadastral_municipality CHECK ( name = upper(name) )
Research Topics
Master of Science Thesis Presentation4418.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Research Topics
Implementation of ConstraintsRow, Statement, Transaction level
Example Transaction
– Group of insert, update, delete statements
– SurveyProject, SurveyDocument, SurveyPoint
Transaction Create survey documents with survey points
Statement 1 Create survey project
Statement 6 Update survey points
Statement 2 Create survey document
INSERT INTO survey_project (oid, survey_project_type, surveyor, start_date) VALUES (80430, ‘collection’, ‘Van de Wetering’, now() );
INSERT INTO survey_document (oid, survey_project_oid, survey_date) VALUES (51122, 80430, now() );
Statement 3 Create survey pointINSERT INTO survey_point (oid, source_oid, location_measured) VALUES (1234, 51122, ST_PointFromText(POINT(100874.278 428888.75), 28992) ) );
Statement 4 Create survey point
Statement 5 Create survey point
INSERT INTO survey_point (oid, source_oid, location_measured) VALUES (1235, 51122, ST_PointFromText(POINT(100881.217 428902.95), 28992) ) );
INSERT INTO survey_point (oid, source_oid, location_measured) VALUES (1236, 51122, ST_PointFromText(POINT(100897.223 428888.322), 28992) ) );
UPDATE survey_point set point_number = 1 where oid = 1234;
UPDATE survey_point set point_number = 1 where oid = 1235;
UPDATE survey_point set point_number = 3 where oid = 1236;
Commit Transaction
row level trigger
row level trigger
row level trigger
row level trigger
row level triggerrow level triggerrow level trigger
statement level trigger
statement level trigger
statement level trigger
statement level trigger
statement level trigger
statement level trigger
row level trigger
Master of Science Thesis Presentation4518.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Research Topics
1st phase free network adjustment
Various measurements of one (1) point
Local and/or Dutch RijksDriehoek spatial reference system
Create one (1) Measured coordinate
Input 2nd phase adjustment
Master of Science Thesis Presentation4618.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Research Topics
2nd phase control point constraint network adjustment
Convert measured coordinate to fit into the cadastral map
Result: Transferred coordinate
– In cadastral map
Master of Science Thesis Presentation4718.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
MDA Prototype
Example MDA Transformation Rule: 2) Column Cardinality
Column errors of type ProjectMessage
– With cardinality [0..*]
– Implemented as child table errors_survey_project
PIMPSM: PostGIS
Master of Science Thesis Presentation4818.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
MDA Prototype
MDA Prototype SetupEnterprise Architect
Based on Enterprise Architect
EA = UML modelling tool
– PIM: Adapted LADM 'Survey Package'
– PSM: e.g. PostgreSQL/PostGIS
OCL support is limited in EA
– Limited validation / no transformation & implementation
EA supports MDA transformation
– EA Transformation Definitions
– EA Software Developers Kit
– Aimed at custom development
Master of Science Thesis Presentation4918.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
MDA Prototype
Example MDA Transformation Rule: 5) Transformation of <<CodeList>> class
CodeList class SurveyDocumentType
– Implemented as look-up table codelist_surveydocumenttype
PIM
PSM: PostGIS
Master of Science Thesis Presentation5018.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Implementation of Constraints
SQL sub select in base table check constraint
ALTER TABLE survey_document
ADD CONSTRAINT amount_of_survey_points CHECK
(not exists (select count(spt.source_oid)
from survey_point spt
where oid = spt.source_oid
having not (count(spt.source_oid) = 0
or count(spt.source_oid) > 2) ) );
SQL standard [ISO/IEC, 2003]
– Assertions
– Sub selects in base table check constraints
– Suitable, but not possible/available
SQL Assertion
create assertion amount_of_survey_points
Check (not exists
(select * from v_ocl_amount_of_survey_points));
Research Topics
Master of Science Thesis Presentation5118.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
MDA Prototype
Open Source Tools
PostgreSQL / PostGIS database
– http://www.postgresql.org & http://postgis.refractions.net
uDig: visualisation of the geographic information
– http://udig.refractions.net/
7.5 million records provided by Kadaster
Master of Science Thesis Presentation5218.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Research Topics
Kadaster Project "Registration Map Quality"
Handling of Survey Measurements
1st phase free network adjustment
– Input: various survey measurements of one point
– Output: one Measured Coordinate
2nd phase control point constraint network adjustment
– Input: Measured Coordinate
– Output: Transferred Coordinates for Parcels and buildings on cadastral map
Survey Measurements are "fitted in" the cadastral map
Master of Science Thesis Presentation5318.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Research Topics
Quality of cadastral map
Difference Measured and Transferred Coordinate
– i.e. before and after 2nd phase adjustments
– Graphical Precision: max. 20 cm in urban & 40 cm in rural area
– Kadaster Norm: Graphical Precision: valid for 95% of survey measurements
Master of Science Thesis Presentation5418.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Analysis of provided dataCadastral Municipality
Difference between measured and transferred coordinate
•Max 20 cm. in Urban area
•Max. 40 cm. in Rural area
MDA Prototype
Master of Science Thesis Presentation5518.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Constraints in Data modellingImplementation possibilities in target PSM
RDBMS standard provided functionality, e.g.:
mandatory columns (i.e NOT NULL)
primary key constraint
unique key constraint
foreign key constraint
Base table Check constraints
Research Topics
Master of Science Thesis Presentation5618.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Constraints in Data modellingImplementation possibilities in target PSM
Alternative: Table triggers using OCL Views
– Row level; firing for each record
– Statement level; firing for a group of records for one table
– Some (more complex) constraints require triggers at Transaction Level
For example: the "SumOfShares" constraint
SQL standard
– SQL assertion
– Sub-select statements in check-constraints
Transaction Management Mechanism
– Handling records for multiple tables
– Requires a custom development
Research Topics
Not available
Master of Science Thesis Presentation5718.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
MDA Prototype
C# Windows Forms
– 5800 lines of source code
– 90% custom developed
Input:
– Platform
Independent Model
Output: PSM
– Platform
Specific ModelPIM
PSM
MDA Prototype Setup
Adapted LADM 'Survey Package'
Target platform PostgreSQL/PostGIS
Master of Science Thesis Presentation5818.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Population of PostGISParcels and Buildings
Province of Utrecht
MDA Prototype
Master of Science Thesis Presentation5918.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion
Population of PostGISCadastral Office, Municipalities, Sections
The Netherlands
MDA Prototype
Municipality Houten
Section K
Master of Science Thesis Presentation6018.06.08 The Land Aministration Domain Model 'Survey Package' and Model Driven Architecture
#
Research Topics
Introduction
MDA Prototype
Conclusion