GeoUML a conceptual data model for geographical data conformant to ISO TC 211 Main GeoUML constructs Alberto BelussiNovembre 2004.

Slides:



Advertisements
Similar presentations
Three-Step Database Design
Advertisements

ISO19107 Geographic information – Spatial schema Pusan National University Dept. of Computer Engineering Spatiotemporal Database Lab. Joon-Seok Kim
Architecture Representation
Database Systems: Design, Implementation, and Management Tenth Edition
Chapter 3: The Enhanced E-R Model
CS 599 – Spatial and Temporal Databases Realm based Spatial data types: The Rose Algebra Ralf Hartmut Guting Markus Schneider.
Lecturer: Sebastian Coope Ashton Building, Room G.18 COMP 201 web-page: Lecture.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 3 The Basic (Flat) Relational Model.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 8 The Enhanced Entity- Relationship (EER) Model.
Advanced Topics COMP163: Database Management Systems University of the Pacific December 9, 2008.
Geographic Information Systems
Introduction to Databases Transparencies
Complex Model Construction Mortenson Chapter 11 Geometric Modeling
Chapter 41 Enhanced Entity-Relationship and Object Modeling.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 8 The Enhanced Entity- Relationship (EER) Model.
Modeling and representation 1 – comparative review and polygon mesh models 2.1 Introduction 2.2 Polygonal representation of three-dimensional objects 2.3.
1 CIM User Group Conference Call december 8th 2005 Using UN/CEFACT Core Component methodology for EIC/TC 57 works and CIM Jean-Luc SANSON Electrical Network.
Information storage: Introduction of database 10/7/2004 Xiangming Mu.
SEG4110 – Advanced Software Design and Reengineering
Spatial Database Souhad Daraghma.
National Survey and Cadastre – Denmark Conceptual Modeling of Geographic Databases - Emphasis on Relationships among Geographic Databases Anders Friis-Christensen.
GIS 1110 Designing Geodatabases. Representation Q. How will we model our real world data? A. Typically: Features Continuous Surfaces and Imagery Map Graphics.
Database Systems: Design, Implementation, and Management Ninth Edition
Database Processing: Fundamentals, Design and Implementation, 9/e by David M. KroenkeChapter 2/1 Copyright © 2004 Please……. No Food Or Drink in the class.
Applied Cartography and Introduction to GIS GEOG 2017 EL Lecture-2 Chapters 3 and 4.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
6. Simple Features Specification Background information UML overview Simple features geometry.
EuroRoadS for JRC Workshop Lars Wikström, Triona Editor of EuroRoadS deliverables D6.3, D6.6, D6.7.
ET-ADRS-1, April ISO 191xx series of geographic information standards.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented Design.
Mapping the IntesaGIS model to the EuroRoads model Alberto Belussi Università di Verona Giuseppe Pelagatti, Mauro Negri Politecnico di Milano ESDI Workshop.
UML Class Diagram Trisha Cummings. What we will be covering What is a Class Diagram? Essential Elements of a UML Class Diagram UML Packages Logical Distribution.
Rupa Tiwari, CSci5980 Fall  Course Material Classification  GIS Encyclopedia Articles  Classification Diagram  Course – Encyclopedia Mapping.
U.S. Department of the Interior U.S. Geological Survey A Consideration of Geospatial Feature Formation in Linked Open Vocabularies Workshop on Linked Open.
© D. Wong Ch. 2 Entity-Relationship Data Model (continue)  Data models  Entity-Relationship diagrams  Design Principles  Modeling of constraints.
Tutorial 13 Validating Documents with Schemas
Week III  Recap from Last Week Review Classes Review Domain Model for EU-Bid & EU-Lease Aggregation Example (Reservation) Attribute Properties.
1 Class Diagrams. 2 Overview Class diagrams are the most commonly used diagrams in UML. Class diagrams are for visualizing, specifying and documenting.
Object-Oriented Analysis and Design CHAPTERS 9, 31: DOMAIN MODELS 1.
Chapter SETS DEFINITION OF SET METHODS FOR SPECIFYING SET SUBSETS VENN DIAGRAM SET IDENTITIES SET OPERATIONS.
ESDI Workshop on Conceptual Schema Languages and Tools
CSE314 Database Systems Lecture 3 The Relational Data Model and Relational Database Constraints Doç. Dr. Mehmet Göktürk src: Elmasri & Navanthe 6E Pearson.
UML and Object Modeling Elements
WIGOS Data model – standards introduction.
L1-Spatial Concepts NGEN06 & TEK230: Algorithms in Geographical Information Systems by: Irene Rangel, updated by Sadegh Jamali 1.
Chapter 5 System Modeling. What is System modeling? System modeling is the process of developing abstract models of a system, with each model presenting.
Analysis Yaodong Bi. Introduction to Analysis Purposes of Analysis – Resolve issues related to interference, concurrency, and conflicts among use cases.
UML Profile BY RAEF MOUSHEIMISH. Background Model is a description of system or part of a system using well- defined language. Model is a description.
Class Diagrams. Terms and Concepts A class diagram is a diagram that shows a set of classes, interfaces, and collaborations and their relationships.
OWL Web Ontology Language Summary IHan HSIAO (Sharon)
Presented by Kyumars Sheykh Esmaili Description Logics for Data Bases (DLHB,Chapter 16) Semantic Web Seminar.
Data Models. 2 The Importance of Data Models Data models –Relatively simple representations, usually graphical, of complex real-world data structures.
IT 5433 LM3 Relational Data Model. Learning Objectives: List the 5 properties of relations List the properties of a candidate key, primary key and foreign.
Geographic Information Systems GIS Data Databases.
Introduction to Spatial Computing CSE 555
UNIT-IV Designing Classes – Access Layer ‐ Object Storage ‐ Object Interoperability.
The Enhanced Entity- Relationship (EER) Model
Business System Development
DATA MODELS.
Physical Structure of GDB
Geographic Information Systems
Conceptual Modeling SIE 510 GIS Applications Spring 2017.
ece 720 intelligent web: ontology and beyond
Lec 3: Object-Oriented Data Modeling
Object-Oriented Knowledge Representation
Class Diagrams.
An Introduction to Software Architecture
Hierarchical Modeling & Constructive Solid Geometry
Geographic Information Systems
Presentation transcript:

