modelling entities and the history of ideas

A few weeks ago I was watching my friend Nad and some of his colleagues map out the key semantic entities for a domain ready for creating an open repository on the Talis Platform. Then this morning, by chance, I just came across an entry in the Portland Pattern Repository on “Stars: A Pattern Language for Query Optimized Schema1. This described a form of entity relationship modelling where one identifies “while business entities” (key business things like transactions) and then ‘dimensions’ that relate to them looking specifically for “people, places and things” … and time as a special case. The idea is that information about, say, a product, a customer or a salesperson tends to be scattered in different tables, linked at best implicitly by shared values (e.g. , a product code.) which may not actually be the key to any specifoc table. By giving these key entities their own tables, the linkage between them becomes obvious and queries are easy to form.

This sounded just like the focus in Semantic Web ontologies on having a shared set of classes and a unique identifier for entities in those classes to enable “linked data”. In SemWeb we have a class and the entity URI, but serving the same goal as the table and row key did in the “Stars” pattern, more than a decade ago.

However, this then reminded me again of the similarities between current ontologies and Extended Entity Relationship Models which were popular at least 20 years ago (I recall colleagues at York using this in the Aspect IPSE project2 in the Alvey programme). There were variants of EERM, but key concepts were (like standard ER) to have relationships explicitly defined – usually in tables containing ONLY foreign keys, and (unlike standard ER) to allow sub-typing/sub-classes (e.g. person > employee > academic). Like Semantic Web ontologies, the relationships were reified into tables and became first class, unlike SemWeb, ternary and higher order relationships were allowed, not just binary ones.

I was half way through writing Nad a mail with the Stars link, and was referring to the EERM and did a Google to find the correct acronym … and then that mail turned into this blog, partly because it was getting long and partly because it was so hard to find good references to EERM. There was no Wikipedia page, minimal entries in a few online dictionaries and even hard to find good paper references. The best link seems to be a 1994 book by Martin Gogolla3, but that was at least 8 years after I knew it was popular, but I guess when it had become stable. A bit more Googling unearthed a 1986 Computer Surveys article4 (whch I could NOT find using “extended entity-relationship model” in ACM DL’s own search) and eventually a 1981 paper5, although I’m not sure the latter uses the term in the same way as later EERM.

It was interesting and alarming to find, yet again, how difficult it is to find certain things in the web even in computing… like anything that happened more than 10 years ago! Some of this is to do with effective searching (like the ACM DL search), some because it is not there. However, as we rely more and more on online search, the recency effects produced by combinations of search ranking and availability can only get worse. This feels more like the attributes of pre-literate culture … the new digital stone age?

  1. also reported in: Peterson, S. 1995. Stars: a pattern language for query-optimized schemas. In Pattern Languages of Program Design, J. O. Coplien and D. C. Schmidt, Eds. ACM Press/Addison-Wesley Publishing Co., New York, NY, 163-177. [entry@ACM DL][back]
  2. Hitchcock, P. 1989. The process model of the aspect IPSE. SIGSOFT Softw. Eng. Notes 14, 4 (May. 1989), 76-78. DOI= http://doi.acm.org/10.1145/75111.75120[back]
  3. M. Gogolla. An Extended Entity Relationship Model. Fundamentals and Pragmatics. Springer, Berlin, LNCS 767, 1994[back]
  4. Teorey, T. J., Yang, D., and Fry, J. P. 1986. A logical design methodology for relational databases using the extended entity-relationship model. ACM Comput. Surv. 18, 2 (Jun. 1986), 197-222. DOI= http://doi.acm.org/10.1145/7474.7475[back]
  5. P. De, A. Sen and E. Gudes, An Extended Entity-Relationship Model with Multi Level External Views, in Proceedings of ER’81, North-Holland, 1981, pp. 455-472.[back]