66
Object Modeling in Object Modeling in ArcInfo 8 ArcInfo 8 GIS in Water Resources GIS in Water Resources Consortium Consortium February 23-25, 2000 February 23-25, 2000 Dale Honeycutt Dale Honeycutt ESRI ESRI

Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Embed Size (px)

Citation preview

Page 1: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Object Modeling in Object Modeling in ArcInfo 8ArcInfo 8

Object Modeling in Object Modeling in ArcInfo 8ArcInfo 8

GIS in Water Resources GIS in Water Resources ConsortiumConsortium

February 23-25, 2000February 23-25, 2000

Dale HoneycuttDale Honeycutt

ESRIESRI

Page 2: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

TopicsTopicsTopicsTopics

• Whirlwind overview of ArcInfo 8Whirlwind overview of ArcInfo 8

• GeoDatabase overviewGeoDatabase overview

• Data modeling and data model Data modeling and data model extensionsextensions

• NetworkNetwork

Page 3: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Brief Overview of Brief Overview of ArcInfo 8ArcInfo 8

Brief Overview of Brief Overview of ArcInfo 8ArcInfo 8

Page 4: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Des

kto

pD

eskt

op

Wo

rkst

atio

nW

ork

stat

ion

ArcInfo 8ArcInfo 8ArcInfo 8ArcInfo 8

Arc

ArcEdit

ArcPlot

Arc Catalog

Arc Map

Arc Toolbox

ServersServersArcStormArcStormArcSDEArcSDE

GIS AdminGIS AdminLicense ManagerLicense Manager

User SetupUser Setup

UN

IX &

Win

dow

s N

TW

ind

ows

NT

UNIX &Windows NT

Page 5: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Suggested readingSuggested readingSuggested readingSuggested reading

• Modeling our WorldModeling our World

• Building a GeodatabaseBuilding a Geodatabase

Page 6: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

ArcInfo 8 ArchitectureArcInfo 8 ArchitectureArcInfo 8 ArchitectureArcInfo 8 Architecture

Arc CatalogArc Catalog Arc MapArc Map Arc ToolboxArc Toolbox

FilesFiles PersonalPersonalSDESDE

GeoObjectsGeoObjects

Arc SDEArc SDE

Page 7: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

ArcInfo 8 Desktop FocusArcInfo 8 Desktop FocusArcInfo 8 Desktop FocusArcInfo 8 Desktop Focus

Arc CatalogArc Catalog Arc MapArc Map Arc ToolboxArc Toolbox

Arc/InfoArc/InfoToolsTools

Editing, AnalysisEditing, AnalysisMap DevelopmentMap Development

Spatial DataSpatial DataManagementManagement

Page 8: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

• Browse data (Graphical or Browse data (Graphical or textual)textual)

ArcCatalogArcCatalogArcCatalogArcCatalog

• Manage dataManage data• Create Access databasesCreate Access databases• Define tables, add fieldsDefine tables, add fields

• Set object propertiesSet object properties• validation rulesvalidation rules• relationshipsrelationships• etc.etc.

• Set, view MetadataSet, view Metadata

Page 9: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Arc MapArc MapArc MapArc Map

• Perform map-based tasksPerform map-based tasks• MappingMapping• EditingEditing• QueriesQueries• AnalysisAnalysis• ChartingCharting• ReportingReporting

Page 10: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Editing in Arc MapEditing in Arc MapEditing in Arc MapEditing in Arc Map

• Display andDisplay andedit in theedit in thesamesameenvironmentenvironment

CoverageGeodatabase Shapefile

Page 11: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

ArcToolboxArcToolboxArcToolboxArcToolbox

• GUI for ARC commandsGUI for ARC commands• ToolsTools• WizardsWizards

• Import/export Import/export GeoDatabasesGeoDatabases

• Arc server clientArc server client

Page 12: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

GeoDatabase OverviewGeoDatabase OverviewGeoDatabase OverviewGeoDatabase Overview

Page 13: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

GeoDatabaseGeoDatabaseGeoDatabaseGeoDatabase

