from model interoperability to data transformation

22
From Model From Model Interoperability to Interoperability to Data Transformation Data Transformation Steve Grise Steve Grise ESRI ESRI

Upload: brooke-griffin

Post on 31-Dec-2015

26 views

Category:

Documents


3 download

DESCRIPTION

From Model Interoperability to Data Transformation. Steve Grise ESRI. Overview. Detailed approach for Schema mapping for Euroroads example Interoperability and semantics tools Some attempts at answers to questions. EuroRoads for Geodatabase. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: From Model Interoperability to Data Transformation

From Model Interoperability From Model Interoperability to Data Transformationto Data Transformation

From Model Interoperability From Model Interoperability to Data Transformationto Data Transformation

Steve GriseSteve GriseESRIESRI

Page 2: From Model Interoperability to Data Transformation

22

OverviewOverviewOverviewOverview

• Detailed approach for Schema Detailed approach for Schema mapping for Euroroads examplemapping for Euroroads example

• Interoperability and semantics Interoperability and semantics toolstools

• Some attempts at answers to Some attempts at answers to questionsquestions

Page 3: From Model Interoperability to Data Transformation

33

EuroRoads for GeodatabaseEuroRoads for GeodatabaseEuroRoads for GeodatabaseEuroRoads for Geodatabase

• Created EuroRoads Geodatabase UML, Created EuroRoads Geodatabase UML, exported to XMI, used ArcCatalog exported to XMI, used ArcCatalog Schema wizard to create GeodatabaseSchema wizard to create Geodatabase

• Started with Canadian National Road Started with Canadian National Road Network (NRN) data in GMLNetwork (NRN) data in GML

• Mapped schema from NRN to EuroRoad Mapped schema from NRN to EuroRoad target (data interoperability extension)target (data interoperability extension)

• Downloaded GML sample for the Yukon Downloaded GML sample for the Yukon TerritoryTerritory

• Created geoprocessing model to load Created geoprocessing model to load the Yukon data into the modelthe Yukon data into the model

• Used XML Schema tools in ArcGIS to Used XML Schema tools in ArcGIS to create export datasetcreate export dataset

Page 4: From Model Interoperability to Data Transformation

44

EuroRoads for GeodatabaseEuroRoads for GeodatabaseEuroRoads for GeodatabaseEuroRoads for Geodatabase

• Usually start with an Analysis DiagramUsually start with an Analysis Diagram– Simplified UMLSimplified UML– Stepping stone between ideas and Stepping stone between ideas and

implementationimplementation– Example from Ontario roads prototype Example from Ontario roads prototype

belowbelow– Would do Analysis Diagram to handle the Would do Analysis Diagram to handle the

more complex event/attributes for more complex event/attributes for implementation model for EuroRoadS implementation model for EuroRoadS

RoadJurisdiction NumberOfLane

NumberOfLanes

RoadName

RoadNameIDDescriptionRoadNameIndicatorRoadStreetNameRoadStreetDirectionPrefixRoadStreetDirectionRoadStreetTypeRoadJurisdictionIDfk

RoadJurisdictionIDRoadJurisdictionRoadJurisdictionZone

RoadLineEvent

Page 5: From Model Interoperability to Data Transformation

55

EuroRoads for GeodatabaseEuroRoads for GeodatabaseEuroRoads for GeodatabaseEuroRoads for Geodatabase

+Shape : esriFieldTypeGeometry

ESRI Classes::Feature

-PermanentID : esriFieldTypeString-VersionID : esriFieldTypeString-AlternateID : esriFieldTypeString

ER_RoadFeature

-ER_Level : ER_RoadNodeLevel = ER_Junction-FormOfNode : ER_FormOfNode = ER_Roundabout

ER_RoadNode

-ER_Level : ER_RoadLinkLevel = ER_RoadElement-FormOfWay : ER_FormOfWay = ER_SingleCarriageway-NationalRoadClass : ER_NationalRoadClass = ER_MainRoad

ER_RoadLink

