1 development of an interoperable gis using canonical geospatial concepts and methods sung-gheel...

31
1 Development of an Development of an Interoperable G Interoperable G IS using IS using Canonical Geospatial Concepts Canonical Geospatial Concepts and Methods and Methods Sung-Gheel Jang ([email protected] ) Tschangho John Kim ([email protected] ) Regional Economics Applications Laboratory Expert Planning Information Systems Laboratory University of Illinois at Urbana-Champaign for the 2007 AAG Meeting, San Francisco

Post on 21-Dec-2015

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

1

Development of an Development of an Interoperable GInteroperable GIS usingIS using

Canonical Geospatial Concepts Canonical Geospatial Concepts and Methodsand Methods

Sung-Gheel Jang ([email protected])Tschangho John Kim ([email protected])

Regional Economics Applications LaboratoryExpert Planning Information Systems LaboratoryUniversity of Illinois at Urbana-Champaign

for the 2007 AAG Meeting, San Francisco

Page 2: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

2

Jang, S.-G. and Kim, T. J. (2006), “Modeling an Interoperable Multimodal Travel Guide System using the ISO 19100 Series of International Standards”. Proceedings of the 14th ACM International Symposium on Advances in Geographic Information Systems, November 10-11, 2006, Arlington, Va., Silvia Nittel and Rolf A. de By (eds.), ACM Press, pp. 115-122.

Page 3: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

3

OutlineOutline

• Research Problem and Questions

• Canonical Geospatial Concepts and Methods

• Proposed Conceptual Modeling Process

• Application – Multimodal Travel Guide Service

• Implications to GIS Education

Page 4: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

4

We need to integrate information We need to integrate information across multiple jurisdictions!across multiple jurisdictions!

Decision MakerPlanner

State DOTs

EPAEPA

NGOs

LocalGovernments

Page 5: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

5

Research QuestionsResearch Questions

• How can we have the systems share understanding on geospatial information and services unambiguously while operating effectively together?

• How can we capture understanding in a formal and rigorous way?

Need for an effective and rigorous conceptual framework

Interoperable GIS

Page 6: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

6

Canonical Geospatial

Concepts and Methods

Page 7: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

7

Canonical Model ApproachCanonical Model Approach

Internationally Consensual Internationally Consensual Geospatial ConceptsGeospatial Concepts

Page 8: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

8

• Standardization in the field of digital geographic information

• 30 International Standards have been published.

ISO/TC 211 Geographic information/Geomatics

Page 9: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

9

The ISO 19100 Series of International The ISO 19100 Series of International Standards for Geographic InformationStandards for Geographic Information

ISO 00639 Human Language

ISO 19103 Conceptual Schema Language

ISO 19107 Spatial Schema

ISO 19108 Temporal

ISO 19109 Rules for Application Schema

ISO 19110 Feature Cataloging

ISO 19112 Location by Identifier

ISO 19115 Metadata

ISO 19115-2 Metadata - Imagery

ISO 19116 Positioning Services

ISO 19117 Portrayal

ISO 19118 Encoding

ISO 19119 Services

ISO 19123 Coverages

ISO 19126 Standard Profiles

ISO 19128 Web Map Services

ISO 19137 Generally Used Profiles

ISO 19135 Procedures for registration

ISO 19133 Tracking and Navigation

ISO 19131 Data Product Specification

ISO 19130 Sensor and data models for imagery and gridded data

ISO 06709

ISO 19111 Spatial Referencing by Coordinates

ISO 19132 Location Based Services Reference Model

ISO 19141 Moving Features

ISO 19129 IGCD Framework

ISO 19134 MultiModal Navigation andRouting

Page 10: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

10

Semantically Coherent Modeling Semantically Coherent Modeling ProcessesProcesses

Top-levelontology

Applicationontology

Domainontology

Concepts inconceptualschema language

Concepts inconceptualschema language

Model ofconceptualschema language

Model ofconceptualschema language

Concepts of feature and theirproperties

Concepts of feature and theirproperties

ApplicationschemaApplicationschema

ISO 19100standardizedconceptualschemas

ISO 19100standardizedconceptualschemas

ISO 19100standardizedconceptualschemas

ISO 19100standardizedconceptualschemas

ISO 19100standardizedconceptualschemas

ISO 19100standardizedconceptualschemas

Meta-Meta level

Meta level

Application level

TheGeneralFeatureModel

TheGeneralFeatureModel

