GeoDatabases Presented by Reza Wahadj University of California , San Diego (UCSD) Spatial Types – OGC Simple Features Geometry Point SpatialReferenceSystem Curve Surface LineString Polygon Line LinearRing Composed Type Relationship GeometryCollection MultiSurface MultiCurve MultiPolygon MultiLineString MultiPoint Overview The Geodatabase Data Model Designing and Building Geodatabases Editing, Long Transactions and Versioning Integration ArcCatalog / ArcMap / Custom Application GeoDataObjects SDE Geodatabase (JET Engine) Geodatabase (ORACLE) SDE for Coverages ArcStorm MapLibrary Shapefiles Grids TINs Coverages Images The ArcInfo 8 Geodatabase A new object oriented geographic data model all relational data storage using ArcSDE Versioning and long transactions Data Access Objects for application software developers Component based technology (COM) Elements of a Geodatabase Geometric Network Feature Dataset Relationship Class Feature Class Annotation Class Object Class The Geodatabase Data Model Elements of a Geodatabase Objects , Object Classes Features , Feature Classes Feature Datasets Validation Rules, Domains Relationships , Relationship Classes Spatial References Geometric Networks The Geodatabase Data Model Objects and Object Classes An object is an instance of an object class All objects in an object class have the same properties and behavior An object can be related to other objects via relationships The Geodatabase Data Model Object view Relational view Attribute Column, Field Object Row Object class Table Feature Row with geometry column Feature class Table with geometry column Relationship Row with two foreign keys Relationship class Table with two foreign key columns Network Tables linking elements to features The Geodatabase Data Model Features Spatial object Location • Attribute of type Geometry Spatial relationships Instance of a feature class The Geodatabase Data Model Feature Classes Same type of geometry Same type of spatial reference system Store spatial objects (features) The Geodatabase Data Model Feature Datasets Container Same spatial reference Analogous to a coverage The Geodatabase Data Model Object and Feature Behavior End users and data modelers can : • Instantiate classes with predefined behavior • Control the default value and acceptable values for any attribute in a class (domains) • Partition the objects in a class into like groups (subtypes) • Control the general and network relationships in which an object can participate Rule based, no programming required The Geodatabase Data Model Controlling and Specifying Object Behavior Custom Objects Connectivity Rules Relationships Domains and Validation Rules Subtype Specification Feature Type Selection The Geodatabase Data Model Subtypes Similar groups of objects Lightweight classification mechanism same attributes and behavior different default values and domains The Geodatabase Data Model Validation Rules Attribute domains Connectivity rules Relationship rules ... are stored in the Geodatabase Custom rules ... are code based The Geodatabase Data Model Validation Rules The editor in ArcMap provides tools to test object validity Rules are evaluated, under user control, during object editing : Create a new selection showing all invalid objects within a specified area Restrict the current selection to invalid objects only The Geodatabase Data Model Domains A named set of acceptable values for a field Types of domains Range Coded values Can be shared across multiple object classes The Geodatabase Data Model Domains Split policies Default value Duplicate Geometry ratio Area PropertyTax Owner 10000 2500 Bob Smith Geometry ratio Duplicate Property of the geometry Split Merge policies Default value Sum values Weighted average Area PropertyTax Owner 4500 1125 Bob Smith Area PropertyTax Owner 5500 1375 Bob Smith Area PropertyTax Owner 12000 3000 Mary Jones Area PropertyTax Owner 10000 2500 Bob Smith Merge Property of the geometry Addition Default value Area PropertyTax Owner 22000 5500 City The Geodatabase Data Model Domains in ArcMap Attribute editor uses domain values Identifies illegal values Provides legal value lists The Geodatabase Data Model Relationships Association between two objects The Geodatabase maintains the referential integrity of relationships when objects are deleted Related objects can message each other • eg. move, rotate The Geodatabase Data Model Pole Attachments Composite relationship: pole to transformer Select a pole and move it …the transformer follows The Geodatabase Data Model Relationship Validation Rules Subtype combinations Type of relationship Cardinality ranges The Geodatabase Data Model Geometric Networks Models a network relationship between a set of feature classes Each feature class has a topological role in the network (junction or edge) A network may have multiple feature classes in the same topological role The Geodatabase Data Model Geometric Networks Feature Classes Valve Geometric Network Service Feed Lateral Main The Geodatabase Data Model Geometric Networks A geometric network and its feature classes must all belong to the same feature dataset The Geodatabase Data Model Feature Datasets and Geometric Networks FD FD = Feature Dataset Water GN = Geometric Network FC = FeatureClass GN OC = Object Class J = Junction Water E = Edge FC FC Valve J FC FC Service J Main E FC Lateral Feed E The Geodatabase Data Model E Network Model A geometric network has an associated logical network Network features are associated with logical network elements The Geodatabase Data Model Geometry and Connectivity Junction Feature Geometric Network id j123 j124 j125 j126 j124 geometry e2 j125 Edge Feature j123 e1 id e1 e2 e3 e3 Geometric network contains features and geometry Logical network contains elements and connectivity Connectivity established via geometric coincidence j126 geometry Connectivity Table Junction j123 j124 j125 j126 Adjacent Junction and Edge j124, j123, j124, j124, e1 e1 e2 e3 j125, e2 j126, e3 Logical Network The Geodatabase Data Model Network Analysis Connectivity tracing Cycle detection Establishment of flow directions Upstream and downstream tracing Isolation tracing Trouble call tracing The Geodatabase Data Model Multiple Approaches Possible The ‘Build Using Existing Data’ approach The ‘Define in ArcCatalog’ approach The ‘Define Using CASE and UML’ approach Designing and Building GeoDatabases ‘Build Using Existing Data’ Approach Use ArcCatalog and ArcToolbox to load coverages and shapefiles Use ArcCatalog to refine and extend loaded feature classes build network topology add domains and rules Designing and Building GeoDatabases ‘Define in ArcCatalog’ Approach Use ArcCatalog to define new empty object classes. Define validation rules. Use the object editor and object loaders (in ArcMap) to populate your feature classes. Designing and Building GeoDatabases ‘Define Using UML / Case Tools’ Approach Supports the systematic design of large systems Use UML to define your domain object model, based on the generic Geodatabase object model. Use a UML Case Tool - eg. Visio, Rational Rose to specify the UML model. Designing and Building GeoDatabases Versions Named state of the database Multiple coexisting versions Differ in row state Editing, Long Transaction and Versioning Versioning Default: As Built User1 User2 Version: Plan 1 Electric Net User6 User3 User4 Version: Design 1 Version: Design 2 User5 Default version A user can work with any version Editing, Long Transaction and Versioning Multi User Editing Versioned Geodatabase Modify any version Only see your own changes Temporary child version When the Edit Session is saved the temporary version is posted Editing, Long Transaction and Versioning Direct Multi User Editing Editor A Editor B Editor C Editing, Long Transaction and Versioning Conflict Resolution Conflicts are automatically detected Conflicting FeatureClass Conflicting feature(s) Options to resolve conflict Versions Conflicting field Editing, Long Transaction and Versioning CASE and UML Using CASE and UML for design and building a Geodatabase Custom Object Development Using ESRI code generation and schema wizards for building custom objects Application Development Using ESRI Geodatabase Access Objects Detailed Sessions Using ArcCatalog to design and manage Geodatabases Working with versions in ArcInfo 8 Working with networks in ArcInfo 8 Detailed Sessions Tuesday 14.00 Uhr C122 • Tina Kapka, ESRI Redlands – An Overview of ArcInfo 8 Geodatabase Wednesday 14.00 Uhr C122 • Tina Kapka, ESRI Redlands – Object Concepts: What ESRI users should know Spatial Relations Equals – same geometries Disjoint – geometries share common point Intersects – geometries intersect Touches – geometries intersect at common boundary Crosses – geometries overlap Within– geometry within Contains – geometry completely contains Overlaps – geometries of same dimension overlap Relate – intersection between interior, boundary or exterior Contains Relation Touches Relation Spatial Methods Distance – shortest distance Buffer – geometric buffer ConvexHull – smallest convex polygon geometry Intersection – points common to two geometries Union – all points in geometries Difference – points different between two geometries SymDifference – points in either, but not both of input geometries Convex Hull and Difference Methods Grid Index (multi-level) Point and Region Quadtrees R-tree Minimum Bounding Rectangle Minimum Bounding Rectangle Study Area