-ER_Level : ER_FerryLinkLevel = ER_Ferry-FormOfFerry : ER_FormOfFerry = ER_Train

ER_FerryLink

-StartDateTime : esriFieldTypeDate-EndDateTime : esriFieldTypeDate

ER_RoadnetLink

CASE Tool UMLCASE Tool UML

Page 6: From Model Interoperability to Data Transformation

66

EuroRoads for GeodatabaseEuroRoads for GeodatabaseEuroRoads for GeodatabaseEuroRoads for Geodatabase+FieldType : esriFieldType = esriFieldTypeString+MergePolicy : esriMergePolicyType = esriMPTDefaultValue+SplitPolicy : esriSplitPolicyType = esriSPTDefaultValue+ER_Junction : <unspecified> = ER_Junction+ER_Intersection : <unspecified> = ER_Intersection

«CodedValueDomain»ER_RoadNodeLevel

+FieldType : esriFieldType = esriFieldTypeString+MergePolicy : esriMergePolicyType = esriMPTDefaultValue+SplitPolicy : esriSplitPolicyType = esriSPTDefaultValue+ER_Roundabout : <unspecified> = ER_Roundabout+ER_EnclosedTrafficArea : <unspecified> = ER_EnclosedTrafficArea+ER_PseudoNode : <unspecified> = ER_PseudoNode+ER_GradeSeparatedCrossing : <unspecified> = ER_GradeSeparatedCrossing

«CodedValueDomain»ER_FormOfNode

+FieldType : esriFieldType = esriFieldTypeString+MergePolicy : esriMergePolicyType = esriMPTDefaultValue+SplitPolicy : esriSplitPolicyType = esriSPTDefaultValue+ER_RoadElement : <unspecified> = ER_RoadElement+ER_Road : <unspecified> = ER_Road

«CodedValueDomain»ER_RoadLinkLevel

+FieldType : esriFieldType = esriFieldTypeString+MergePolicy : esriMergePolicyType = esriMPTDefaultValue+SplitPolicy : esriSplitPolicyType = esriSPTDefaultValue+ER_Motorway : <unspecified> = ER_Motorway+ER_MultiCarriageWay : <unspecified> = ER_MultiCarriageWay+ER_RoundaboutCircle : <unspecified> = ER_RoundaboutCircle+ER_TrafficSquare : <unspecified> = ER_TrafficSquare+ER_EnclosedTrafficArea : <unspecified> = ER_EnclosedTrafficArea+ER_SlipRoad : <unspecified> = ER_SlipRoad+ER_ServiceRoad : <unspecified> = ER_ServiceRoad+ER_EntranceOrExitCarPark : <unspecified> = ER_EntranceOrExitCarPark+ER_EntranceOrExitService : <unspecified> = ER_EntranceOrExitService+ER_UndefinedFormOfWay : <unspecified> = ER_UndefinedFormOfWay+ER_SingleCarriageway : <unspecified> = ER_SingleCarriageway

«CodedValueDomain»ER_FormOfWay

+FieldType : esriFieldType = esriFieldTypeString+MergePolicy : esriMergePolicyType = esriMPTDefaultValue+SplitPolicy : esriSplitPolicyType = esriSPTDefaultValue+ER_MainRoad : <unspecified> = ER_MainRoad+ER_FirstClass : <unspecified> = ER_FirstClass+ER_SecondClass : <unspecified> = ER_SecondClass+ER_ThirdClass : <unspecified> = ER_ThirdClass+ER_FourthClass : <unspecified> = ER_FourthClass+ER_FifthClass : <unspecified> = ER_FifthClass+ER_SixthClass : <unspecified> = ER_SixthClass+ER_SeventhClass : <unspecified> = ER_SeventhClass+ER_EighthClass : <unspecified> = ER_EighthClass+ER_NinthClass : <unspecified> = ER_NinthClass+ER_TenthClass : <unspecified> = ER_TenthClass+ER_UndefinedNationalRoadClass : <unspecified> = ER_UndefinedNationalRoadClass