FeatureTypedefinitions

FeatureTypedefinitions

GeographicDatasetGeographicDataset

Data level

Page 11: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

11

ISO 19100StandardizedConceptualSchemas

Domain Experts(e.g. ISO/TC 211,ISO/TC 204, etc.)

Domain Experts(e.g. ISO/TC 211,ISO/TC 204, etc.)

Domain Experts(e.g. Transportation planner)

Domain Experts(e.g. Transportation planner)

ApplicationData Model

(e.g. MTGS)

ISO 19100StandardizedConceptualSchemas

CanonicalGeospatialConcepts/Methods

(e.g. ISO 19100 series)

Universe of Discourse

perceived by

formally represented in

perceived by employed by used in

(and/or)

extended informally represented in

(e.g. Geographic domain, Transportation domain, etc.)

ProposedProposedConceptual Conceptual Modeling ProcessModeling Process

Page 12: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

12

HomeOffice

Intelligent Concierge ServiceIntelligent Concierge Service– Multimodal Travel Guide Service (MTGS)

Page 13: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

13User

Transit Authority

Point of InterestsInformation Provider

Taxi Company

Traffic InformationProvider

Multimodal Travel Guide Service

Distributed, Heterogeneous, and Distributed, Heterogeneous, and Autonomously Maintained Geospatial Autonomously Maintained Geospatial

InformationInformation

Page 14: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

14

Concepts inconceptualschema language

Concepts inconceptualschema language

Model ofconceptualschema language

Model ofconceptualschema language

Concepts of feature and theirproperties

Concepts of feature and theirproperties

ApplicationschemaApplicationschema

ISO 19100standardizedconceptualschemas

ISO 19100standardizedconceptualschemas

ISO 19100standardizedconceptualschemas

ISO 19100standardizedconceptualschemas

ISO 19100standardizedconceptualschemas

ISO 19100standardizedconceptualschemas

Meta-Meta level

Meta level

Application level

TheGeneralFeatureModel

TheGeneralFeatureModel

FeatureTypedefinitions

FeatureTypedefinitions

GeographicDatasetGeographicDataset

Data level

• Adopting meta-model of Unified Modeling Language (UML) and creating a UML profile– ISO/TS 19103 Conceptual schema

language

• Expressing Concepts using ISO 19103– ISO 19107 Spatial schema

• By inheriting TP_Complex in ISO 19107

• By inheriting NT_Network in ISO 19133

• By combining MM_SingleModeNetwork in ISO 19134

• How can we model Multimodal Network for MTGS? (Application Level Data Model)

Conceptual Modeling Conceptual Modeling ProcessesProcesses

Page 15: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

15

Multimodal Travel Guide System

<<Application Schema>>

(from Logical View)

ISO 19134 LBS Multimodal Routing and Navigation

(from Logical View)

ISO 19133 LBS Tracking and Navigation

(from Logical View)

ISO 19103 Conceptual Schema Language

(from Logical View)

ISO 19107 Spatial Schema

(from Logical View)

ISO 19108 Temporal Schema

(from Logical View)

ISO 19112 Location by Identifier

(from Logical View)

ISO 19111 Spatial Referencing by Coordinates

(from Logical View)

Page 16: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

16

MTGS_TransferLink

MTGS_Transfer

+ disabledAccessible : Boolean MTGS_Network

0..*

+transferLink

0..*

MM_SingleModeLink

+ mode [0..*] : MM_TransportationModeType

<<Type>>

MTGS_TransferNode

+ transferNodeType [1..*] : MM_TransferNodeType

0..*+transferNode 0..*

1

1..*

+junction1

+turn 1..*

MM_SingleModeNetwork

+ mode [0..*] : MM_TransportationModeType

<<Type>>

1..*

+componentNetworks

1..*

0..* +link0..*

MM_SingleModeJunction<<Type>>

1..*1..*

+complex

1..*

+element

1..*

Complex

1..*

+componentJunction

1..*

MM_SingleModeTurn<<Type>>

0..*+turn 0..*

1

1..*

+junction1

+turn

1..*

MM_FlexibleScheduleRouteLink<<Type>>

MM_FixedScheduleRouteLink<<Type>>

MM_ScheduleInfo

+ arrival [1..*] : TM_Primitive+ departure [0..*] : TM_Primitive+ description [0..1] : CharacterString

<<Type>>

1..*+scheduleInfo 1..*

MM_SingleModeNetwork