• New format for storing spatial New format for storing spatial datadata

• Think of it as a new kind of Think of it as a new kind of coveragecoverage

• Features are seen as objects Features are seen as objects with behavior, stored in an with behavior, stored in an RDBMSRDBMS

Page 14: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

MSAccess

Large - high performanceNeeds SDE

The Geodatabase is The Geodatabase is ScaleableScaleable

The Geodatabase is The Geodatabase is ScaleableScaleable

Oracle,Informix,Sybase

SQL Server

Page 15: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Fittings

Valves

Main Lines

Fire Hydrants

Water Layers

GIS data is organized GIS data is organized into layersinto layers

GIS data is organized GIS data is organized into layersinto layers

Page 16: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

CoveragesCoveragesCoveragesCoverages

• Each layer stored in a separate Each layer stored in a separate coveragecoverage

• Coverages based on planar Coverages based on planar graph topologygraph topology

Page 17: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Coverages –behaviorCoverages –behaviorCoverages –behaviorCoverages –behavior

• With coverages, behavior based on With coverages, behavior based on topologytopology• Very powerful, but limiting…Very powerful, but limiting…

• An arc is both a river and a state boundary – An arc is both a river and a state boundary – they have the same behaviorthey have the same behavior

• But… move a powerpole (a point), the But… move a powerpole (a point), the powerline (an arc) does not movepowerline (an arc) does not move

• Behavior encapsulated in the Behavior encapsulated in the application application • I.e., AML, ODEI.e., AML, ODE• All users must use the same applicationAll users must use the same application

Page 18: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

GeoDatabaseGeoDatabaseGeoDatabaseGeoDatabase

• Layers are organized in a single Layers are organized in a single file (Access) or enterprise file (Access) or enterprise databasedatabase

• Features in layers can have user-Features in layers can have user-defined behaviordefined behavior• Majority of behavior provided – Majority of behavior provided –

very little customization neededvery little customization needed

• No external application neededNo external application needed

Page 19: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Data Organized in a

Single GeoDatabase

Instance

Geodatabase organizationGeodatabase organizationGeodatabase organizationGeodatabase organization

Page 20: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

GeoDatabase features GeoDatabase features are objectsare objects

GeoDatabase features GeoDatabase features are objectsare objects

• Example: powerpole object with Example: powerpole object with properties and behavior versus a properties and behavior versus a point with some attributespoint with some attributes

• Users can define objects, their Users can define objects, their relationships, and their behavior relationships, and their behavior with ArcCatalog and with CASE with ArcCatalog and with CASE toolstools

Page 21: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

ObjectObject == IdentityIdentity StateState++ BehaviorBehavior++

Basic Object StuffBasic Object StuffBasic Object StuffBasic Object Stuff

Page 22: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

IdentityIdentityObjectObject == StateState BehaviorBehavior++ ++

Must Have

Provides a way to Provides a way to distinguish an object distinguish an object

from othersfrom others

IdentityIdentity

Unique Name

IdentityIdentityIdentityIdentity

Page 23: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

ObjectObject == IdentityIdentity StateState BehaviorBehavior++ ++

Must HaveMust Have May HaveMay Have

All of information or All of information or data of an object at a data of an object at a

given timegiven time

AttributesAttributes

StateState

StateStateStateState

Page 24: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

ObjectObject == IdentityIdentity StateState BehaviorBehavior++ ++

All of the abilities of an All of the abilities of an objectobject

Describe the actions and Describe the actions and reactions of the objectreactions of the object

Behavior

Must HaveMust Have May HaveMay Have May HaveMay Have

Methods Methods (Operations) (Operations)

BehaviorBehaviorBehaviorBehavior

Page 25: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Representing objectsRepresenting objectsRepresenting objectsRepresenting objects

ObjectObject == IdentityIdentity StateState++ BehaviorBehavior++

MeterMeter NameNameaccountNumberaccountNumberaccountTypeaccountTypeaccountAddressaccountAddressserialNumberserialNumbermanfacturemanfacturemodelmodelsizesizeserialNumberserialNumber