«CodedValueDomain»ER_NationalRoadClass

+FieldType : esriFieldType = esriFieldTypeString+MergePolicy : esriMergePolicyType = esriMPTDefaultValue+SplitPolicy : esriSplitPolicyType = esriSPTDefaultValue+ER_FerryConnection : <unspecified> = ER_FerryConnection+ER_Ferry : <unspecified> = ER_Ferry

«CodedValueDomain»ER_FerryLinkLevel

+FieldType : esriFieldType = esriFieldTypeString+MergePolicy : esriMergePolicyType = esriMPTDefaultValue+SplitPolicy : esriSplitPolicyType = esriSPTDefaultValue+ER_ShipOrHovercraft : <unspecified> = ER_ShipOrHovercraft+ER_Train : <unspecified> = ER_Train

«CodedValueDomain»ER_FormOfFerry

CASE Tool UMLCASE Tool UML

Page 7: From Model Interoperability to Data Transformation

77

EuroRoads for GeodatabaseEuroRoads for GeodatabaseEuroRoads for GeodatabaseEuroRoads for Geodatabase

• Mapping File (Road Node)Mapping File (Road Node)

Page 8: From Model Interoperability to Data Transformation

88

EuroRoads for GeodatabaseEuroRoads for GeodatabaseEuroRoads for GeodatabaseEuroRoads for Geodatabase

Page 9: From Model Interoperability to Data Transformation

99

EuroRoads for GeodatabaseEuroRoads for GeodatabaseEuroRoads for GeodatabaseEuroRoads for Geodatabase

Page 10: From Model Interoperability to Data Transformation

1010

EuroRoads for GeodatabaseEuroRoads for GeodatabaseEuroRoads for GeodatabaseEuroRoads for Geodatabase

• XML Schema excerptXML Schema excerpt

Page 11: From Model Interoperability to Data Transformation

Semantic InteroperabilitySemantic InteroperabilitySemantic InteroperabilitySemantic Interoperability

Page 12: From Model Interoperability to Data Transformation

1212

Catalogs and SearchingCatalogs and SearchingCatalogs and SearchingCatalogs and Searching

• Search supportSearch support– ThesauriThesauri

– English/other LanguagesEnglish/other Languages– GeoGeo– Euro SDIEuro SDI

– Key is management of terms and Key is management of terms and relationships between concepts in real relationships between concepts in real datasetsdatasets

– W3C and other standards existW3C and other standards exist– Some key geo pieces missingSome key geo pieces missing– Standards needed in this areaStandards needed in this area

• Basically the same problem as Basically the same problem as conceptual schema mapping, but done conceptual schema mapping, but done at the dataset/catalog level (and the at the dataset/catalog level (and the feature level)feature level)

Page 13: From Model Interoperability to Data Transformation

1313

W3C OptionsW3C OptionsW3C OptionsW3C Options

• XML SchemaXML Schema– Structure/hierarchies, i.e. “Family”Structure/hierarchies, i.e. “Family”

• Resource Description Framework Resource Description Framework (RDF), (RDFS)(RDF), (RDFS)– ““Parents and children”Parents and children”

• Ontology Web Language (OWL)Ontology Web Language (OWL)– ““Cousins” and other more complex Cousins” and other more complex

relationshipsrelationships

Page 14: From Model Interoperability to Data Transformation

1414

ResultsResultsResultsResults

• Better search resultsBetter search results– ““parcel” search returns “Cadastre”parcel” search returns “Cadastre”– ““Cadastral” search returns “Parcel”, Cadastral” search returns “Parcel”,

“Corner”, other datasets“Corner”, other datasets– Some basic structure / semantics Some basic structure / semantics

missing for Geomissing for Geo– Alexandria Digital Library Alexandria Digital Library – ISO CategoriesISO Categories– … … are both too general for Semantic Web are both too general for Semantic Web

needs (maybe even basic searches)needs (maybe even basic searches)