+ mode [0..*] : MM_TransportationModeType

<<Type>>

MTGS_RouteSummary

+ time : TM_Period+ distance : Distance+ numberOfTransfers [0..1] : Integer+ extent [0..1] : EX_GeographicExtent+ begin : NT_NetworkPosition+ stops [0..1] : MTGS_WayPointList+ end : NT_NetworkPosition

<<DataType>>

MTGS_TripScheme

+ startTransfer() : MTGS_Transfer+ endTransfer() : MTGS_Transfer

MTGS_Maneuver

+ startTurn() : MM_SingleModeTurn+ endTurn() : MM_SingleModeTurn+ startLink() : MM_SingleModeLink+ endLink() : MM_SingleModeLink

MTGS_Route

+ summary : MTGS_RouteSummary+ geometry : GM_CompositeCurve

+ recalculate(from : MTGS_WayPoint, cost : NS_CostFunction) : MTGS_Route+ asLinks() : Sequence<MM_SingleModeLink>

1..*+maneuver

1..*

NT_NetworkPosition

+ node : NT_Junction+ linkPosition : NT_LinkPosition

<<Union>>

MTGS_RouteSummary

+ time : TM_Period+ distance : Distance+ numberOfTransfers [0..1] : Integer+ extent [0..1] : EX_GeographicExtent+ begin : NT_NetworkPosition+ stops [0..1] : MTGS_WayPointList+ end : NT_NetworkPosition

<<DataType>>

NT_Turn<<Type>>

NT_Maneuver

+ isTraversable : Boolean

+ cost(function : NS_CostFunction, t[0..1] : TM_DateAndTime = "now") : Measure+ startTurn() : NT_Turn+ endTurn() : NT_Turn+ startLink() : NT_Link+ endLink() : NT_Link

<<Type>>

1..*

+turn

1..*{ordered}

+maneuver Turns

NT_Link<<Type>>

0..*+maneuver

+link

0..*

/Links

MM_SingleModeTurn<<Type>>

MM_SingleModeLink<<Type>>

MTGS_Maneuver

+ startTurn() : MM_SingleModeTurn+ endTurn() : MM_SingleModeTurn+ startLink() : MM_SingleModeLink+ endLink() : MM_SingleModeLink

1..*

+turn

1..*{ordered}

+maneuver

Turns

0..*

+link

0..*

+maneuver

/Links

MTGS_Transfer

+ disabledAccessible : Boolean

MTGS_TripScheme

+ startTransfer() : MTGS_Transfer+ endTransfer() : MTGS_Transfer

1..*

+turn

1..*{ordered}

+maneuverTurns

NT_Constraint(from constraintsAdvisory)

<<DataType>>MTGS_WayPoint

+ position : MTGS_Position+ avoid : Boolean

<<DataType>>

0..*

+restriction

0..*

Restriction

MTGS_Position

+ directPosition : DirectPosition+ networkPosition : NT_NetworkPosition

<<Union>>

MTGS_WayPointList

+ startPoint : MTGS_WayPoint+ viaPoint [0..*] : MTGS_WayPoint+ endPoint : MTGS_WayPoint+ isOrdered : Boolean = TRUE

<<DataType>>

NS_RouteRequestType

+ basic+ predictive+ dynamic+ complex

<<CodeList>>

NS_CostFunctionCode

+ distance+ time+ numberTurns+ numberOfTransfers+ totalfare

<<CodeList>>

NS_RoutePreferences

+ scenic+ easiest+ majorRoadsOnly+ avoidMajorHighways+ fastest+ cheapest+ minimumTransfers

<<CodeList>>

MTGS_RouteRequest

+ routeRequestType[1..*] : NS_RouteRequestType+ transportationMode[1..*] : MM_TransportationModeType+ wayPointList : MTGS_WayPointList+ departureTime[0..1] : TM_Period+ arrivalTime[0..1] : TM_Period+ costFunction[0..1] : NS_CostFunctionCode = "distance"+ preferences[0..*] : NS_RoutePreferences+ returnRouteInstructions : Boolean+ returnRouteGeometry : Boolean

<<DataType>>

MTGS_WayPointList(from network)

<<DataType>>

MM_TransportationModeType

+ intracityBus+ intercityBus+ shuttleBus+ rovingBus+ tram+ highSpeedRailway+ airway+ walk+ bike+ taxi+ passengerFerry+ vehicleFerry+ passengerCar

(from constraintsAdvisory)

