Breathing Life into the Enterprise Data Model An Enterprise Business Vocabulary and Rules, based in SVBR, fits the bill Steve Allworth Why do we build an Enterprise Data Model? In short.. To have a representation of the business as a set of inter-related business concepts that are agreed across the enterprise. The concepts must be readily translated into IT implementations To have a communication medium between business and IT To achieve a single agreed definition and structure of data across the enterprise To minimise redundancy and optimise re-use etc…..etc….. The traditional solution Selected members of the enterprise Specify a large, normalised E-R or UML Class Model To provide the design for Specific Databases Modern Reality is Different OLTP Databases Multiple OLAP Databases Target DimensionalDatabase Databases Columnar Databases Designs Multiple “Semantic Communities” XML Multiple Non Relational XSD Data Target OWL Structures And Unstructured the elephant Data in the room Unfortunately the Traditional EDM:Doesn’t allow for multiple communities Does not capture the full subtlety of the meaning of business concepts Overuses normalisation – forces a structural answer focused on DB design Inadequate for today’s technical requirements (target data areas) Imposes the chosen entity structure on ‘non technical’ use of the model ie data governance teams Remember Layers of Model Abstraction? Conceptual Adds Meaning Logical Adds structure Physical Adds implementation realities The Problem Conceptual EDM When we have only one form of So Butwe today, need we toit’s have use model logical model OKamany to useforms aat theof Conceptual logicalmodel model Level as Enterprise our Enterprise logical as our Model Model Logical EDM Physical WEB DWH ODB WEB A Conceptual Model ? What’s that? It’s a Semantic Model in the form of a Glossary or Taxonomy or Ontology SBVR The team who brought you UML, BPMN, … Semantics for Business Vocabulary and Rules Provides us with a standard for such a model Where did it come from? The SBVR is a synthesis of four disciplines: 1. terminology and vocabulary: the foundation for SBVR is ISO TC 37 (Terminology and Language and other Content Resources) and terminology standards ISO 704 and 1087 2. fact-oriented modeling with interpretation in formal logic: the precision of formal logic was added to ISO 1087-1 concepts, designations, and concept relations by fact-oriented modelling, which delivers precise meanings for SBVR Vocabulary and Behavioural Guidance that enables them to be transformed into IT system designs without losing or changing the business semantics; 3. linguistics and linguistic annotation of natural language grammar: target natural language grammar structures (external to SBVR) were provided by linguistics, ISO TC 37/SC 4 “Linguistic Representation” standards, and de-facto industry standards as input to the design of SBVR semantic formulations, which provided the basis for a future rich multilingual natural language notation for SBVR; 4. business practice of vocabulary and business rules: practical applicability of SBVR in organizations was provided by hundreds of collective man-years experience in business consultancy applying vocabulary and business rule approaches to the needs of organizations. SBVR – Key Ideas Communities Representation & Meaning ACME Vocabulary ACME WIDGETS The Engineers Engineering Vocabulary ISO Widget Included Vocabulary The Salesmen Sales Vocabulary Speech Community Represent ation Meaning Extension GAAP Vocabulary The Accountants Semantic Community Expression Vocabularies Glossaries, Taxonomies & Ontologies Supertype Concept Rules Facts Concepts Concepts, Facts and Rules Broader Concept Categorisation Scheme Related Concept Concept Rules Related Concept A not-too-deep dive We are focusing on the ‘Vocabulary’ area Basic Elements Communities & Vocabularies SBVR SEMANTICS FOR BUSINESS VOCABULARY & RULES Wikipedia 1. The branch of linguistics and logic concerned with meaning. 2. The meaning of a word, phrase, sentence, or text OK, So its about meaning What is meant by a word, sign, statement, or description; what someone intends to express or what someone understands Meaning Unit of knowledge created by a unique combination of characteristics Concept There is more, but not today (Question, Proposition) Concept Concept CONCEPT NOUN CONCEPT FACT TYPE links NOUN CONCEPT CUSTOMER (VERB CONCEPT) RULE based on CUSTOMER FACT TYPE RENTS CAR CUSTOMER CAN RULE ONLY RENT ONE CAR NOUNCAR CONCEPT Noun Concepts NOUN CONCEPT INDIVIDUAL CONCEPT Concept Instance MAZDA JPQ 777 GENERAL CONCEPT FACT TYPE ROLE Type of Concept Concept in a Fact Car Rental Car Verb Concepts VERB CONCEPT (FACT TYPE) BINARY FACT TYPE CHARACTERISTIC Rents is registered Car Car is registered Is registered Customer Customer Rents Rents Rental Car Rental Car Car Fact Type Role CAR General Concept Fact Type Fact Type Role Customer Rents Rental Car Fact Type Role Ranges Over Have same characteristics General Concept General Concept can have extra characteristic which says it fills the fact type role Concepts specialises generalises Concept Noun Concept Verb Concept (Fact Type) is in ranges over Individual Concept Object Type (General Concept Role Fact Type Role Binary Fact Type Characteristic Concepts Rents Person Customer Rental Car Car Is a MAZDA JPQ 777 ISO/EIC 1325:2003 Topic Map Person Rents Car RDF Triple Person MAZDA JPQ 777 Is registered Rents Car How does it help us model CONCEPT CONCEPT CONCEPT CONCEPT CONCEPT CONCEPT CONCEPT CONCEPT CONCEPT CONCEPT CONCEPT CONCEPT CONCEPT CONCEPT CONCEPT CONCEPT CONCEPT CONCEPT CONCEPT CONCEPT CONCEPT CONCEPT CONCEPT CONCEPT The birth of an Entity CONCEPT CONCEPT Name CONCEPT CONCEPT CONCEPT Definition CONCEPT CONCEPT CONCEPT CONCEPT Attributes CONCEPT Candidate Keys CONCEPT CONCEPT Primary Key CONCEPT Foreign Keys CONCEPT CONCEPT CONCEPT CONCEPT From the unformed soup of concepts Through the magic of normalisation SBVR & E-R SBVR abstracts E-R + also makes the modelling more precise 1. It provides the semantic layer for defining the elements of an entity Name Definition Primary Key(s) Relationships (& FK) Attributes 2. It provides the context within which the entity is valid Meaning and Representation Expression has Representation represents Meaning refers to Extension • Expression: things used to communicate (e.g., sounds, text, diagrams, gestures), but apart from their meaning — one expression can have many meanings • Representation: the connection between expression and a meaning. Each representation ties one expression to one meaning • Meaning: what is meant by a word (a concept) or by a statement (a proposition) – how we think about things • Extension: the things to which meanings refer, which can be anything Meaning and Representation Expression has Representation represents Meaning refers to Extension Designation Concept Descriptive Example Definition Also The character sequence “driver” The character sequence “operator of a motor vehicle” Designation of the concept ‘driver’ by the term “driver” Definition of the concept ‘driver’ as “operator of a motor vehicle” Note Reference Concept ‘driver’. How we think of drivers, what characterizes them The actual drivers of motor vehicles Designations Designation Term For General Concepts Name Non Verbal Designation For Individual Concepts Definition which describes the intension of a concept by stating the superordinate concept and the delimiting characteristics Definitions Concept Description of a concept by enumerating all of its subordinate concepts under one criterion of subdivision Definition Owned Definition Adopted Definition Speech Community Intensional Definition Characteristic Reference Extensional Definition Namespaces Expression has Fact Type Form Representation represents Meaning Designation is in is in Concept Namespace Vocabulary Namespace Attributive Namespace Is for Concept has an Attribute Concept described by an Attribute Attribute of Concept Reference Schemes - Keys is for Reference Scheme Concept uses uses Fact Type Role Car Model has Name Characteristic Tyre position is front Tyre position is right Subtyping Specialises Generalises Concept Categorisation Scheme Characteristic Incorporates Categorisation Type Segmentation General Concept Multi Faceted Subtyping Simple Subtyping Concept Concept Concept Discriminator Concept Concept Concept Concept Concept Concept Discriminator Concept Concept Concept Concept Discriminator Concept Concept Concept Discriminator Concept Concept Classification Modelling SBVR insists that the characteristics that discriminate are explicit Value TYPE SCHEME Fundamental Hierarchy SCHEME Value Value Value Value ROLE SCHEME Relationship Hierarchy Value Value SCHEME FT Role Value SCHEME FT Value Role SCHEME Value Value Value Value Value Fact Type Value Fact Type Relationship Subtypes are fact types. Fact Type Roles appear in the Fundamental Hierarchy For Example “IP is spouse of IP” Fact Type: IP is married to IP Fact Type Role : Spouse Representing a Fact Type Expression has Representation represents Meaning Designation Concept Placeholder “COMPANY appoints OFFICER” Is in Fact Type Form COMPANY appoints OFFICER Fact Type Country Code identifies Country Sentential Form Noun Form Country Code Fact: Company appoints Officer Expression Representation Meaning Rule: EU Rent must appoint at least 3 Officers There’s a bit more to it Even more But that’s for another day! Phew, that’s deep enough, lets move to another subject! Context - Communities & Vocabularies Language is expressed in uses has Semantic Community unites incorporates owns Speech Community Meaning Vocabulary is used to express Body of Shared Meanings • Semantic communities group people striving for a shared understanding of a domain • Speech communities create vocabularies to express the understanding of the domain in a certain language • Vocabularies contain entries that are used to express the meaning Speech Community & Vocabulary Speech Community Vocabulary Sharing Vocabularies Local and Global ACME Bank consists of ACME Common • Asset Business •• Concepts • Asset Building Equipment … Product • • Business • Concepts Loan Swap Revolving Limit … • Party • Business • Concepts • Party Organization Address … • Finance Business Unit Finance • • Business • Concepts • Credit Stock Cash … owned by uses Risk Business Unit • Risk • Business • Concepts • Exposure Mortgage Collateral … owned by In an Ideal World Financial Services Industry consists of ACME Bank consists of ACME Common • Asset Business •• Concepts • Asset Building Equipment … Product • • Business • Concepts Loan Swap Revolving Limit … • Party • Business • Concepts • Party Organization Address … • Regulator X Finance Business Unit Finance • • Business • Concepts • Credit Stock Cash … Reporting • Business •• Concepts • owned by ISO uses Risk Business Unit • Risk • Business • Concepts • Exposure Mortgage Collateral … Risk Revenue Capital Value … ISO 20022• Business •• Concepts • owned by uses Payment Counterparty Transfer … Vocabularies can reflect specific business rules applying to a speech community Semantic Model So we have a semantic basis for defining an ER or any other structure Conceptual The Business for Data Governance SBVR SemanticBasis Model Taxonomy Logical E-R Physical XML OWL NextGen SBVR & the EDM Knowledge Capture & Dissemination Regulation Risk and Compliance Complex Analytics Data Governance …… Why? EDM Business Metadata OLTP Databases OLAP Databases Dimensional Databases Columnar Databases now a Conceptual Model Shift of Emphasis Technical Metadata XML Collaborative Modelling XSD OWL Describing Concepts, Facts (& Rules) Unstructured Data Example National E-Health Transition Authority Clinical Knowledge Manager http://dcm.nehta.org.au/ckm/ The SBVR Specification www.omg.org/spec/SBVR/1.0/ Suggested reading order: 1. Chapter 11 – Business Vocabulary for describing Business Vocabularies 1. Chapter 12 – Business Vocabulary for describing Business Rules 1. Chapter 8 – Meaning and Representation Vocabulary 1. Annex E – EU-Rent example Tooling Tools focusing on Business Rules Open Source http://sbeaver.sourceforge.net/about/tools.php http://sourceforge.net/projects/orm Commercial http://rulexpress.editme.com/ http://www.businesssemantics.com/BusienssSemanticsLtd/products.htm Tooling Gartner: “Cool Vendor in Enterprise Information Management” Questions ? WWW.OZEMANTICS.COM.AU