Skip to main content

TaxisBase Terminology

TaxisBase

Objects

In TaxisBase everything can be linked to an object from one or more entities. Entities created from entity types are linked to an object with the alias of the object. This way we can capture the multi-faceted nature of many topics e.g. (Claudio Arrau - person, pianist, film actor).

name attribute

  • The name attribute is present in all objects. Based on the name attribute we can classify the object in broad categories such as Person, Organization or specific types that are notable for the object e.g. pianist, city
    • person: p.claudio_arrau
    • pianist: pianist.claudio_arrau
    • object: obj.claudio_arrau
    • name: claudio_arrau

alias attribute

  • The alias attribute is also used to access quickly the information with a user friendly, easy to memorize label.

key attribute

  • TaxisBase users visually identify entities by
    • type
    • namespace
    • name
    • key
    • title
    • subtitle
    • descriptive information

Every entity, except identifiers and values, has a key, which is a string. A key in TaxisBase is a unique handle to access easily a specific record and also name related records to an object. The key is composed of a namespace and a name. For example sandbox.chris_evans in the case we have multiple entities with the same name, the key must be disambiguated. This is done automatically by adding an extension .d<num> (see the example).

This naming mechanism allows you to refer to entity types, entity objects and attributes by specifying keywords. It is the same idea with Datomic idents, entity identifiers. Idents associate a programmatic name (a keyword) with an entity internal database-unique id, by setting a value for the :db/ident attribute (see also datascript tutorial - entity identity).

  • Based on the name of an entity object e.g. claudio_arrau we create other synthetic names for
    • alias:: sandbox.obj.claudio_arrau
      object:: sandbox.obj.claudio_arrau
      person:: sandbox.p.claudio_arrau
      pianist:: sandbox.pianist.claudio_arrau
      descriptions:: descr.en.claudio_arrau, descr.es.claudio_arrau, descr.el.claudio_arrau
  • This way we can create easily references and access information of any entity/object block

Disambiguation

  • In the case we want to disambiguate multiple entities in the same namespace with the same key, add extension .d<num>
  • The subtitle is used to disambiguate entities, for person we can also use the full_name
namespacewikidatanamekeytitlesubtitlefull_name
sandboxQ178348chris_evanssandbox.chris_evansChris EvansAmerican actorChristopher Robert Evans
sandboxQ51990270chris_evanssandbox.chris_evans.d2Chris EvansresearcherChristopher David Huw Evans
sandboxQ2964710chris_evanssandbox.chris_evans.d3Chris EvansEnglish television and radio presenterChristopher James Evans
sandboxQ303577chris_evanssandbox.chris_evans.d4Chris EvansWelsh politician and MP (born 1977)Christopher Evans
sandboxQ466583chris_evanssandbox.chris_evans.d5Chris EvansAustralian politicianChristopher Vaughan Evans
sandboxQ17490263chris_evanssandbox.chris_evans.d6Chris EvansAmerican basketball playerChristopher Evans
sandboxQ5106513chris_evanssandbox.chris_evans.d7Chris EvansWelsh footballer (born 1962)Christopher Brian Evans

namespace

  • Just as attributes can be grouped into types, instances of types themselves are grouped into namespaces. Each namespace is given a unique name e.g. (people, user, music, film, …)
  • Each type is also given a unique name that looks like a path (people.person, people.gender) and it has as prefix the namespace in which it belongs.

content Format

  • The wikipages attribute is reserved for any wikipedia web page or other wiki resource, **
  • The wikidata attribute is reserved for any wikidata web page
  • Use official_website for websites that are officially recognised and maintained by the the organization, company, or individual to which it belongs. Official webpages are typically considered the most reliable and accurate source of information about the organization or individual they represent.
  • Use webpage web page resources with html content for reading from normal users except the purpose here is to access the content based on the location of the container
  • Use uri for web page resources that their sole purpose is to identify any concept, entity, etc… for example URI resources that are used in a well-defined ontology like wikidata, dbpedia, etc… the important part here is the identifier, (number, string) that is part of the URI the purpose is to identify a particular resource
  • Use json, nt, rdf, txt, ttl, jsonld for a web page resource with content that has the corresponding format

Examples

templates

  • Use templater to access a user-defined template
  • Try to find and use templates in the base domain to make your data interoperable
  • Templates represent types, i.e. a collection of entities that share common attributes