<<CodeList>>

MTGS_RouteRequest<<DataType>>

MTGS_RouteResponse

+ request[1..*] : MTGS_RouteRequest+ route[0..*] : MTGS_Route

<<DataType>>

MTGS_InstructionList

+ route : MTGS_Route

<<DataType>>

0..*

+instructionList

0..*

MTGS_Maneuver

+ startTurn() : MM_SingleModeTurn+ endTurn() : MM_SingleModeTurn+ startLink() : MM_SingleModeLink+ endLink() : MM_SingleModeLink

(from network)

MTGS_Instruction

/+ cost : Measure+ action[0..1] : CharacterString+ advisory[0..*] : NT_Advisory

<<DataType>>1..*

+list

+instruction 1..*

Instruction List

0..*

+maneuver

0..*

MTGS_TripScheme

+ startTransfer() : MTGS_Transfer+ endTransfer() : MTGS_Transfer

(from network)

NT_Advisory(from constraintsAdvisory)

<<DataType>>MTGS_InstructionList

+ route : MTGS_Route

<<DataType>>

MTGS_Instruction

/+ cost : Measure+ action[0..1] : CharacterString+ advisory[0..*] : NT_Advisory

<<DataType>>

1..*

+list

+instruction1..*

Instruction List

MTGS_AvoidList

+ pointElement[0..*] : MTGS_WayPoint+ mode[0..*] : CharacterString

MTGS_WayPointList

+ startPoint : MTGS_WayPoint+ viaPoint [0..*] : MTGS_WayPoint+ endPoint : MTGS_WayPoint+ isOrdered : Boolean = TRUE

(from network)

<<DataType>>

MTGS_WayPoint

+ position : MTGS_Position+ avoid : Boolean

(from network)

<<DataType>>MTGS_Position

+ directPosition : DirectPosition+ networkPosition : NT_NetworkPosition

(from network)

<<Union>>

NS_CostFunction(from costFunction)

<<Type>>NT_Turn

/+ exitCount : Integer+ turnDirection[0..1] : NT_TurnDirection+ isTraversable : Boolean+ isManuever : Boolean/+ entryCount : Integer

+ cost()

(from network)

<<Type>>

NS_CostedTurn

/+ cost : Measure

1

0..*

+costFunction1

+turn

0..*

Turn Cost Functions 1

0..*

+turn1

+costedTurn

0..*

Turn Costing MM_SingleModeTurn(from network)

<<Type>>

MTGS_Transfer

+ disabledAccessible : Boolean

(from network)

constraintsAdvisory<<Leaf>>

network<<Leaf>>

navigation<<Leaf>>

LRS<<Leaf>>

costFunction<<Leaf>>

MTGS Application Data Model (Part)MTGS Application Data Model (Part)

Page 17: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

17

MTGS_TransferLink

MTGS_Transfer

+ disabledAccessible : Boolean MTGS_Network

0..*

+transferLink

0..*

MM_SingleModeLink

+ mode [0..*] : MM_TransportationModeType

<<Type>>

MTGS_TransferNode

+ transferNodeType [1..*] : MM_TransferNodeType

0..*+transferNode 0..*

1

1..*

+junction1

+turn 1..*

MM_SingleModeNetwork+ mode [0..*] : MM_TransportationModeType

<<Type>>

1..*+componentNetworks1..*

0..* +link0..*

MM_SingleModeJunction<<Type>>

1..*1..*

+complex

1..*

+element

1..*

Complex

1..*

+componentJunction

1..*

MM_SingleModeTurn<<Type>>

0..*+turn 0..*

1

1..*

+junction1

+turn

1..*

MM_FlexibleScheduleRouteLink<<Type>>

MM_FixedScheduleRouteLink<<Type>>

MM_ScheduleInfo+ arrival [1..*] : TM_Primitive+ departure [0..*] : TM_Primitive+ description [0..1] : CharacterString

<<Type>>

1..*+scheduleInfo 1..*

MTGS Application Data Model (Part)MTGS Application Data Model (Part)

From ISO 19134

Page 18: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

18

