The document discusses information modeling and provides examples of how to create an effective information model. It describes how information modeling was first defined in 1976 and involves representing concepts, relationships, and rules for a domain. The document then gives examples of why information modeling is useful today for sharing concepts, specifications, and determining technology requirements. It provides guidance on how to effectively scope an information modeling project through interviewing stakeholders and capturing concepts through unbiased questioning and listening. Finally, it demonstrates how to organize concepts in modeling tools like Gra.fo by defining properties and relationships to avoid being an inexperienced "Wimpy Model Manager".
2. 2
What is Information Modeling?
• First described by Dr. Peter Chen in
1976.**
• A more universal definition: “An
information model is a representation of
concepts, relationships, constraints,
rules, and operations to specify data
semantics for a chosen domain of
discourse.”* Different approaches with
similar information model properties
have emerged in object-oriented (UML),
semantic (OWL, RDFS), and
knowledge graph communities
**Chen, Peter Pin-Shan. "The entity-relationship model—toward a unified view of data." ACM Transactions on Database Systems (TODS) 1, no. 1 (1976): 9-36.
*. Lee, Y. Tina. "Information modeling: From design to implementation." In Proceedings of the second world manufacturing congress, pp. 315-321. Canada/Switzerland: International Computer Science
Conventions, 1999.
Application Model
Type
Import/
Export
Result
Enterprise
Architect
UML Export OWL, RDFS
Topbraid OWL Import UML
Gra.fo OWL Export OWL, Neo4J
Examples of Interoperability
Note some rely on 3rd party tools for export.
3. 3
Why Information Modeling today?
• Good for socializing concepts on teams
• Important for accurately providing
unbiased specifications
• Helpful deriving technology profiles for
interoperability and reusability.
• Many different community vocabularies,
common information models and domain
ontologies with concepts can be
leveraged.
Intuition
Formalism
Iterative Modeling Process
Information modeler experience is a sought after need at the laboratory
4. 4
May 20, 2019 Establishing Scope: Informal Interview
Best regards,
Wimpy Model Manager
Modeling is an iterative process that can take
a life of its own. Don’t boil the ocean. Establish
scoping boundaries with domain expert is
imperative:
Example Questions:
1. What would you like the information model
to accomplish for you?
A. (sketch, blueprint, executable)
2. What would do you consider out of scope?
Scoping Informal Interview
This weather station device positioned on the Battelle Marine
Sciences Laboratory dock provides data on wind direction and
speed, humidity, solar radiation, temperature, and barometric
readings [1]
[1] http://digisource.pnl.gov/imagemagick.nsf/f/uv?open&AMER-5R7V9A
Scope: I need to semantically and syntactically
describe a weather station dataset. I will use
this as reference data in my graph database.
Dear Diary,
Where do I start?!!!
I’ve been asked to create an
information model to describe weather
data.
5. 5
May 21, 2019 Unbiased Questions, L istening, and Listing
Best regards,
Wimpy Model Manager
Dear Diary,
I’d like to make a information model
blueprint of weather station
measurements. Can I start
diagramming?
1. As a modeler act in the listener role and ask
clean questions** without personal bias
a) And what can you tell me about your
weather data?
b) And is there anything else you can tell
me about your weather data?
Listen and List Concepts
Concept listing:
• Location
• Field
• Weather Station
• Units of measure
• Measurement
• Measurement Type
“A knowledge graph is a glossary of terms with rich connections” Tweet on Capital One presentation
Knowledge Graph Conference 2019, May 07, 2019.
**Sullivan, Wendy, and Judy Rees. Clean language:
Revealing metaphors and opening minds. Crown House
Publishing, 2008.
6. 6
May 22, 2019 Organize Concepts
Best regards,
Wimpy Model Manager
Dear Diary,
I’m ready to construct a model and
organize my concepts but I’m
inexperienced with ontology and UML
editors
6
Sparx Enterprise Architect (UML Editor) Topbraid Composer (Ontology Editor)
Capsenta Gra.fo (Knowledge Graph Editor)
7. 7
May 23, 2019 Example Model Manager Fast track
• Gra.fo supports collaborative design
• Supports simple rules and constraints
• Low learning curve
• Exports to a number of languages!
@prefix foaf: <http://xmlns.com/foaf/spec/> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@base <https://www.gridapps-d.org/ns#> .
<https://www.gridapps-d.org/ns#> rdf:type owl:Ontology .
#################################################################
# Object Properties
#################################################################
### https://www.gridapps-d.org/ns#/describedby
<https://www.gridapps-d.org/ns#/describedby> rdf:type owl:ObjectProperty ;
rdfs:domain <https://www.gridapps-d.org/ns#/WeatherStation> ;
rdfs:range <https://www.gridapps-d.org/ns#/Field> ;
rdfs:label "describedBy" .
### https://www.gridapps-d.org/ns#/haslocation
<https://www.gridapps-d.org/ns#/haslocation> rdf:type owl:ObjectProperty ;
rdfs:domain <https://www.gridapps-d.org/ns#/WeatherStation> ;
rdfs:range <https://www.gridapps-d.org/ns#/Location> ;
rdfs:label "hasLocation" .
#################################################################
# Data properties
#################################################################
CREATE GRAPH TYPE WeatherOntology (
WeatherStation (description ANY?, timezone ANY?, mrid ANY?, name ANY?),
haslocation (),
describedby (),
Field (originalname ANY?, originalnameuom ANY?, timeseriesname ANY?,
cimname ANY?, timeseriesuom ANY?),
Location (lattitude ANY?, longitude ANY?, elevation ANY?, elevationuom ANY?),
(WeatherStation),
(Field),
(Location),
(WeatherStation)-[haslocation]->(Location),
(WeatherStation)-[describedby]->(Field)
)
OWL Export
Neo4j Export
No more wimpy!
Define cardinality
Add data properties
Show relationships
Define
Concepts
8. 8
S-L-O Practices To Avoid Being Wimpy
• Scope: Determine what an information model will do for you
• Listen: Capture unbiased domain concepts
• Organize: Construct a model in a tool that meets your
needs and capture as much detail as needed by scope.
Typical Characteristics of Information Models
Concepts and relationships are semantically meaningful (human understandable)
Exhibit more or less descriptive syntax (machine understandable).
Includes visual diagrams
Meta-language that is used for the machine specification
Formalism: logic, constraints