GeoUML a conceptual data model for geographical data conformant to ISO TC 211 Main GeoUML constructs Alberto BelussiNovembre 2004

How does GeoUML conform to ISO standards TC 211? GeoUML is defined starting from ISO General Feature Model (19109) and from ISO Spatial Schema (19107) by applying the following approach: General Feature Model (GFM) in UML Spatial Schema in UML Subset of the ISO constructs (UML classes) Specialization of ISO constructs (UML classes + OCL) Constraints templates and schema templates (UML classes + OCL) Profiling Specializing GeoUML

Topological Constraints Overview of GeoUML Data Model GeoUML General Feature Model (GFM) in UML ISO TC 211 General Feature Model (GFM) in UML Geometric Classes in UML (GU_*) UML Classes (GM_*) Spatial Schema Relate Operators Reference Set of Topological Relations Structural Constraints “Segmented” Attribute Specialized constructs Layer

The General Feature Model (GFM) GFM contains the following constructs: Feature Type: “a feature type is an abstraction of real world phenomena” Attribute: thematic and spatial attributes Association between feature types Generalization and specialization of feature types Constraint Reality: phenomena Feature types and their properties + constraints DB SchemaDB Content Feature instances

The General Feature Model (GFM) Basic Rules for representing GFM in UML Feature Type: it becomes a UML class Attribute: a thematic attribute becomes a UML attribute a spatial attribute becomes a UML attribute with a spatial type (or an association to a spatial type) Association between feature types: it becomes a UML association Generalization and specialization of feature types: it becomes a UML inheritance hierarchy Constraint: it becomes a OCL (Object Constraint Language) constraint

GeoUML Specialization approach The formal definition of the GeoUML constructs follows a few general patterns: – geometric types: specializations of ISO geometric types, adding OCL constraints that restrict the population (objects belonging to the type extension); – structural constraints: logic formulas with parameters (constraint templates in OCL), that involve the Contains and the Complex association of GM_Complex; – topological constraints: constraint templates, involving the Relate functions defined on the root class GM_Object of the ISO spatial types hierarchy.

Other constructs of GeoUML Beyond geometric types, structural and topological constraints GeoUML contains the following additional constructs: – Structural layers – Enumerative domains – Hierarchical enumerative domains – Primay key constraints – Segmented and subregion attributes Moreover, a syntax for a textual representation of application schemas is provided.