<!-- ==================== mtgs_model::MTGSApplicationSchemas::network::{MM_SingleModeLink-MM_SingleModeNetwork}{4179738D0369} [Association] ==================== --> <Foundation.Core.Association xmi.id = 'G.86' > <Foundation.Core.ModelElement.name></Foundation.Core.ModelElement.name> <Foundation.Core.ModelElement.visibility xmi.value = "public" /> <Foundation.Core.ModelElement.isSpecification xmi.value = "false"/> <Foundation.Core.GeneralizableElement.isRoot xmi.value = "false"/> <Foundation.Core.GeneralizableElement.isLeaf xmi.value = "false"/> <Foundation.Core.GeneralizableElement.isAbstract xmi.value = "false"/> <Foundation.Core.Association.connection> <!-- ==================== mtgs_model::MTGSApplicationSchemas::network::{MM_SingleModeLink-MM_SingleModeNetwork}{4179738D0369}.link [AssociationEnd] ==================== --> <Foundation.Core.AssociationEnd xmi.id = 'G.87' > <Foundation.Core.ModelElement.name>link</Foundation.Core.ModelElement.name> <Foundation.Core.ModelElement.visibility xmi.value = "public" /> <Foundation.Core.ModelElement.isSpecification xmi.value = "false"/> <Foundation.Core.AssociationEnd.isNavigable xmi.value = "true"/> <Foundation.Core.AssociationEnd.ordering xmi.value = "unordered" /> <Foundation.Core.AssociationEnd.aggregation xmi.value = "none" /> <Foundation.Core.AssociationEnd.targetScope xmi.value = "instance" /> <Foundation.Core.AssociationEnd.multiplicity> <Foundation.Data_Types.Multiplicity > <Foundation.Data_Types.Multiplicity.range> <Foundation.Data_Types.MultiplicityRange xmi.id = 'id.3161707.155' > <Foundation.Data_Types.MultiplicityRange.lower>0</Foundation.Data_Types.MultiplicityRange.lower> <Foundation.Data_Types.MultiplicityRange.upper>-1</Foundation.Data_Types.MultiplicityRange.upper> </Foundation.Data_Types.MultiplicityRange> </Foundation.Data_Types.Multiplicity.range> </Foundation.Data_Types.Multiplicity> </Foundation.Core.AssociationEnd.multiplicity> <Foundation.Core.AssociationEnd.changeability xmi.value = "changeable" /> <Foundation.Core.AssociationEnd.type> <Foundation.Core.Classifier xmi.idref = 'S.315.1107.30.265'/> <!-- mtgs_model::MTGSApplicationSchemas::network::MM_SingleModeLink --> </Foundation.Core.AssociationEnd.type> </Foundation.Core.AssociationEnd> <!-- ==================== mtgs_model::MTGSApplicationSchemas::network::{MM_SingleModeLink-MM_SingleModeNetwork}{4179738D0369}.(Role2) [AssociationEnd] ==================== --> <Foundation.Core.AssociationEnd xmi.id = 'G.88' > <Foundation.Core.ModelElement.name></Foundation.Core.ModelElement.name> <Foundation.Core.ModelElement.visibility xmi.value = "public" /> <Foundation.Core.ModelElement.isSpecification xmi.value = "false"/> <Foundation.Core.AssociationEnd.isNavigable xmi.value = "false"/> <Foundation.Core.AssociationEnd.ordering xmi.value = "unordered" /> <Foundation.Core.AssociationEnd.aggregation xmi.value = "aggregate" /> <Foundation.Core.AssociationEnd.targetScope xmi.value = "instance" /> <Foundation.Core.AssociationEnd.multiplicity> <Foundation.Data_Types.Multiplicity > <Foundation.Data_Types.Multiplicity.range> <Foundation.Data_Types.MultiplicityRange xmi.id = 'id.3161707.156' > <Foundation.Data_Types.MultiplicityRange.lower>0</Foundation.Data_Types.MultiplicityRange.lower> <Foundation.Data_Types.MultiplicityRange.upper>-1</Foundation.Data_Types.MultiplicityRange.upper> </Foundation.Data_Types.MultiplicityRange> </Foundation.Data_Types.Multiplicity.range> </Foundation.Data_Types.Multiplicity> </Foundation.Core.AssociationEnd.multiplicity> <Foundation.Core.AssociationEnd.changeability xmi.value = "changeable" /> <Foundation.Core.AssociationEnd.type> <Foundation.Core.Classifier xmi.idref = 'S.315.1107.30.267'/> <!-- mtgs_model::MTGSApplicationSchemas::network::MM_SingleModeNetwork --> </Foundation.Core.AssociationEnd.type> </Foundation.Core.AssociationEnd> </Foundation.Core.Association.connection> </Foundation.Core.Association>

MTGS Application Data Model in XMI

