concepts
This page describes the main concepts used by Datasphere. For each of these concepts, this page defines the vocabulary used. Where possible, alternative terms are given. These alternative terms are given to facilitate the understanding of the reader who already has experience in databases.
This chapter is aimed at readers with different technical backgrounds and experience. It explains each concept in (up to) 3 different ways: a description, the corresponding JSON data, and a UML class diagram.
Note
database
A database is a set of information structured to be easily accessible, organized and updated. It is a way to store and analyze information on a given theme.
The vocation of a database is not to model the entirety of reality, but only the concepts, or entities, necessary to represent a given theme. In this, and especially in a scientific context, a database also represents a vision, a certain way of approaching a research problem, intrinsically dependent of the team members who participate in its construction.
All entities in a database, along with their respective attributes, is called the schema of this database.
This schema represents the modeling of the specific theme, sometimes the answer to the problematic. It is the vision of the person or team who designed the database.
To be able to manage every database imaginable, Datasphere abstracts them as 5 main concepts : entity, property, attribute, item, metadata.
property
A property is a reusable characteristic that can be declared differently by one or more entities of a database.
Each property is defined by :
a label (name) to identify it;
a description to understand when to use it ;
a type which constrains the value it can take;
an URI to uniquely identify it.
entity
An entity is a subject, a concept, related to the topic of the database it belongs to. An entity is characterized by attributes defining all information necessary to its description.
The list of attributes of an entity is not necessarily intended to be exhaustive. It is simply a matter of modeling what is needed in the context of a specific theme.
attribute
An attribute is the use by an entity of a particular property.
In addition to the entity and property it links, each attribute is defined by a cardinality telling whether it is repeatable (or not), and mandatory (or not).
An attribute can specialize (ie. overload) its corresponding property’s label, description or type. This doesn’t change the property in any way. This allows to make its usage clearer or make it easier to understand in the context of the entity.
Note
In practice, the cardinality
of an attribute is represented by a minimum (min
) and maximum (max
) number of occurrences
of the relevant metadata for each element of the entity to which this attribute belongs.
For example:
if the metadata is mandatory for each element of this entity,
min
is 1if the metadata is optional,
min
is 0if the metadata is not repeatable,
max
is 1if the metadata is repeatable,
max
is … as many as you like!
item
An item is a composite piece of information. Each item is the concrete manifestation of one entity. Consequently, each of the entity’s attributes has a concrete value: the item’s metadata.
metadata
A metadata is an atomic piece of information. It is necessarily relative to an attribute. It only has meaning if it is associated with other metadata; the aggregate thus formed is an item.
reference
A reference is a unique, direct link from one item to one other item. It is a specific type of metadata.
relationship
A relationship is an association between two items.