Conceptual modelling for the rest of us with ConML

Tweet about this on TwitterShare on FacebookBuffer this pageShare on RedditShare on LinkedInShare on Google+Email this to someone

César Gonzalez-Perez from the Institute of Heritage Sciences (Incipit) / Spanish National Research Council (CSIC) talks today about ConML, a conceptual modeling language suited for non-technical people.

Enter César.

Conceptual modelling is usually associated with the discipline of software engineering. But the truth is that modelling is a useful technique for shaping, exploring, documenting, understanding and communicating artefacts of many kinds, and not only software. In fact, and after having worked in the realm of cultural heritage for over 15 years, I can confidently state that people in the humanities and social sciences do a lot of conceptual modelling. They may not use the same terminology and degree of formalisation that we engineers do, but they still find conceptual modelling useful [3].

This post describes how and why we decided to create ConML, a conceptual modelling language for non-experts in information technologies or software engineering. It also describes the major design criteria of ConML, and our experiences with it so far in the field of cultural heritage. You can find more about ConML on or in [1].

Background and motivation

Humanities and social sciences are usually considered to be less technological than the natural sciences. Fields such as history, archaeology or anthropology are often perceived, at least superficially, to be “softer”, closer to people and further away from things, abstractions and machines. This does not make them simpler, but more complex, because:

  • They often incorporate intricate and fuzzy temporality issues, which do not allow for total order relationships.
  • Both ontic vagueness (i.e. imprecision) and epistemic vagueness (i.e. inaccuracy or uncertainty) are fundamental aspects that need to be considered.
  • The subjectivity of the observer (i.e. the person creating the model) cannot be discarded, because it is an important aspect of the information and needs to be taken into account.
  • Humanities and social sciences often work within a research paradigm different to the conventional hypothetico-deductive one that is common in the natural sciences; and they do not necessarily follow the problem/solution duality on which engineering is based.

Within a context like this, our colleagues at the Institute of Heritage Sciences ( and other similar organisations working in cultural heritage often create and use conceptual models to explore, conceptualise and communicate information. We have informally observed two facts about this again and again over the years. First of all, there is an ongoing struggle to find a good enough way to perform this modelling task, one that is capable to address the peculiarities outlined above. Secondly, modelling techniques “imported” straight from the engineering world, such as UML, fail catastrophically. They fail because:

  • They are designed with engineering in mind, under a problem/solution paradigm, and focusing on the creation of precise solutions to documented problems. People in the humanities and social sciences, conversely, want to explore, document and reason about situations, incorporating vagueness and subjectivity as much as necessary.
  • They are geared towards the creation of software systems, whereas people in the humanities and social sciences, most of the time, are interested in creating conceptual models for documentation and communication purposes. Software is a minor reason for modelling.
  • They are often too complex. It would be naïve to aim for an archaeologist or anthropologist to get a decent grasp on the latest UML specification. Even a UML profile that hides most of UML’s complexity would be a “leaky abstraction”.
  • They lack some features that are needed by people in the humanities and social sciences, such as explicit support for subjectivity modelling or clear semantics for null vs. unknown.

For these reasons, we decided to create ConML, a conceptual modelling language constructed from the ground up with the humanities and social sciences in mind, but which can be used to model anything. It is extremely simple, affordable, and easily understandable by non-experts in information technologies. Its full specification, including a formal metamodel, a graphical notation and examples, is under 30 pages long.

The ConML language

The ConML metamodel comprises 14 classes. The following figure (expressed in UML) shows most of them.

ConML metamodel

They key elements are Class, Attribute and Association, which have their usual meaning in object-oriented modelling languages. ConML implements multiple generalisation, but not multiple specialisation. This is equivalent to what is often termed “multiple inheritance” in programming, but the explicit presence of discriminants add clarity and avoid ambiguous situations. Repeated inheritance is managed through well-defined inheritance rules.

Another major feature of ConML is the inclusion of deferred features, named properties. In addition to attributes and semi-associations (which convey the expected meaning), properties are intended to model characteristics of classes and leave the concrete details unspecified until the model is refined and properties are fleshed out into either attributes or semi-associations.

All features, in addition, are intrinsically multi-valued, and there is built-in support for “null” and “unknown” semantics; “null” means absence of information, whereas “unknown” means presence of information but absence of knowledge about it. For example p.Name = unknown means that p has a name, but we don’t know what it is. This is very different from p.Name = null, which means that p does not have a name.

Finally, features in ConML may be marked as temporal, subjective or both. A temporal feature is one that, on change, allows for the creation of a new phase of the owner object; similarly, a subjective feature is one that, on change, allows for the creation of a new perspective of the object. Phases and perspectives are versions of the object along different and independent dimensions; the following figure shows an example.

Note that attribute Use of class Building is marked at temporal, and attribute Assessment is marked as subjective. Under the thick grey line, four versions of object b are shown. The line below the object identifier b: Building contains, in all four cases, a phase selector plus a perspective selector. The phase selector consists of an @ sign followed by a time expression (years, in this example). The perspective selector consists of a $ sign followed by a subject expression (people names in this example). You can see how the value of Assessment is different at the same point in time depending on who expresses the information; this is allowed by the class model since the attribute has been marked as “(S)”. Similarly, you can see how the value of Use changes over time regardless of who expresses it.

Experiences so far

ConML has been used so far for two major goals: the development of a large abstract reference model of cultural heritage [2], and teaching a recurring 1-week postgraduate course “Conceptual Modelling for Cultural Heritage”, aimed at archaeologists, architects and related professionals, and which has occurred four times now. Feedback obtained has been very positive, especially with regard to being able to explicitly model temporal and subjective issues, to the extreme simplicity of the language, and to the added level of formality that a semi-formal modelling language brings to the humanities and social sciences.

The future

We are currently working on the addition of model management infrastructure to ConML so that models can be easily extended, stored and used by users. We are also starting to work on the development of a tool set for non-experts that will implement these features, as well as a programmatic interface for integration and interoperability.

Please contact us on [email protected] if you are interested on ConML, or visit our web site on Thank you.


[1]          Gonzalez-Perez, C., 2012. A Conceptual Modelling Language for the Humanities and Social Sciences. In Sixth International Conference on Research Challenges in Information Science (RCIS 2012).  IEEE Computer Society. Valencia (Spain). 396-401.

[2]          Gonzalez-Perez, C. and C. Parcero Oubiña, 2011. A Conceptual Model for Cultural Heritage Definition and Motivation. In Revive the Past: Proceeding of the 39th Conference on Computer Applications and Quantitative Methods in Archaeology.  Amsterdam University Press. Beijing (China). 234-244.

[3]          Hug, C. and C. Gonzalez-Perez, 2012. Qualitative Evaluation of Cultural Heritage Information Modelling Techniques. ACM Journal on Computing and Cultural Heritage.


Tweet about this on TwitterShare on FacebookBuffer this pageShare on RedditShare on LinkedInShare on Google+Email this to someone
  1. Sergio
    • Cesar Gonzalez-Perez
      • juanmadodero
        • Cesar Gonzalez-Perez


Your email address will not be published. Required fields are marked *