MTGS_TransferLink

MTGS_Transfer

+ disabledAccessible : Boolean MTGS_Network

0..*

+transferLink

0..*

MM_SingleModeLink

+ mode [0..*] : MM_TransportationModeType

<<Type>>

MTGS_TransferNode

+ transferNodeType [1..*] : MM_TransferNodeType

0..*+transferNode 0..*

1

1..*

+junction1

+turn 1..*

MM_SingleModeNetwork

+ mode [0..*] : MM_TransportationModeType

<<Type>>

1..*+componentNetworks1..*

0..* +link0..*

MM_SingleModeJunction<<Type>>

1..*1..*

+complex

1..*

+element

1..*

Complex

1..*

+componentJunction

1..*

MM_SingleModeTurn<<Type>>

0..*+turn 0..*

1

1..*

+junction1

+turn

1..*

MM_FlexibleScheduleRouteLink<<Type>>

MM_FixedScheduleRouteLink<<Type>>

MM_ScheduleInfo

+ arrival [1..*] : TM_Primitive+ departure [0..*] : TM_Primitive+ description [0..1] : CharacterString

<<Type>>

1..*+scheduleInfo 1..*

UML Application Data Model

<?xml version="1.0" encoding="UTF-8"?> <schema elementFormDefault="qualified" targetNamespace="http: / /epil.urban.uiuc.edu/mtgs" version="unknown" xmlns="http: / /www.w3.org/2001/XMLSchema" xmlns:gml="http: / /www.opengis.net/gml" xmlns:mtgs="http: / /epil.urban.uiuc.edu/mtgs" xmlns:sc="http:/ /www.interactive-instruments.de/ShapeChange" xmlns:scXML="http: / /www.isotc211.org/scXML" xmlns:smXML="http: / /www.isotc211.org/smXML" xmlns:xlink="http: / /www.w3.org/1999/xlink"> <include schemaLocation="LRS.xsd"/> <include schemaLocation="constraintsAdvisory.xsd"/> <import namespace="http:/ /www.opengis.net/gml" schemaLocation="base/gml.xsd"/> <import namespace="http:/ /www.isotc211.org/smXML" schemaLocation="smXML/metadataEntity.xsd"/> <import namespace="http:/ /www.isotc211.org/scXML" schemaLocation="scXML/basicTypes.xsd"/> <!--Type and element definitions of this package--> <complexType name="NT_NetworkType"> <complexContent> <extension base="gml:TopoComplexType"> <sequence> <element maxOccurs="unbounded" minOccurs="0" name="link" type="mtgs:NT_LinkPropertyType"/> <element maxOccurs="unbounded" minOccurs="0" name="turn" type="mtgs:NT_TurnPropertyType"/> </sequence> </extension> </complexContent> </complexType> <complexType name="NT_NetworkPropertyType"> <sequence> <element minOccurs="0" ref="mtgs:NT_Network"/> </sequence> <attributeGroup ref="gml:AssociationAttributeGroup"/> </complexType> <complexType name="NT_NetworkPropertyByValueType"> <sequence> <element ref="mtgs:NT_Network"/> </sequence> </complexType> <element name="NT_Network" substitutionGroup="gml:TopoComplex" type="mtgs:NT_NetworkType"/> <complexType name="MTGS_PositionType"> <choice> <element name="directPosition" type="gml:DirectPositionType"/> <element name="networkPosition" type="mtgs:NT_NetworkPositionPropertyType"/> </choice> </complexType> <complexType name="MTGS_PositionPropertyType"> <sequence> <element ref="mtgs:MTGS_Position"/> </sequence> </complexType> <element name="MTGS_Position" type="mtgs:MTGS_PositionType"/> <complexType name="NT_LinkType"> <complexContent> <extension base="gml:DirectedEdgePropertyType"> <sequence> <element name="isTraversable" type="boolean"> <annotation> <documentation>This indicates whether this link is navigable in this direction. </documentation> </annotation> </element> <element name="isUturnPossible" type="boolean"> <annotation> <documentation>This indicates whether this link is navigable in this direction. </documentation> </annotation> </element>

GML Application Data Model

GML: Geography Markup Language

Page 19: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

19

NS_RouteRequestType

+ basic+ predictive+ dynamic+ complex

<<CodeList>>

NS_CostFunctionCode

+ distance+ time+ numberTurns+ numberOfTransfers+ totalfare

<<CodeList>>

