1 / 47

Geographical Data Modeling UML and Data Modeling Elements Examples from the Marine Data Model and ArcHydro (Thanks to D

Geographical Data Modeling UML and Data Modeling Elements Examples from the Marine Data Model and ArcHydro (Thanks to Dawn Wright). Longley et al., ch. 8. Models for GIS. representation of reality --> model GIS itself is based on a model of complexity and used to model complexity

kynan
Download Presentation

Geographical Data Modeling UML and Data Modeling Elements Examples from the Marine Data Model and ArcHydro (Thanks to D

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Geographical Data ModelingUML and Data Modeling ElementsExamples from the Marine Data Model and ArcHydro (Thanks to Dawn Wright) Longley et al., ch. 8

  2. Models for GIS • representation of reality --> model • GIS itself is based on a model of complexity and used to model complexity • Not a full representation of reality: even at 1:1 • data model = limited representation of reality • a discretization or partitioning of space • finite, discrete nature of computing devices

  3. Data Model • Representation of information about a form or a process • E.g. a weather map with isotherms • FIELD … “grid” • OBJECT … “isoline” • A good model allows us to infer process • FIELD or OBJECT … “geo-relational”

  4. 3 Data Models • geo-relational coverage (object view; from classic ArcInfo polys) • geo-relational shapefile (object view; from ArcView) • geodatabase (object-oriented; new in ArcGIS 8,9 etc.)

  5. Object Oriented GIS (p. 191) • Object: a self-contained package of information describing an entity • Collection of objects – class • Objects can have behavior – encapsulation • Inheritance – reusable objects • Polymorphism-objects can have their own implementation for application-e.g. create, draw, delete

  6. A B Georelational Data Model:“Classic” ArcInfo and ArcView Arc Info command line interface Unix, NT, Windows ArcView as interface

  7. ArcInfo Coverage as a Data Structure Image courtesy of Louisville/Jefferson County Information Consortium, Kentucky

  8. Data Structure • Not tied to process at all • Concerned simply with what can be computed and what can’t • Way in which the data model is representedin the GIS • DEM for grid or layer model (e.g. array) • contour for isoline model • TIN for Delaunay triangulation model • coverages, shapefiles for geo-relational • geodatabase for OO geodatabase

  9. yellow coverage green shapefile gray geodatabase ArcGIS 9 Icons

  10. Geodatabase • Features and attributes as objects • Relationships among features encoded • Validation or editing rules, behaviors • “Container” for • Vector, raster, tabular data • Relationships • Topology MS-Office

  11. Relationships for a feature

  12. ArcGIS Data Modelssupport.esri.com/datamodels.cfm

  13. ArcMarine dusk.geo.orst.edu/djl/arcgis

  14. Data Modeling for Spatial Analysis • What is spatial analysis? • "a set of methods whose results change when the locations of the objects being analyzed change" • Methods for working with spatial data • to detect patterns, anomalies • to find answers to questions • to test or confirm theories • deductive reasoning-general to specific • to generate new theories and generalizations • inductive reasoning-specific to general

  15. What is Spatial Analysis (cont.) • Methods for adding value to data • in doing scientific research • in trying to convince others • A collaboration between human and machine • How do we set up the framework for spatial analysis? • Data model to data structure

  16. A Georelational to a Geodatabase Model • Coverage and shapefile data structures • homogenous collections of points, lines, and polygons with generic, 1- and 2-dimensional "behavior" as operations • Can’t distinguish behaviors • Point for a marker buoy, same as point for observation • “smart features” in a geodatabase • lighthouse must be on land, marine mammal siting must be in ocean • Objects can “self-police”

  17. Purpose of ArcHydro, ArcMarine etc. • Basic template for implementing GIS projects • input, formatting, geoprocessing, creating maps, performing analyses • Basic framework for writing program code and maintaining applications • development of tools for the community • Promote networking and data sharing through established standards • common model=interoperability

  18. Project Data Model Project Data Model Project Data Model ArcMarine Design Strategy “Generic” MarineData Model Inheritance User Group Data Model User Group Data Model User Group Data Model

  19. Geodatabase Concepts • ESRI's data object-oriented data model • objects, features, behaviors • Geodatabase • collection of feature data sets, rasters, TINs • all data in relational tables • behavior is coupled with features through rules (object-orientation) • Supports model-builder for processes • Feature data set • contains feature classes • defines topological role of features • has a coordinate system

  20. Geodatabase Concepts ( cont. ) • Feature class • stored in a relational table • special field for geometric shape • geometric data incorporated into the database • Point, multipoint, segment, path, ring, polyline, polygon

  21. Geodatabase Feature Class Geometries

  22. Modeling Process Conceptual Model Lists, flow diagrams, etc Real World Objects and relationships Logical Model Diagram in CASE Tool Physical Model Database Schema (Object state) Graphic courtesy of ESRI

  23. Data Model Levels Reality Human-oriented Conceptual Model Increasing Abstraction Logical Model Computer-oriented Physical Model

  24. Specific Steps in Data Modeling (1) Conceptualize the user's view of data • what are the basic features needed to solve the problem? (2) Select the geographic representation • points, lines, areas, rasters, TINs (3) Define objects, features, and relationships • draw a UML diagram, specify relationships, “behaviors” (4) Match to geodatabase elements • Refine relationships, “behaviors” (5) Organize geodatabase structure, add data

  25. ( 1 ) User’s View of Data

  26. ( 1 ) User’s View of Data cont.

  27. (2)Select geographic rep.

  28. Steps in Data Modeling (1) Conceptualize the user's view of data • what are the basic features needed to solve the problem? (2) Select the geographic representation • points, lines, areas, rasters, TINs (3) Define objects and relationships • draw a UML diagram, specify relationships, “behaviors” (4) Match to geodatabase elements • Refine relationships, “behaviors” (5) Organize geodatabase structure, add data

  29. Unified Modeling Language • Design the methodologies, diagram notations • UML • Not a design methodology • Just a diagrammatic notation based on methods • Endorsed by leading software and database companies • Entity-relationship diagrams

  30. UML ( cont. ) • Diagrammatic notation = “visual language”... • For constructing a data model • Drawings, relationships constructed in Visio (other tools available) • Tools to input a drawing into ArcGIS • input drawing to the data model

  31. UML Notation • a class is shown as a box • top part contains the name of the class • lower part contains the attributes • methods associated with the class • lines connect boxes and indicate relationships

  32. Graphic courtesy of Maidment et al., ArcHydro team

  33. UML Notation ( cont. ) • Abstract class • specify subclasses underneath • Mammals w/human or dog feature classes • no new instances • Feature Class • Specify subtypes underneath • Human, dog, cat

  34. Objects and Features • Object (real world) • in ArcGIS an object is non-spatial • it is NOT a point, line, or area • it has no geographic location • it has no shape attribute in its table • Drainage network, ship, vehicle, … customer, lake, house, etc. • Feature (spatial context) • an object that has geographic location • a point, line, area, TIN, raster

  35. Relationships • Links between classes, shown as lines • One to one • One to many • Many to many

  36. Relationships (cont.) • 1:1 - solid line • one record in Class A linked to one record in Class B • “is married to” • the class of state capitals linked to the class of states • 1:n - solid line with * at one end • one record in Class A linked to any number of records in Class B • "owns" • the class of states linked to the class of area codes

  37. Relationships (cont.) • m:n - solid line with * at both ends • any number of records in Class A linked to any number of records in Class B • "has visited” • "was never married to" • the class of mountain lions linked to the class of wilderness areas

  38. Graphic courtesy of Maidment et al., ArcHydro team

  39. Type Inheritance • White triangle • Class B inherits the properties (attributes, methods) of Class A • the class street inherits from the class transportation network • Solid diamond • the parts and the whole depend on each other

  40. Graphic courtesy of Maidment et al., ArcHydro team

  41. Steps in Data Modeling (1) Conceptualize the user's view of data • what are the basic features needed to solve the problem? (2) Select the geographic representation • points, lines, areas, rasters, TINs (3) Define objects and relationships • draw a UML diagram, specify relationships, “behaviors” (4) Match to geodatabase elements • Refine relationships, “behaviors” (5) Organize geodatabase structure, add data

  42. Steps in Data Modeling (1) Conceptualize the user's view of data • what are the basic features needed to solve the problem? (2) Select the geographic representation • points, lines, areas, rasters, TINs (3) Define objects and relationships • draw a UML diagram, specify relationships, “behaviors” (4) Match to geodatabase elements • Refine relationships, “behaviors” (5) Organize geodatabase structure, add data • e.g., Marine Data Model tutorial

More Related