Knowledge and the k.IM language

This section will contain the official, up-to-date documentation for the part of the k.IM language that is used to specify domain knowledge, including examples, “cookbook”-style recipes and just enough theory to support the use of k.IM in daily practice. This section, like its twin section dedicated to writing models in k.IM, will be structured in several sub-pages. While the contents are being developed, our article on semantics interoperability can be consulted as it contains much of the same material, albeit in a more technical discussion and without the pretense of completeness.


This page contains a brief outline of its final contents.

  • Semantics and how they can be used in modeling: quick recap of the classes of users and what they should expect to understand and use from this section.
    • Concept definition (for knowledge engineers)
    • Concept declaration (for data/model developers)
    • Concept query and observations (for all classes of users)
  • General overview of semantics: Observable semantics describe what observations are about: physical objects, events, processes, agents, or characteristics that may be “observed” or measured. The human observer recognizes relevant observables, e.g., elevation (a quality pertaining to a location on Earth), households (subjects, part of villages or cities), or surface water flow (a process observable in watersheds). Much of what we call “data” consist of observations of qualities. Their inherent subjects (e.g., the location on Earth whose elevation we observe) are often specified indirectly or implicitly. For observations to be made, and their interoperability to be possible, such identities must be fully specified and unchanging. For two observations to be compatible, their observables must, at a minimum, be described by the same concept.
  • Full information alignment has four, nearly independent, semantic dimensions: semantics of the observable, the observation, the context and the provenance. These address different dimensions in the five “W”s of knowledge: what, where, when, why, and how.
    1. Observable semantics describes what observations are about: physical objects, events, processes, agents, or characteristics that may be “observed” or measured.
    2. Observation semantics describe how the observation activity is carried out, including reference metrics to ensure that a state can be understood and mediated.
    3. Observations always happen in a context, providing observables with a when and where. The context is usually chosen a priori by the scientist who created the original artifacts, and the context of two compatible observations may differ subtly or greatly. Just like the scale of a geographical map determines what entities are visible in it (urban streets disappear in a 1:2,000,000 map), some observables only come into focus at a given geographical scale, and some phenomena emerge only at a given temporal scale. Context semantics describe these aspects for an observation.
    4. Observations are always made to fit a purpose, either by a human observer or as part of an automated computation chain. The lineage of each finished observation, provenance semantics, describe why an observation was made – important for reuse and curation.
  • How to ensure that two observations are compatible so that they can be linked in a scientific workflow without further validation.
  • An introduction with k.IM examples.
  • Types of knowledge: a simplified version of the contents of our article on semantics for interoperability.
    • Universals vs. Observables.
    • Hierarchy of observables: Continuants (subjects, qualities, structural relationships) vs. occurrents (processes, events, functional relationships)
    • The relationship between semantics and scale
    • Types of universals: identities, attributes, roles and realms
  • Authorities: using identities to bridge to vocabularies and thesauri. Examples and a list of the currently endorsed authorities. More detail in the dedicated page.
  • Constraints between observables; k.IM language syntax enforcement of correct semantics in data annotations and models.
  • The semantic of roles and their use in modeling.