Examples

  • type::
  • label::
  • description::
  • summary::
  • aka::
  • language::

This is the template we use to describe an object. In many cases we have two kinds of templates, full templates to describe something with all attributes that we managed to collect and the normal template with a limited set of attributes that the user selects to create a new entity.

Attributes

In TaxisBase attributes are entities themselves. They are described by unique keys composed of a namespace and a name.
Attributes are grouped into types and types themselves are grouped into namespaces (e.g. domain namespace)
Types and attributes are uniquely described by keys. These keys are arranged in a file directory-like hierarchy
Attributes are multi-value by default.

These are the most common attributes that we meet in several TaxisBase types

  • abbreviation
  • abstract
  • summary
  • aka
  • alias
  • authority
  • code
  • comment
  • definition
  • description
  • example
  • image
  • label
  • language
  • maintainer
  • name
  • notes
  • object
  • title
  • isa
  • webpage
  • vocabulary
  • video

Then an entity type is a collection of attributes, for example to generate a namespace we can use any of the following attributes that can be defined in a template.

  • key
  • name
  • label
  • ns
  • isa
  • description
  • abbreviation
  • usage

When these attributes take values then we have an instance of an entity type. In TaxisBase instances of an entity type are called entities.
Everything in TaxisBase is an entity. We use entities to represent types, namespaces, people, cities, etc…

Type

A type is a conceptual container of related attributes commonly needed to describe a certain aspect of an entity.
An entity can be assigned one or more types.
As attributes are grouped into types, types are usually grouped into domains. Domains, types and attributes are given unique human readable IDs (keys) in a namespace.name hierarchy.

Enumerated types

  • An enumerated entity type represents a fixed set of values that an attribute can take. Enumerations are typically used when there is a limited and well-defined set of possible values
  • Enumerated types have three namespaces:
    • the enumeratednamespace that includes all enumerated entity types
    • the datatype namespace because all enumerated types are datatypes.
    • and some other namespace name that is a collection of entity types

Metadata

  • Types of metadata

    • Descriptive metadata describes the object or data and gives the basic facts: who created it (i.e. authorship), title, keywords, and abstract.
    • Structural metadata describes the structure of an object including its components and how they are related.  It also describes the format, process, and inter-relatedness of objects. It can be used to facilitate navigation, or define the format or sequence of complex objects.
    • Administrative metadata includes information about the management of the object and may include information about: preservation and rights management, creation date, copyright permissions, required software, provenance (history), and file integrity checks.

Dublin Core Metadata Initiative

PropertyDescription
creatorany person, organization, or group that is primarily responsible for the creation of the content
contributorany person, organization, or group that contributed to the creation of the content but was not primarily responsible for it
coveragespatial and/or temporal coverage of the data
creation_datecreation date
publication_datepublication date
descriptiongeneral description of the original source
languagelanguage of the original source
publisherpublisher, person, or organization that made the source publicly available
rightsdescription of or link to license information for the original source
sourcehyperlink or other reference to the source of the data as a whole
titletitle of the original source

Subject Terms: according to the Dublin Core Metadata Initiative (DCMI), refer to a set of keywords or phrases used to describe the primary topic or theme of a digital resource. Subject Terms provide a way to categorize and classify resources based on their content, allowing users to more easily discover and access relevant information. These terms help in organizing and facilitating efficient searching, browsing, and retrieval of digital content within collections, databases, or information systems.

Domain vs Namespace

  • Namespace is the general mechanism for organizing and uniquely identifying entities, types, and keys in the graph. A namespace simply provides a scope for names/identifiers. Many things can be namespaces:
  • Domain is a special kind of namespace used to organize the ontology (schema) around a specific subject area. A domain is a namespace that has a particular semantic role: organizing schema elements (types, properties, etc.) for a subject area.

Key distinction

NamespaceDomain
Organizes identifiersOrganizes knowledge
Primarily structuralPrimarily semantic
Can contain IDs, keys, types, properties, or other namespacesContains types and properties related to a topic
Examples: /m, /en, /userExamples: /music, /film, /people

Relationship

Namespace
├── Identifier namespaces
│   ├── /m
│   ├── /en
│   └── /guid