GeoUML The choosen geometric types Geometric types of the Spatial Schema (ISO TC 211) GM_Object GM_PrimitiveGM_ComplexGM_Aggregate GM_PointGM_Curve GM_Surface GM_Composite GeoUML geo-types TP_Complex TP_Object TP_Primitive

Specialization of geometric types in GeoUML New types have been defined as specialization of the basic geometric types of the Spatial Schema (ISO 19107). In particular, these new types aim to represent: – homogeneous complexes: the new 2 types “ComplexCurve” and “ComplexSurface” are specializations of the ISO GM_Complex class; – geometric objects embedded in 2D or 3D spaces: they are a specialization of geometric classes for dealing with the existence of 2D and 3D geometric objects.

Specialization of geometric types in GeoUML (Complexes) Motivation of GM_Complex specialization: In the IntesaGIS project it was necessary to represent geometries having a shape of dimensionally homogeneous complexes. Homogeneous complexes are necessary to express topological relations on complexes, since they admit the definition of a general boundary function. In GeoUML three classes have been defined as specialization of the GM_Complex class of the Spatial Schema. GM_ComplexGU_CXCurve3D GU_CXCurve2D GU_CXSurface2D

GeoUML Specialization of geometric types - summary

GeoUML Predefined templates for integrity constraints specification GeoUML predefines two template for spatial integrity constraints: Templates for Structural Constraints Templates for Topological Constraints Spatial Integrity Constraints have been added to the model because the plain definition of the types of the geometric attributes does not sufficiently specify the spatial properties of the database.

Structural constraints of GeoUML Structural Constraints rely on the sharing of primitives among complexes (the sharing is based on the Contains association of the GM_Complex class having roles subComplex and superComplex, and on the Complex association). For example, the constraint “for each COUNTY there must exist a REGION which contains it” could be expressed as: “for each COUNTY C there must exist a REGION R such that Supercomplex(C)=R”.

Structural constraints of GeoUML - example APPLICATION REQUIREMENT A road network management system must be designed in which several different networks are defined; the networks can share some roads and can be integrated with some connecting paths which are not classified as roads. The spatial representation of each network is a collection of curves usually connected in a graph. The roads are described in terms of their centre lines which are all used in building the spatial representation of the related networks.

Structural constraints spatial relationship enforcing: each composite curve representing the geometry of a road belonging to a network in the RoadInNetwork association must also be associated, through the Contains association, to the complex representing the geometry of its network linear geometry restriction the instances of the class GM_Complex must be restricted to contain only 1-dimensional geometric objects. and 0-dimensional objects for their boundary. Pure ISO APPROACH

Structural constraints Pure ISO APPROACH + OCL formulas

+net +roads Structural constraints GeoUML APPROACH GU_CXCurve It is a specialization of the type GM_Complex that restricts the primitives to be only curves and points; BelongsTo spatial association between a contained class C 1 and a containing class C 2, it imposes to each road of the class Road related to a network of the class RoadNetwork that the geometry of the road (path) is a subcomplex of the geometry of the network (extension).

Structural constraints of GeoUML Template of the BELONGS TO constraint

Structural constraints of GeoUML Application of the BELONGS TO constraint Template

Specialization of geometric types in GeoUML (2D – 3D embedding space) GeoUML each GeoUML schema contains the definition of at least 2 objects of the class SC_CRS (Coordinate Reference System) of ISO “Spatial Referencing by coordinate”: one for 2D space (GU_CRS-2D) and one for 3D space (GU_CRS-3D). In GeoUML for each class imported from the Spatial Schema, two separate classes has been defined, one for each SC_CRS. GM_Complex GU_Complex3D GU_Complex2D self.CRS = GU_CRS-2D self.CRS = GU_CRS-3D OCL formulas

Specialization of geometric types in GeoUML (2D – 3D embedding space) GU_Object::planar( ): GU_Object  self.planar() = self.transform(GU_CRS-2D)  Since it is necessary to express relations between geometric objects embedded in 2D space and geometric objects embedded in 3D space, in each geometric type of GeoUML the method planar is defined. It produces the projection in 2D of the geometric object. OCL formulas

Topological constraints of GeoUML Why is it necessary to predefine a reference set of topological relations? very often spatial constraints in an application schema are based on topological relations ISO Spatial Schema proposes the “Relate” functions to define topological relations between geometric objects but they cannot be applied to generic complexes. OCL expressions using the “Relate” functions are complex and they may depend on the geometric classes of the objects participating to the constraint.