NS_RoutePreferences

+ scenic+ easiest+ majorRoadsOnly+ avoidMajorHighways+ fastest+ cheapest+ minimumTransfers

<<CodeList>>

MTGS_RouteRequest

+ routeRequestType[1..*] : NS_RouteRequestType+ transportationMode[1..*] : MM_TransportationModeType+ wayPointList : MTGS_WayPointList+ departureTime[0..1] : TM_Period+ arrivalTime[0..1] : TM_Period+ costFunction[0..1] : NS_CostFunctionCode = "distance"+ preferences[0..*] : NS_RoutePreferences+ returnRouteInstructions : Boolean+ returnRouteGeometry : Boolean

<<DataType>>

MTGS_WayPointList(from network)

<<DataType>>

MM_TransportationModeType

+ intracityBus+ intercityBus+ shuttleBus+ rovingBus+ tram+ highSpeedRailway+ airway+ walk+ bike+ taxi+ passengerFerry+ vehicleFerry+ passengerCar

(from constraintsAdvisory)

<<CodeList>>

Route Request InformationRoute Request Information

UML

GML Instance Representation

<mtgs:MTGS_RouteRequest> <mtgs:routeRequestType> mtgs:NS_RouteRequestTypeType </mtgs:routeRequestType> [1..*] <mtgs:transportationMode> mtgs:MM_TransportationModeTypeType </mtgs:transportationMode> [1..*] <mtgs:wayPointList> mtgs:MTGS_WayPointListPropertyType </mtgs:wayPointList> [1] <mtgs:departureTime> gml:TimePeriodPropertyType </mtgs:departureTime> [0..1] <mtgs:arrivalTime> gml:TimePeriodPropertyType </mtgs:arrivalTime> [0..1] <mtgs:costFunction> mtgs:NS_CostFunctionCodeType </mtgs:costFunction> [0..1] <mtgs:preferences> mtgs:NS_RoutePreferencesType </mtgs:preferences> [0..*] <mtgs:returnRouteInstructions> boolean </mtgs:returnRouteInstructions> [1] <mtgs:returnRouteGeometry> boolean </mtgs:returnRouteGeometry> [1] </mtgs:MTGS_RouteRequest>

Page 20: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

20

MTGS_RouteRequest<<DataType>>

MTGS_RouteResponse

+ request[1..*] : MTGS_RouteRequest+ route[0..*] : MTGS_Route

<<DataType>>

MTGS_InstructionList

+ route : MTGS_Route

<<DataType>>

0..*

+instructionList

0..*

MTGS_Maneuver

+ startTurn() : MM_SingleModeTurn+ endTurn() : MM_SingleModeTurn+ startLink() : MM_SingleModeLink+ endLink() : MM_SingleModeLink

(from network)

MTGS_Instruction

/+ cost : Measure+ action[0..1] : CharacterString+ advisory[0..*] : NT_Advisory

<<DataType>>

1..*

+list

+instruction 1..*

Instruction List

0..*

+maneuver

0..*

MTGS_TripScheme

+ startTransfer() : MTGS_Transfer+ endTransfer() : MTGS_Transfer

(from network)

Route Response InformationRoute Response Information

GML Instance Representation

UML

<mtgs:MTGS_RouteResponse> <mtgs:request> mtgs:MTGS_RouteRequestPropertyType </mtgs:request> [1..*] <mtgs:route> mtgs:MTGS_RoutePropertyType </mtgs:route> [0..*] <mtgs:instructionList> mtgs:MTGS_InstructionListPropertyType </mtgs:instructionList> [0..*] </mtgs:MTGS_RouteResponse>

Page 21: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

21

MTGS RouteMTGS Route (UML) (UML)

Page 22: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

22

MTGS Route Represented by GML InstancesMTGS Route Represented by GML Instances

