Linked Open Architectures for Open Government
Integrated knowledge for and about the enterprise
Cory Casanave, PresidentModel Driven Solutions
Cory-c (at) ModelDriven (dot) comDC Semantic Web Meetup - July 2009
Copyright © 2009, Model Driven Solutions, Inc. / ModelDriven.org
Enabling Open Government
Government Domain Task Force
Open Government Workgroup
Gov.omg.org
Copyright © 2009, Model Driven Solutions, Inc. / ModelDriven.org
Architectures as Data
Architectures are critical government data assets Business models, process models, service models, information models,
rules, metadata, ontologies, technology models, schema There is an enormous asset in this existing architectural data
Architectures describe government, how it works, its resources and services
Architectures make other data more valuable – describing data or how it was produced
The most valuable architectures are models with a formal meta model or schema
Currently – most models are not web data accessible, they are trapped in tools and files. Models are not linkable.
Viewed another way, architecture models are just data – data to be federated, analyzed, queried, linked and mashed up – data to be published as LOD
Copyright © 2009, Model Driven Solutions, Inc. / ModelDriven.org
Architectures Models Are Trapped in Stovepipes
Information is unconnected, redundant and not usable outside its source
But, model files are not web assets and hard to connect
Architecture Models hold our enterprise Architectures, business processes and services, technology models,
SOA architectures, data schema and more
Copyright © 2009, Model Driven Solutions, Inc. / ModelDriven.org
Architectures Published into the Data Cloud
Visible architectures have more value!
Copyright © 2009, Model Driven Solutions, Inc. / ModelDriven.org
Goal: Linked Open Architectures
Federated Architectures Promotes Collaboration and Shared Resources
ServicesProcesses Data Policies
Copyright © 2009, Model Driven Solutions, Inc. / ModelDriven.org
High level plan
1. Publish architecture models as LOD, in their original vocabulary
2. Develop well defined semantic hub models, vocabularies of “shared concepts”, and map the raw architecture data to these hubs
3. Develop various tools and techniques for querying, viewing, federating and analyzing the data for various stakeholders to enable visibility and collaboration
4. Provide for external comment and input for participation – federated architectures become read/write
Copyright © 2009, Model Driven Solutions, Inc. / ModelDriven.org
Architecture Model Standards
Object Management Group (OMG) has adopted many of the architecture modeling standards XML Model Interchange (XMI) – Data Interchange for models (E.G.
Eclipse EMF) Unified Modeling Language (UML) Business Process Modeling Notation (BPMN) Service Oriented Modeling Language (SoaML) Etc…
There is an enormous asset in these modeling concepts All OMG and many other model tools interchange via XMI
Goal 1 – Publish any/all XMI based models as web Linked Open Data All UML, BPMN, SoaML models become linked open data assets
Copyright © 2009, Model Driven Solutions, Inc. / ModelDriven.org
UML Model as Diagrams
Copyright © 2009, Model Driven Solutions, Inc. / ModelDriven.org
UML Model as Data (In XMI)
<packagedElement xmi:type="uml:Class" xmi:id="_16_0_20ea04e0_1233085008046_755909_1129" name="Person"><ownedAttribute xmi:id="_16_0_20ea04e0_1233086797281_712895_1295" name="SSN" visibility="public"> <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_16_0_20ea04e0_1233086815703_436260_1298" name="" value="1"/> <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_16_0_20ea04e0_1233086815703_523919_1297" name=""/> </ownedAttribute> <ownedAttribute xmi:id="_16_0_20ea04e0_1233085716656_902161_1238" name="birth date" visibility="public" redefinedProperty="_16_0_20ea04e0_1233085218109_95685_1220"> <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> </ownedAttribute> </packagedElement>
XMI for Person (In terms of UML)
Copyright © 2009, Model Driven Solutions, Inc. / ModelDriven.org
UML Model as Data (In RDF)
<packagedElement xmi:type="uml:Class" xmi:id="_16_0_20ea04e0_1233085008046_755909_1129" name="Person"><ownedAttribute xmi:id="_16_0_20ea04e0_1233086797281_712895_1295" name="SSN" visibility="public"> <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_16_0_20ea04e0_1233086815703_436260_1298" name="" value="1"/> <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_16_0_20ea04e0_1233086815703_523919_1297" name=""/> </ownedAttribute> <ownedAttribute xmi:id="_16_0_20ea04e0_1233085716656_902161_1238" name="birth date" visibility="public" redefinedProperty="_16_0_20ea04e0_1233085218109_95685_1220"> <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> </ownedAttribute> </packagedElement>
XMI for Person expressed in UML terms
<umlrdf:Package.packagedElement> <umlrdf:Class rdf:about="#_16_0_20ea04e0_1233085008046_755909_1129"> <rdfs:label>Person</rdfs:label>
<umlrdf:StructuredClassifier.ownedAttribute> <umlrdf:Property rdf:about="#_16_0_20ea04e0_1233086797281_712895_1295"> <rdfs:label>SSN</rdfs:label> <umlrdf:NamedElement.visibility>public</umlrdf:NamedElement.visibility> <umlrdf:TypedElement.type rdf:resource="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> <umlrdf:MultiplicityElement.upperValue> <umlrdf:LiteralUnlimitedNatural rdf:about="#_16_0_20ea04e0_1233086815703_436260_1298"> <rdfs:label/> <umlrdf:LiteralUnlimitedNatural.value>1</umlrdf:LiteralUnlimitedNatural.value> <umlrdf:Element.owner xmlns:ecorerdf="http://www.eclipse.org/emf/2002/Ecore#" rdf:resource="#_16_0_20ea04e0_1233086797281_712895_1295"/> </umlrdf:LiteralUnlimitedNatural> </umlrdf:MultiplicityElement.upperValue> <umlrdf:MultiplicityElement.lowerValue> <umlrdf:LiteralInteger rdf:about="#_16_0_20ea04e0_1233086815703_523919_1297"> <rdfs:label/> <umlrdf:Element.owner xmlns:ecorerdf="http://www.eclipse.org/emf/2002/Ecore#" rdf:resource="#_16_0_20ea04e0_1233086797281_712895_1295"/> </umlrdf:LiteralInteger> </umlrdf:MultiplicityElement.lowerValue> <umlrdf:Element.owner xmlns:ecorerdf="http://www.eclipse.org/emf/2002/Ecore#" rdf:resource="#_16_0_20ea04e0_1233085008046_755909_1129"/> </umlrdf:Property> </umlrdf:StructuredClassifier.ownedAttribute> <umlrdf:StructuredClassifier.ownedAttribute> <umlrdf:Property rdf:about="#_16_0_20ea04e0_1233085716656_902161_1238"> <rdfs:label>birth date</rdfs:label> <umlrdf:NamedElement.visibility>public</umlrdf:NamedElement.visibility> <umlrdf:Property.redefinedProperty rdf:resource="#_16_0_20ea04e0_1233085218109_95685_1220"/> <umlrdf:TypedElement.type rdf:resource="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> <umlrdf:Element.owner xmlns:ecorerdf="http://www.eclipse.org/emf/2002/Ecore#" rdf:resource="#_16_0_20ea04e0_1233085008046_755909_1129"/> </umlrdf:Property> </umlrdf:StructuredClassifier.ownedAttribute> <umlrdf:Element.owner xmlns:ecorerdf="http://www.eclipse.org/emf/2002/Ecore#" rdf:resource="#_16_0_20ea04e0_1233083439203_181145_396"/> </umlrdf:Class> </umlrdf:Package.packagedElement>
RDF-XML for Person expressed in UML terms
Copyright © 2009, Model Driven Solutions, Inc. / ModelDriven.org
Structurally Mapping XMI and RDF
What is does There is a very direct structural mapping between the XMI and RDF
representation of a model This mapping is isomorphic (no information loss in either direction) Any XMI model (UML, BPMN, Etc) can be automatically and isomorphic
mapped to RDF as Open Linked Data Models become part of the open linked data cloud Everything is mapped, not a subset
What it doesn’t do The vocabulary and meta model of the source is retained, this publishes
the model data as LOD, it does not do a semantic mapping Semantic mapping is a separate step
Copyright © 2009, Model Driven Solutions, Inc. / ModelDriven.org
RDF Repository (E.G. Anzo)
Publishing Architecture Models into the Data Cloud
XMI BasedModels
Enterprise Knowledge Base(EKB)
Check In
(Subversion)
SPARQLEndpoint
RDF-LODResource
Open GovernmentData Cloud
StakeholderViewpoint(E.G. DRM)
(UML, BPMN, Etc)
Copyright © 2009, Model Driven Solutions, Inc. / ModelDriven.org
Enterprise Knowledge Base (EKB)
Based on work for the GSA Open Source eGov Reference Architecture (OSERA)
George Thomas & Rick Murphy Continuing work under ModelDriven.org
Being completed for open source release (August 2009) A public model server will also be deployed
Check in any model, published as LOD-RDF Underlying Technologies
Anzo RDF Repository Eclipse & Eclipse EMF OMG XMI & UML XSLT
Copyright © 2009, Model Driven Solutions, Inc. / ModelDriven.org
Demo
Start with UML Model XMI Representation out of UML tool RDF-XML Representation after transform View in RDF Repository View as Data Reference Model (DRM)
More Details
Copyright © 2009, Model Driven Solutions, Inc. / ModelDriven.org
OM
G S
tand
ard
XM
I R
epre
sent
atio
n
Mapping Meta Levels & Ontologies
UML Models(I.E. CRR)
The World (Business & Technical Systems)
UML “Meta Model”
MOF “Meta Meta Model”
Uses Vocabulary
Uses Vocabulary
Models
Link
ed O
pen
RD
F R
epre
sent
atio
n
UML RDF Models(I.E. CRR)
UML “RDF Schema”
MOF “Meta RDF Schema”
Uses Vocabulary
Uses Vocabulary
Models
Copyright © 2009, Model Driven Solutions, Inc. / ModelDriven.org
Still to do for open source release
Resolve some issues with dereferenceable URLs and logical namespaces
Complete connection with Subversion General cleanup Deploy model server
Roadmap
Semantic Integration and Transformation
Copyright © 2009, Model Driven Solutions, Inc. / ModelDriven.org
Enterprise Knowledge Integration
Data Cloud
ProcessModels
InformationModels
ServicesModels
RulesModels
GovernanceModels
FederatedEnterpriseViewpoints
Systems ArchitectsAnd Developers
Business AnalystsAnd Stakeholders
Software ArtifactsAnd Execution {BPM, SOA, Rules, DBMS…}
Copyright © 2009, Model Driven Solutions, Inc. / ModelDriven.org
Federating Models & Data with Hub Ontologies & Mapping (Bridge Ontologies)
The World (Business & Technical Systems)
BPMN RDF Models
BPMN “RDF Schema”
MOF “Meta RDF Schema”
Uses Vocabulary
Uses Vocabulary
Models
UMLRDF Models
UML “RDF Schema”
MOF “Meta RDF Schema”
Uses Vocabulary
Uses Vocabulary
Models
Federated ModelsFederated Data
Shared ConceptHub Ontology
Shared ConceptMeta Ontology
Uses Vocabulary
Models
Uses Vocabulary
Copyright © 2009, Model Driven Solutions, Inc. / ModelDriven.org
Integration Via Semantic Hubs
ConceptsWeSpecify
SemanticHub
ReferenceOntologies
SharedConcepts
MonetaryTrade
Part Of
IsMapped
Dis-IntegratedInformation
Buy
Purchase
WaysTo SpecifyThings
SharedCore
JointBehavior Part Of
De
scribe
s
De
scribe
s
UML
XML
De
scribe
s
Library of common conceptsCan grow over time
Mappingis not
“one-one”
Copyright © 2009, Model Driven Solutions, Inc. / ModelDriven.org
EKB
OWL Concepts
XML Concepts
UML Concepts
Shared Concept Hubs Integrate Architectures
SharedConcept
SharedConcept
SharedConceptShared
ConceptSharedConcept
SharedConcept
SharedConcept
SharedConcept
SharedConceptShared
Concept
SharedConcept
SharedConceptShared
ConceptSharedConcept
SharedConceptShared
Concept
SharedConcept
•Library of Concepts
•Growing based on need
•Modular, not monolithic
•A construction set for languages
•A lattice of interoperable concepts
Copyright © 2009, Model Driven Solutions, Inc. / ModelDriven.org
Enterprise Knowledge Base
Configuration MgmtEclipseTortoise
Web-UIUser Views
FormsBrowseQuery
File Get/Put
Eclipse IDE
Sub
vers
ion
Inte
rfac
e Artifact Repository
Orbeon XForms Server
Transformation Example (BPMN/UML)
Artifact / KB Integration
XM
L “R
est”
In
terf
ace
Knowledge Base
Sesame RDF KB
Inference & Rules
Transformation
Eclipse EMF Interface* Semantic Web Interface
BPMN
ProcessModel
BPMNModel
UMLModel
UML
Shared Concepts
Subversion
Copyright © 2009, Model Driven Solutions, Inc. / ModelDriven.org
Tool & Standard Support Roadmap
XSD Specific Tools (E.G. System Architect)
Can currently support MagicDraw & SPARX DoDAF
Copyright © 2009, Model Driven Solutions, Inc. / ModelDriven.org
Open Modeling Community•EKB•ModelPro•GAIN Initiative•fUML
Architecture Services•Service Oriented Architecture•Business Process Modeling•Semantic Web•Enterprise Architecture•Business Architecture•Systems Architecture•Model Driven Architecture
Thank You!
http://www.modeldriven.com
This Document: http://lib.modeldriven.org/MDLibrary/trunk/Pub/Presentations/OpenGovernmentArchitectures.ppt