Database Answers Father of all Data Models (Click for large image)
Printer Printer-friendly version

Home Ask a Question Best Practice Careers Contact Us Data Models Search Site Map
Canonical Data Model   
An Access Database is available.

This is an ERwin Model, and ERwin has a very powerful feature called Model Templates which provide great support for Design Patterns.
You can download the Chapter on Model Templates from Donna Burbank's excellent book called "Data Modeling made simple with CA ERwin Data Modeler r8".
Wikipedia has an interesting Entry on a Generic Data Model and another on ISO 15926 and here is a Vertabelo version

Here is our original ERwin ERD Version ...
Items such as food eaten in a meal are modelled as Products.

Our Canonical Data Model

We are using this Canonical Data Model as the foundation for a Canonical Data Platform as part of a Development Strategy for a family of related Applications based on the Customers and Services Design Pattern.
  • Commercial Properties
  • Logistics and shipments
  • Payments and Events
  • Recruitment Agencies
  • Talent Agencies
    I continued this thinking in the design of my Universal Data Model.
    We also have a page of Generic Data Models.

    If you have any comments or suggestions we would be glad to hear them.

  • Here is the user-friendly Conceptual Model (created in Word) ...

    Our Conceptual form of our Canonical Data Model

    Here is some interesting background from Robin Bloor describing Complex Event Processing putting forth his view that Event-driven Data is the new paradigm.
    Although we are practitioners in Data Modelling Best Practice here at Database Answers, we don't often get the chance to use the word 'Canonical'.
    When we do, we think of a Canonical Data Model as a 'stripped-down' Models which contains the basics for a specific application area.

    This makes it possible to use it for a number of different purposes :-
    1. To be a standard for messaging in an ESB/SOA environment.
    2. To provide a common point of agreement for all stakeholders.
    3. To define a Kick-Start for Master Data Management.
    4. To establish a starting-point for development of more detailed specific Data Models
    5. To serve as a translation between different data sources.
    This diagram shows our Generic Canonical Data Model which is Event-oriented and this has proved to be the best generic design in our experience.

    On May 11th. 2013, we added an Assets Entity in response to comments from John Giles.

    Here is Version 2 of our Conceptual Model ...

    Version 2 of our Conceptual form of our Canonical Data Model

    We have compared our Canonical Data Model with these models from practitioners whom we respect (listed alphabetically):-
  • Graeme Simsion's 'High-Level Supertypes'
  • John Giles' Integration Patterns.
  • Lawrence Sanders' Generic Organizational Data Model
  • Steve Hoberman's Very High-Level Data Model

    Here are some other Canonical Data Models on our Web Site :-
  • Canonical Logistics
  • Canonical Shipments with Messages
  • Customers and Events
  • Customers and Events Data Mart
  • Police Canonical Data Model
  • Data Mart
  • Getting Started December 17th
  • Getting Started Retail (Dec 27th)

    Here are some more interesting external Web Links :-
  • From IBM on SOA and Canonical Data Models
  • from EAI Patterns
  • Wikipedia on SBVR (Semantics for Business Volcabulary and Rules) - this helps provide guidelines for 'What is a Customer ?' (thanks to John Giles).
  • This shows our vision of collaboration between SMEs, with Shared Services ...

    Here is the Source Module

    Our Canonical Data Model
    Here are the shared services

    And here is the Target Module

    Our Canonical Data Model

    Barry Williams
    Principal Consultant
    Database Answers Ltd.
    London, England
    August 12th. 2015

    © DataBase Answers Ltd. 2015
    About Us Contact Us