GML Instance Representation<mtgs:MTGS_Route> <gml:metaDataProperty> ... </gml:metaDataProperty> [0..*] <gml:description> ... </gml:description> [0..1] <gml:name> ... </gml:name> [0..*] <gml:boundedBy> ... </gml:boundedBy> [0..1] <mtgs:maximalComplex> gml:TopoComplexMemberType </mtgs:maximalComplex> [1] <mtgs:subComplex> gml:TopoComplexMemberType </mtgs:subComplex> [1..*] <mtgs:superComplex> gml:TopoComplexMemberType </mtgs:superComplex> [1..*] <mtgs:element> mtgs:MM_SingleModeJunctionPropertyType </mtgs:element> [1..*] <mtgs:geometry> [1] <gml:CompositeCurve> ... </gml:CompositeCurve> [0..1] </mtgs:geometry> <mtgs:link> mtgs:MM_SingleModeLinkPropertyType </mtgs:link> [0..*] <mtgs:turn> mtgs:MM_SingleModeTurnPropertyType </mtgs:turn> [0..*] <mtgs:mode> mtgs:MM_TransportationModeTypeType </mtgs:mode> [1] <mtgs:summary> mtgs:MTGS_RouteSummaryPropertyType </mtgs:summary> [1] <mtgs:tripScheme> mtgs:MTGS_TripSchemePropertyType </mtgs:tripScheme> [1..*] <mtgs:maneuver> mtgs:MTGS_ManeuverPropertyType </mtgs:maneuver> [1..*] </mtgs:MTGS_Route>

Page 23: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

23

WF

SW

FS

WF

SW

FS

ParticipatingSystem A

ParticipatingSystem B

B C

Local Schema

MTGSApplication Schemas

Translator

Data Integrator/Optimizer

GetGMLObject( )

WF

S C

lien

t Inte

rfac

eW

FS

Clie

nt In

terfa

ce

GMLParser Data

Store

RoutingEngine

Extended WFS InterfaceExtended WFS Interface

MTGS ClientsMTGS Clients

MTGSManager

Multimodal Travel Guide System (MTGS)Multimodal Travel Guide System (MTGS)MTGS GML Instances

GetGMLObject( )

MTGS GML Instances refer

Request

read

refer

Route Response(MTGS GML Instance)

GetRoute() via the WFS interface

Response

integrate

filter

query

returnwrite

query

return

Request / Response

Business LogicsBusiness Logics

System Architecture of MTGSSystem Architecture of MTGS

WFS: Web Feature Service

e.g. Transit Authority

e.g. Traffic Information

Page 24: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

24

Fetching the component networks Fetching the component networks from the participating systemsfrom the participating systems

Page 25: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

25User

Transit Authority

Point of InterestsInformation Provider

Taxi Company

Traffic InformationProvider

Multimodal Travel Guide Service

Interoperable GISInteroperable GIS

Page 26: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

26

HomeOffice

Multimodal Travel Guide Service (MTGS)

Page 28: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

28

Interoperable Interoperable Geospatial Information Processing Geospatial Information Processing

Decision MakerPlanner

State DOTs

EPAEPA

NGOs

LocalGovernments

Page 29: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

29

Implications to GIS EducationImplications to GIS Education

• GIS standards as cross-cutting theme in GIS education: GIS & T Body of Knowledge (UCGIS 2006)– scale; error and data quality; uncertainty;

metadata; interoperability; generalization; quality measurement; history and trends; and standards

• Model curricula of UCGIS includes GD12 – Metadata, standards, and infrastructure

• Not enough to keep up the fast changes of GIS & T

Page 30: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

30

Four Recommendable Areas in GIS Four Recommendable Areas in GIS EducationEducation

• Formalizing methods for the concepts of geographic information– Reference model (ISO 19101, ISO

19132)– Conceptual schema language

(ISO/TS 19103), UML– Rules of application schema (ISO

19109)• Formal concepts of geographic

information– Spatial schema (ISO 19107, ISO

19137)– Temporal schema (ISO 19108)– Metadata (ISO 19115)– Imagery and gridded data (ISO/TR

19121)– Coverage geometry and functions

(ISO 19123)– Location based services (ISO

19133, ISO 19134)– Moving features (ISO 19141)

• Cataloguing methods– Methodology for feature

cataloguing (ISO 19107)– OpenGIS Catalogue Service

(OGC 04-021r3)• Web-based GIS

– Web Map Service (ISO 19128)– Web Feature Service (ISO

19142, OGC 04-094)– Filter encoding (ISO 19143,

OGC 04-095)– Web Coverage Service (OGC

03-065r6)– Web Service Common (OGC

05-008c1)– Geography Markup Language

(ISO 19136, OGC 02-023r4)

Page 31: 1 Development of an Interoperable GIS using Canonical Geospatial Concepts and Methods Sung-Gheel Jang (sjang3@uiuc.edu) Tschangho John Kim (tjohnkim@uiuc.edu)

31

Thank you for your attention!Thank you for your attention!

• Any questions or suggestions?

e-mail: [email protected]