└── Domain namespaces
    ├── /music
    ├── /film
    ├── /people
    └── /location

Every domain is a namespace, but not every namespace is a domain.

For example:

  • /en is a namespace for English-language keys, but it is not a domain.
  • /music is both a namespace and a domain, because it defines music-related schema elements such as /music/artist and /music/album.

In short, a namespace answers “How is this named?” while a domain answers “What area of knowledge does this belong to?”.

Role

  • Generally speaking individuals can play multiple roles based on the position they have in a given society, social structure, company, project and the activity they participate
  • Terms and examples

  • term:: position
    description:: social role with a set of powers and responsibilities within an organization (every position is also a role)
    examples:: minister, secretary, reporter, cardinal, New York City Schools Chancellor, Mayor of Trujillo, Duke of Estonia, prosecutor, Bishop of Ramsbury, lead guitarist, music director, chief cook, military safety officer, vice president
    uri:: https://www.wikidata.org/wiki/Q4164871
    instances:: 125269
    property_label:: position_held
    property_uri:: https://www.wikidata.org/wiki/Property:P39
  • term:: role
    description:: set of behaviours, rights, obligations, beliefs, and norms expected from an individual that has a certain social status
    examples:: runner, lover, defendant, user, political prisoner, novice, citizen, respondent, speaker, developer, observer, entertainer, sponsor, inventor, hermit, virtuoso, oracle, warlord, pedestrian, cinematographer, hacker, troll, consumer, whistleblower, gangster, student, trainee, trainer, ambassador, expert, disciple, master, amateur, collector, seller, curator, teacher, organizer, director, chief, officer, president, reviewer,
    uri:: https://www.wikidata.org/wiki/Q214339

  • term:: social position
    description:: position of an individual in a given society and culture
    uri:: https://www.wikidata.org/wiki/Q1807498
  • term:: social status
    description:: position within social structure
    examples:: husband, father, wife, mother, child, plebeian, patrician, ephebos, billionaire, magnate, millionaire, emigrant, hierodule, retired, noble, authority, refugee, shogun, celebrity, samurai, beggar
    uri:: https://www.wikidata.org/wiki/Q189970

Occupation/Profession

  • occupation and profession are also applied to individuals based on a permanent or long-time activity they participate in
  • Terms and examples

  • term:: occupation
    description:: label applied to a person based on an activity they participate in
    examples:: secretary, politician, minister, barber, clarinetist, farmer, singer, librarian, nurse, dentist, actor, writer, composer, teacher, physician, architect, driver, fisher, worker, boxer, sailor, pianist, thief, musician, waiter
    uri:: https://www.wikidata.org/wiki/Q12737077
    instances:: 4267
    property_label:: occupation
    property_uri:: https://www.wikidata.org/wiki/Property:P106
  • term:: profession
    description:: occupation requiring specialized training
    examples:: flight computer scientist, engineer, software engineer, software architect, electrical engineer, marine engineer, military engineer
    uri:: https://www.wikidata.org/wiki/Q28640
    instance:: 8592
    property_label:: field_of_work
    property_uri:: https://www.wikidata.org/wiki/Property:P101

Activity

  • description:: series of actions done by an agent which results in an external change of state
    uri:: https://www.wikidata.org/wiki/Q1914636
    examples:: desktop publishing, medical diagnosis, camping, image editing, safari, reading, writing, whale watching, film watching, film distribution, driving, selling, typing, knife sharpening

Second-order class

  • description:: metaclass whose instances are classes of individuals
    uri:: https://www.wikidata.org/wiki/Q24017414
    examples:: type of wood, classification in sports, payment method, aircraft class, aircraft model, aircraft type, computer form factor, classification of human settlements (locality)

What is a Taxonomy?

A taxonomy is a set of concepts organized into a hierarchical structure covering a topical domain. You could think of it as a structured vocabulary. Taxonomies are used to organize and label information, data, or objects in a way that makes them easier to find, analyze, and use.

The structure we use in TaxisBase is

  • Domain
    • Specialty
      • Field
        • Topics

Examples:

  • Domain: Information Technology

    • Specialty: Software Engineering
      • Field: API (Application Programming Interface)
        • Topic: Facebook Graph API
  • Domain: linguistics

    • Specialty: lexicography
      • Field: terminology
        • Topic: taxonomy