AttributesAttributes

isActive()isActive()computeUse()computeUse() MethodsMethods

Must HaveMust Have May HaveMay Have May HaveMay Have

Page 26: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Spatial Data ModelsSpatial Data ModelsSpatial Data ModelsSpatial Data Models

• A A spatial data modelspatial data model is a data is a data structure with methodsstructure with methods• Vector geometry, network graph, Vector geometry, network graph,

raster, TIN, planar graphraster, TIN, planar graph

• All spatial data models filter All spatial data models filter information on a mapinformation on a map

• The map is the penultimate data The map is the penultimate data modelmodel

Page 27: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Spatial Data ModelsSpatial Data ModelsSpatial Data ModelsSpatial Data Models

• GeoDatabase is a FRAMEWORK for GeoDatabase is a FRAMEWORK for exposing the vector data model and exposing the vector data model and the network data model as extensible the network data model as extensible objectsobjects

• Rasters and TINs are currently Rasters and TINs are currently served “holistically”served “holistically”• Operations on the whole data structure Operations on the whole data structure

(raster: “create drainage basins” as (raster: “create drainage basins” as opposed to individual cellsopposed to individual cells

Page 28: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

FrameworkFrameworkFrameworkFramework

A framework is a set of A framework is a set of cooperating classes that make cooperating classes that make up a reusable design for a up a reusable design for a specific class of software... specific class of software...

Page 29: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Framework…Framework…Framework…Framework…

• When you use a toolkit (or When you use a toolkit (or conventional subroutine library), you conventional subroutine library), you write the main body of the write the main body of the application and call the code that you application and call the code that you want to reuse. want to reuse.

• When you use a framework, you When you use a framework, you reuse the main body and write the reuse the main body and write the code it calls. code it calls.

Page 30: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Framework…Framework…Framework…Framework…

• You customize a framework by creating You customize a framework by creating application specific sub-classes of abstract application specific sub-classes of abstract classes from the framework.classes from the framework.

• Not only can you build applications faster as Not only can you build applications faster as a result, but the applications have similar a result, but the applications have similar structures. They are easier to maintain, and structures. They are easier to maintain, and they seem more consistent to their users. they seem more consistent to their users.

• On the other hand, you lose some creative On the other hand, you lose some creative freedom, since many design decisions have freedom, since many design decisions have been made for you.been made for you.

Page 31: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

GeoDatabase FrameworkGeoDatabase FrameworkGeoDatabase FrameworkGeoDatabase Framework

Object ClassesObject ClassesObject ClassesObject Classes

Feature ClassesFeature ClassesFeature ClassesFeature Classes

Network Feature Network Feature ClassesClasses

Network Feature Network Feature ClassesClasses

RelationshipsRelationshipsRelationshipsRelationships

SubtypesSubtypesSubtypesSubtypes

Attribute Attribute DomainsDomainsAttribute Attribute DomainsDomains

Connectivity Connectivity RulesRules

Connectivity Connectivity RulesRules

Core Core

ObjectsObjects

Core Core

ObjectsObjects BehaviorBehaviorBehaviorBehavior

InheritanceInheritanceInheritanceInheritance

Data Data

ModelingModeling

Data Data

ModelingModeling

Merge/Split Merge/Split RulesRules

Merge/Split Merge/Split RulesRules

Page 32: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Core Objects -ObjectCore Objects -ObjectCore Objects -ObjectCore Objects -Object

• Rows in a databaseRows in a database• Have unique ID Have unique ID

assigned by the assigned by the GeodatabaseGeodatabase

• Non-spatialNon-spatial

Object ClassesObject ClassesObject ClassesObject Classes

Feature ClassesFeature ClassesFeature ClassesFeature Classes

Network Feature Network Feature ClassesClasses

Network Feature Network Feature ClassesClasses

Page 33: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Core Objects -ObjectCore Objects -ObjectCore Objects -ObjectCore Objects -Object

• Objects with Objects with geometry (shape)geometry (shape)

• Points, Lines, Points, Lines, PolygonsPolygons

Object ClassesObject ClassesObject ClassesObject Classes

Feature ClassesFeature ClassesFeature ClassesFeature Classes

Network Feature Network Feature ClassesClasses

Network Feature Network Feature ClassesClasses

Page 34: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Core Objects - NetworkCore Objects - NetworkCore Objects - NetworkCore Objects - Network

• Provide network Provide network connectivity between connectivity between feature classesfeature classes

• A “kind of” featureA “kind of” feature

• Much more on Much more on networks later!networks later!

Object ClassesObject ClassesObject ClassesObject Classes

Feature ClassesFeature ClassesFeature ClassesFeature Classes

Network Feature Network Feature ClassesClasses

Network Feature Network Feature ClassesClasses

Simple junctionsSimple junctions

Simple edgesSimple edges

Complex junctionsComplex junctions

Complex edgesComplex edges

Page 35: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Data Modeling - Data Modeling - InheritanceInheritance

Data Modeling - Data Modeling - InheritanceInheritance

• Objects and Objects and features can inherit features can inherit behaviorbehavior• A “reach” is a kind A “reach” is a kind

of “flow line” which of “flow line” which is a kind of “network is a kind of “network edge”edge”

RelationshipsRelationshipsRelationshipsRelationships

SubtypesSubtypesSubtypesSubtypes

InheritanceInheritanceInheritanceInheritance

Page 36: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Data Modeling - Data Modeling - InheritanceInheritance

Data Modeling - Data Modeling - InheritanceInheritance

RelationshipsRelationshipsRelationshipsRelationships

SubtypesSubtypesSubtypesSubtypes

InheritanceInheritanceInheritanceInheritance ESRIClasses:: ComplexEdgeFeature

-Com_id : esriFieldTypeInteger-Rch_code : esriFieldTypeInteger-Rch_date : esriFieldTypeString-Level : esriFieldTypeInteger-Meters : esriFieldTypeDouble-Gnis_id : esriFieldTypeString-Name : esriFieldTypeString-Wshd_code :esriFieldTypeInteger

Reach

-ArcHydroID : esriFieldTypeInteger-Wshed_ID : esriFieldTypeInteger-Wbody_ID : esriFieldTypeInteger

FlowLine

Page 37: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Data Modeling - Data Modeling - RelationshipsRelationships

Data Modeling - Data Modeling - RelationshipsRelationships

• Peer-to-peerPeer-to-peer

• CompositeComposite

• 1:1, 1:m, m:1, m:m1:1, 1:m, m:1, m:mRelationshipsRelationshipsRelationshipsRelationships

SubtypesSubtypesSubtypesSubtypes

InheritanceInheritanceInheritanceInheritance

Page 38: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Data Modeling - Data Modeling - RelationshipsRelationships

Data Modeling - Data Modeling - RelationshipsRelationships

+OBJECTID : esriFieldTypeOID

ESRI Classes::Object

+Shape : esriFieldTypeGeometry

ESRI Classes::Feature

-ParcelValue : esriFieldTypeInteger-CombinedBuildingValue : esriFieldTypeInteger

Parcel-Stories : esriFieldTypeInteger-Height : esriFieldTypeInteger-BuildingValue : esriFieldTypeInteger-ParcelID : esriFieldTypeInteger

Building

Contains

RelationshipsRelationshipsRelationshipsRelationships

SubtypesSubtypesSubtypesSubtypes

InheritanceInheritanceInheritanceInheritance

Page 39: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Data Modeling - Data Modeling - RelationshipsRelationships

Data Modeling - Data Modeling - RelationshipsRelationships

• An association between objectsAn association between objects

• Can trigger behavior (cascade delete, Can trigger behavior (cascade delete, move to follow, custom…)move to follow, custom…)

Class1 Class2

• Related objects can message each otherRelated objects can message each other

Class1 Class2

Origin to destination

Destination to origin

Both directions

Class1

method1()

Class2

method2()

Method1() in Class1 uses the relationship to Class2 to find and start method2()

Page 40: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Data Modeling - Data Modeling - RelationshipsRelationships

Data Modeling - Data Modeling - RelationshipsRelationships

CompositeComposite(lifetime control)(lifetime control)

Class1 Class2

AssociationAssociation(peer to peer)(peer to peer)

1..*1..***Class1 Class2

Many to 1 or MoreMany to 1 or More

• Objects exist independent Objects exist independent of each otherof each other

• An association (UML An association (UML terminology)terminology)

• Destination object can’t Destination object can’t exist without origin featuresexist without origin features

• Destination features move Destination features move with origin featureswith origin features

Page 41: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Data Modeling - Data Modeling - SubtypesSubtypes

Data Modeling - Data Modeling - SubtypesSubtypes

• Allows an attribute Allows an attribute determine behavior determine behavior of other attributesof other attributes

• Example: water Example: water transmission vs. transmission vs. distribution pipes distribution pipes have different have different allowable PSI and allowable PSI and pipe diameterspipe diameters

RelationshipsRelationshipsRelationshipsRelationships

SubtypesSubtypesSubtypesSubtypes

InheritanceInheritanceInheritanceInheritance

Page 42: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Behavior – Attribute Behavior – Attribute DomainsDomains

Behavior – Attribute Behavior – Attribute DomainsDomains

• Describe the legal Describe the legal values of a field typevalues of a field type

• Used to ensure attribute Used to ensure attribute

integrityintegrity

• Can be shared among Can be shared among object and feature object and feature classesclasses

• Types of domainsTypes of domains• RangeRange• Coded valueCoded value

Attribute Attribute DomainsDomainsAttribute Attribute DomainsDomains

Connectivity Connectivity RulesRules

Connectivity Connectivity RulesRules

Merge/Split Merge/Split RulesRules

Merge/Split Merge/Split RulesRules

Page 43: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Behavior – Connectivity Behavior – Connectivity RulesRules

Behavior – Connectivity Behavior – Connectivity RulesRules

+FieldType : <unspecified> = esriFieldTypeInteger+MergePolicy : <unspecified> = esriMPTDefaultValue+SplitPolicy : <unspecified> = esriSPTDefaultValue+Code1 : <unspecified> = 1+Code2 : <unspecified> = 2+Code3 : <unspecified> = 3

«CodedValueDomain»TemplateCodedValueDomain

+FieldType : <unspecified> = esriFieldTypeInteger+MergePolicy : <unspecified> = esriMPTDefaultValue+SplitPolicy : <unspecified> = esriSPTDefaultValue+MinValue : <unspecified> = 1+MaxValue : <unspecified> = 100

«RangeDomain»TemplateRangeDomain

Attribute Attribute DomainsDomainsAttribute Attribute DomainsDomains

Connectivity Connectivity RulesRules

Connectivity Connectivity RulesRules

Merge/Split Merge/Split RulesRules

Merge/Split Merge/Split RulesRules

Page 44: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Behavior - Connectivity Behavior - Connectivity RulesRules

Behavior - Connectivity Behavior - Connectivity RulesRules

• Help you maintain a Help you maintain a valid networkvalid network

• Connectivity rules Connectivity rules include:include:• Edge-junction rulesEdge-junction rules

• cardinalitycardinality

• Edge-edge rulesEdge-edge rules• permissible junction permissible junction

typestypes• default junction typedefault junction type

Attribute Attribute DomainsDomainsAttribute Attribute DomainsDomains

Connectivity Connectivity RulesRules

Connectivity Connectivity RulesRules

Merge/Split Merge/Split RulesRules

Merge/Split Merge/Split RulesRules

Page 45: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

ConnRule

Behavior – Connectivity Behavior – Connectivity RulesRules

Behavior – Connectivity Behavior – Connectivity RulesRules

• Edge connectivity rulesEdge connectivity rules• n-ary associationn-ary association

• Junction connectivity rulesJunction connectivity rules

EdgeST1 EdgeST2

JunctionST3

JunctionST3 EdgeST1ConnRule

JunctionST1

Default

Page 46: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Behavior - Merge/Split Behavior - Merge/Split RulesRules

Behavior - Merge/Split Behavior - Merge/Split RulesRules

Attribute Attribute DomainsDomainsAttribute Attribute DomainsDomains

Connectivity Connectivity RulesRules

Connectivity Connectivity RulesRules

Merge/Split Merge/Split RulesRules

Merge/Split Merge/Split RulesRules

Page 47: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Behavior -ValidationBehavior -ValidationBehavior -ValidationBehavior -Validation

• Attribute domains and Attribute domains and Connectivity rules are used to Connectivity rules are used to validate features during data validate features during data entry and editing.entry and editing.

Page 48: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

MetadataMetadataMetadataMetadata

• Everything in a GeoDatabase can Everything in a GeoDatabase can have Metadatahave Metadata

• Stored as XML, viewed and Stored as XML, viewed and edited in ArcCatalogedited in ArcCatalog

• Easily extensibleEasily extensible

Page 49: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Data ModelingData ModelingData ModelingData Modeling

Page 50: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Data Modeling MechanicsData Modeling MechanicsData Modeling MechanicsData Modeling Mechanics

Code Generation

Code Generation

MSRepository

SchemaCreationSchemaCreation

3rd Party CASE Tool

UML Object Model

Building

LandBase.DLL

GeoDatabase

Building FClass

Page 51: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

ChemicalInjectorAerator Motor

AveragePowerUsagePeakPowerUsagePhasesRatedPowerRPMVariableSpeedVoltage

Object

*

Valve

DiameterJointType

SamplingStationInterconnectPoint Hydrant

StationIDProviderRecipientSource

Meter

DiameterFlowRangeMeasurementDate

ScadaSensor

CurrentValueIDMeasurementType

LineProtector

Casing Anode

*

IndividualTrayAreaRiserCountTotalTrayAreaTrayCount

SluiceGate

CurrentElevationHeightNormalElevationWidth

ChemicalType

MeasurementTypes are Amperage,ChlorineResidual,ChlorineTankWeight, Depth,DischargePressure, Elevation, Flow,Pressure, SuctionPressure,TankLevel, Temperature, Turbidity,Velocity, Voltage, and WellLevel.

UndergroundEnclosure

CoverMaterialCoverTypeDepthFrameMaterialFrameTypeInvertElevationMeasurement[2]

1..* 1..*

SurgeReliefTank

PressureSettingCapacity

Types include Anchor,Blocking, Deadman, andKicker.

StandByPower

PhasesVoltageAmperage

Types are Casement,ConduitBridge,ProtectiveTunnel,AccessTunnel.

DiameterMaterialRecordedLength

ThrustProtection

AirGap

GapMeasureOutletDiameter

WarehouseEquipment

WarehouseHydrant

BarrelDiameterMainValveTypeNozzelDiameter[4]OutletConfigurationSeatDiameter

WarehouseMeter

FlowRangeDiameter

WarehouseValve

Diameter

WarehouseSystemValve

BypassValveClockwiseToCloseMotorizedTurnsToClose

Types include Ball, Butterfly,Cone, Gate, and Plug.RegulationTypes are Flowand Pressure.

WarehouseControlValve

Types are Air, AirRelease,Combination, Vacuum, andVacuumRelease.

BarrelDiameterMainValveTypeNozzelDiameter[4]OutletConfigurationSeatDiameter

WarehouseHydrant

0..1

SystemValve

BypassValveClockwiseToCloseCurrentlyOpenMotorizedNormallyOpenPercentOpenPressureSettingRegulationTypeTurnsToClose

ControlValve

WarehouseSystemValve

0..1

WarehouseControlValve

0..1

LateralPoint

AccountIDCriticalCustomerDiameterLocationDescriptionMaterial

AnalysisPoint

RecordIDRecordedValueType

Fitting

JoiningMethodMaterialSize[4]

Types include Bend, Cap,Cross, Coupling,ExpansionJoint, Offset,Reducer, Riser, Saddle,Sleeve, Tap, Tee, Weld,and Wye.

SpatialOperationsRecord

DateID

OperationsRecord

DateIDLocationDescriptionType

WarehouseIDWarehouseStatusWarrantyDate

ClearWell

CapacityDepthOperatingRangeStationIDWidth[2]

WarehouseMeter

0..1

Types include Leak,Maintenance, Repair,and Inspection.

CountMaterialWeight

ArcFMFacility

SimpleJunctionFeature

AdministrativeAreaFacilityIDInstallDateLocationDetailOperationalAreaRotationStatusTypeWorkorderID

ArcFMFeature

Feature

WaterFeature

ElevationLocationDescriptionWaterType

AdministrativeAreaFacilityIDInstallDateOperationalAreaStatusTypeWorkorderID

NetworkStructure

NameOperationalDateReferenceIDSourceUsage

WaterFacility

ElevationWaterType

ArcFMEquipment

EquipmentIDInstallDateManufacturerModelSerialNumberStatusType

Types areAirControl,Altitude, andBackflowControl

Manhole

AccessTypeGroundTypeHighPipeElevationInteriorDropInvertElevationAccessDiameterRimElevationWallMaterial

Types areEnclosedStorageFacility,ProductionWell, PumpStation,StorageBasin, TreatmentPlant.

MainLine

PressurizedMain GravityMain

BarrelCountCrossSectionShapeDownstreamInvertMeasurement[2]NominalSizeSlopeUpstreamInvert

DepthDiameterGroundSurfaceTypePressureRating

LateralLine

LocationDescriptionSize

0..1

ExteriorCoatingJointType[2]LiningTypePipeClassRoughness

Types include BlowOff, Bypass,AirRelease, ChemicalInjection,DistributionMain, Interconnect,PipeBridge, SamplingStation,and TransmissionMain.

Types include: Domestic,Fire, Combination,Commercial, Irrigation,IndustrialServices, andHydrant laterals.

WaterTypes areCombinedWastewater,PotableWater, RawWater,ReclaimedWater, SaltWater,Sewage, StormRunoff, andWastewaterEffluent.

Types are Carrier,InlineStorage, andTransportPipe.

AdministrativeAreaFacilityIDInstallDateMaterialOperationalAreaStatusTypeWorkorderID

ComplexEdgeFeature

ArcFMLine

FlowMeasurementIDWaterType

WaterLine

Types are MeterBox,ValveVault, and Vault.

WaterStructure

OperationalDateStatus

Water DistributionObject Model

Analysis Model

ArcFM Water 8ESRI Confidential

8.0.1 Release

NOTE: Most relationships will be specified in thedetailed-design UML model. Accessors and mutatorsare implicit in the design.

Color Key

Lines

Facilities and Structures

Equipment

Features

Pump

InletSizeDischargeSizeType

Types include AxialFlow,Centrifugal, Jet, Reciprocating,Rotary, Screw, and Turbine.

WHPump

0..1

Types include AxialFlow,Centrifugal, Jet,

Reciprocating, Rotary,Screw, and Turbine.

WarehousePump

InletSizeDischargeSizeRatedFlowRatedPressureTotalDynamicHeadType

Types areEnclosedStorageFacility,ProductionWell, PumpStation,StorageBasin, TreatmentPlant.

Example UML Example UML ModelModel

Example UML Example UML ModelModel

Page 52: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Data ModelingData ModelingData ModelingData Modeling

• Time spent data modeling is very Time spent data modeling is very beneficial in the long runbeneficial in the long run

• Use ArcCatalog for tactical control of Use ArcCatalog for tactical control of simpler systemssimpler systems

• Use CASE (UML and schema wizard) Use CASE (UML and schema wizard) for modeling complex systemsfor modeling complex systems

• Both tools will simplify your lifeBoth tools will simplify your life

Page 53: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Data Model ExtensionData Model ExtensionData Model ExtensionData Model Extension

• A documented data model (Visio A documented data model (Visio UML) for a domain (water UML) for a domain (water resources)resources)

• A book explaining the modelA book explaining the model

• A data dictionary for salient A data dictionary for salient propertiesproperties

Page 54: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Data Model ExtensionData Model ExtensionData Model ExtensionData Model Extension

• Ideally created and supported by Ideally created and supported by a group of stakeholdersa group of stakeholders• Such as this groupSuch as this group

Page 55: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

A Data Model Extension A Data Model Extension is NOTis NOT

A Data Model Extension A Data Model Extension is NOTis NOT

• An applicationAn application• It plugs into the Geodatabase It plugs into the Geodatabase

frameworkframework

• ProprietaryProprietary• Whoever can buy the bookWhoever can buy the book

Page 56: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Data Model ExtensionData Model ExtensionData Model ExtensionData Model Extension

• Provides a published standard Provides a published standard so that domain-specific software so that domain-specific software can be developed with can be developed with confidenceconfidence• OpenOpen

• For feeFor fee

Page 57: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Data Model ExtensionData Model ExtensionData Model ExtensionData Model Extension

• Remember – “any dang fool can get Remember – “any dang fool can get complicated, it takes a genius to be complicated, it takes a genius to be simple” simple” • Keep your models simple and to the Keep your models simple and to the

pointpoint

• Largely a fence building exerciseLargely a fence building exercise• Deciding what to model is more Deciding what to model is more

important then how to modelimportant then how to model

Page 58: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Data Model ExtensionData Model ExtensionData Model ExtensionData Model Extension

• Continuum between general Continuum between general interest and application specific interest and application specific refinementsrefinements

Page 59: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Water Resources ModelWater Resources ModelWater Resources ModelWater Resources Model

High-level systemsHigh-level systemsWatershedsWatersheds

ChannelsChannels

X-sectionsX-sections

Temporal ObservationsTemporal Observations

Page 60: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Modeling Linear Modeling Linear FeaturesFeatures

Modeling Linear Modeling Linear FeaturesFeatures

Page 61: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Modeling Linear Modeling Linear FeaturesFeatures

Modeling Linear Modeling Linear FeaturesFeatures

• Linear ReferencingLinear Referencing• Using river mile systemsUsing river mile systems

• NetworksNetworks• !!!!!!!!

Page 62: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Linear ReferencingLinear ReferencingLinear ReferencingLinear Referencing

• All coordinates have <X,Y>All coordinates have <X,Y>• Optionally a Measure <M> and an Optionally a Measure <M> and an

Elevation <Z>Elevation <Z>• A linear feature that has A linear feature that has

Measures and an identifier is Measures and an identifier is referred to as a ROUTE (a reach referred to as a ROUTE (a reach in hydro terms)in hydro terms)

Page 63: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Linear ReferencingLinear ReferencingLinear ReferencingLinear Referencing

• EVENTS are EVENTS are objects that objects that contain linear contain linear referencesreferences

• Events are Events are points or linespoints or lines

• Lots of hydro Lots of hydro applications – applications – river reachriver reach

Page 64: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

EventsEventsEventsEvents

• Events can be objects (linear Events can be objects (linear reference only) or features reference only) or features (calculate and store the shape)(calculate and store the shape)

• When displaying objects with a When displaying objects with a linear reference, the shape is linear reference, the shape is dynamically computed (hence dynamically computed (hence “Dynamic Segmentation”)“Dynamic Segmentation”)

Page 65: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

Linear ReferencingLinear ReferencingLinear ReferencingLinear Referencing

• Host of methods to create routes and Host of methods to create routes and CALIBRATE their measuresCALIBRATE their measures• The only restriction is that measures are The only restriction is that measures are

real numbersreal numbers• Linear interpolation between measuresLinear interpolation between measures

• Host of methods to display EVENTSHost of methods to display EVENTS

Page 66: Object Modeling in ArcInfo 8 GIS in Water Resources Consortium February 23-25, 2000 Dale Honeycutt ESRI

NetworksNetworksNetworksNetworks