Page 15: From Model Interoperability to Data Transformation

1515

A Few ToolsA Few ToolsA Few ToolsA Few Tools

• Protégé Protégé – Stanford, Open SourceStanford, Open Source– Developed for medical ontology work Developed for medical ontology work

(initially)(initially)– protégé.stanford.eduprotégé.stanford.edu

• LegendBursterLegendBurster– GeoReference Online, Commercial GeoReference Online, Commercial

toolstools– Developed for mineral exploration Developed for mineral exploration

market (initially)market (initially)– www.georeferenceonline.comwww.georeferenceonline.com

Page 16: From Model Interoperability to Data Transformation

1616

Protégé ExampleProtégé ExampleProtégé ExampleProtégé Example

Page 17: From Model Interoperability to Data Transformation

1717

LegendBurster ExampleLegendBurster ExampleLegendBurster ExampleLegendBurster Example

• TreeList EditorTreeList Editor– Standalone toolStandalone tool

• Query ToolsQuery Tools– Complex searchesComplex searches– Results stored as attributeResults stored as attribute– Complex mapping resultsComplex mapping results

Page 18: From Model Interoperability to Data Transformation

1818

LegendBurster ExampleLegendBurster ExampleLegendBurster ExampleLegendBurster Example

Page 19: From Model Interoperability to Data Transformation

1919

SummarySummarySummarySummary

• Euroroads schema mappingEuroroads schema mapping– Implementation tools availableImplementation tools available– Alternative approachAlternative approach

– Uml-xmi-gdb-xml (+ other)Uml-xmi-gdb-xml (+ other)

• Need to work on semantics and Need to work on semantics and relationships between datasets relationships between datasets – Important for searchingImportant for searching– Tools availableTools available– Small group should try to manage Small group should try to manage

relationshipsrelationships

Page 20: From Model Interoperability to Data Transformation

2020

Q&AQ&AQ&AQ&A

• Do conceptual modeling languages satisfy Do conceptual modeling languages satisfy Geo needs?Geo needs?– UML missing spatial patternsUML missing spatial patterns– UML probably too complex for most peopleUML probably too complex for most people– No other current alternative for graphical No other current alternative for graphical

representationrepresentation– Need to add simple, graphical examples to aid Need to add simple, graphical examples to aid

communication and comprehensioncommunication and comprehension– Consider information products and demonstration Consider information products and demonstration

systems now, in parallel with CSL worksystems now, in parallel with CSL work• Harmonize?Harmonize?

– Content, not necessarily CSLContent, not necessarily CSL– Keep it simple at firstKeep it simple at first– Meta model for cataloging and searching between Meta model for cataloging and searching between

termsterms– Watch for mixing of concepts and formatsWatch for mixing of concepts and formats

Page 21: From Model Interoperability to Data Transformation

2121

Q&AQ&AQ&AQ&A

• Is a common conceptual schema Is a common conceptual schema needed?needed?– Challenge is to be convinced that it Challenge is to be convinced that it

adds value, makes things easier for adds value, makes things easier for partners/designerspartners/designers

– Should target more broad audience Should target more broad audience than Euro communitythan Euro community

• UML extensions feasible?UML extensions feasible?– Conceptual models – yesConceptual models – yes– Transition to logical models should Transition to logical models should

be consideredbe considered

Page 22: From Model Interoperability to Data Transformation

2222

Q&AQ&AQ&AQ&A

• Representing constraints?Representing constraints?– Difficult to get agreement on behavior other Difficult to get agreement on behavior other

than basic data integrity constraintsthan basic data integrity constraints– Suggest keep this as simple as possibleSuggest keep this as simple as possible

– Different technologies and architectures means Different technologies and architectures means major differences in logical modelsmajor differences in logical models

• Relationship to Ontologies?Relationship to Ontologies?– Catalog/search tool problem for a small Catalog/search tool problem for a small

group of peoplegroup of people– Start work on this now in parallel with other Start work on this now in parallel with other

activitiesactivities