Topological relations of GeoUML GeoUML contains the set of topological relations defined by Clementini et. al. since: –this set contains a reduced number of relations, –these relations are very clear for the end user, since they represent spatial properties that can be found in any natural language –their definition does not depend on the geometric classes of the objects participating to the constraint. REL topo = { disjoint (DJ), touch (TC), in (IN), contains (CT), equal (EQ), cross (CR), overlap (OV) }

Given two geometric values A and B, for which we can compute the interior (A° e B°), the following topological relations can be defined: –(A Disjoint B)  def (A  B =  ) –(A Touch B)  def (A°  B° =  ) and (A  B   ) –(A In B)  def (A  B = A) and (A°  B°   ) and (A  B  B ) –(A Contains B)  def (B In A) –(A Equal B)  def (A  B = A) and (A  B = B) –(A Overlap B)  def (A°  B°   ) and (A  B  A) and (A  B  B) where  indicates the set intersection between two point sets. Other relations: (A Cross B)  def (A Overlap B) and (dim(A)=1) and (dim(B)=1) and (dim(A°  B°)= 0) (A Intersects B)  def (A  B   ) and not (A Equal B) Topological relations of GeoUML

Definition of the set REL topo using OCL + cRelate cRelate (a, b, M(a,b)): boolean M(a,b) = Problems: –cRelate can be appled to primities, composites and to homogeneous complexes, as stated explicitly in the standard documents, –the function boundary for the GM_Complex has not been defined in details by the standards, we introduced an explicit set of classes for representing homogeneous complexes and we gave the formal definition of boundary for these classes.

Topological relations of GeoUML

Topological constraints of GeoUML The basic idea of a topological constraint applied to a class C is to express the fact that: for each object c, instance of class C, there must exist an object d, instance of a class D, such that the topological relation R(c,d) is true for each object d, instance of a class D, For example, the constraint “for each PROVINCIA there must exist a REGIONE which contains it” could be expressed as “for each PROVINCIA P there must exist a REGIONE R such that CONTAINS(R,P)”

Topological constraints of GeoUML The variety of constraints is determined by: the set of topological relations different possibilities of selecting the objects of C and the objects of D the possibility to refer to geometric functions, like boundary and planar, in the expression of the relation (e.g. dam.planar in lake.boundary) the possibility to couple a constraint with an association between the classes that participate to the constraint the possibility of computing the union of the geometric objects of D before testing the relation the possibility of substituting the existential quantifier with a universal quantifier

Overview of GeoUML Topological Constraints - Example Railway Station Traffic Element Traffic Area Town

Example Overview of GeoUML Topological Constraints

Specialization of the geometric types of the Spatial Schema Structural constraints Definition of topological relations also for complexes (dimensionally homogeneous complexes) Topological constraints “Segmented” attributes and “Subregion” attributes Layers OVERVIEW OF GeoUML

Segmented Attributes GeoUML contains two kinds of predefined schemas for representing “segmented” attributes: structural segmented attributes: in this case the geometry of each homogeneous segment is explicitly generated; homogeneous segments are segments with the same value with respect to the segmented attributes of the class that we choose to represent together; dinamic segmented attributes: in this case, in the class where the attribute is defined, a linear reference system is generated and the values of the segmented attributes can be defined on this linear reference system by means of linear or point events.

Segmented Attributes Structural segmented attributes:

Segmented Attributes Dinamic segmented attributes:

GM_Primitive GM_CurveGM_PointGM_Surface Primitives are geometric objects representing OPEN connected pointsets. GM_Primitive is the parent node of three classes: GM_Point, GM_Curve and GM_Surface.

GM_Composite GM_CompositeCurve GM_CompositeSurface Composite objects are set of primitives representing a primitive decomposed in its components (structure). They represent CLOSE connected pointsets. They are always dimensionally homogeneous.

GM_Complex Complex objects are set of primitives satisfying the following spatial constraints: a.the primitives belonging to a complex are disjoint b.if a primitive belongs to the complex also its boundary belongs to the complex They allow the sharing of geometry.

GM_Aggregate Aggregate objects are sets of primitives with no constraints. dimensionally homogeneous non dimensionally homogeneous

Homogeneous Complexes GU_CXCurve2D GU_CXSurface2D GM_Complex GM_CompositeCurve GU_CXCurve2D