Publish


Introduction
Objects
Links
Classes
Domains
Ontology

Introduction

The Publish menu provides a number of functions to publish new contents, edit existing contents and search the existing contents of the data base:

  • Objects: New instances of a class can be published for all existing classes.
  • Links: Instances of the object 'Link' describe the relationship between two instances of either the same or two different classes.
  • Classes: New classes can be defined or existing classes can be edited.
  • Attributes: The list of known attributes can be extended and existing attributes can be edited.
  • Domains: New domains can be defined that are then available for attributes. Controlled vocabularies are a special case of domains, and they are edited here, too.
  • Ontology: New terms in the ontology can be published or existing ones can be edited.

For several specific objects, special tools for publishing are provided. These groups include:

  • Publish References: is used to publish references to documents.

Classes and Objects

Classes and objects are the two main elements of object-oriented programming, and they are used here to structure the database. In general, a class is a self-contained, independent collection of variables and functions which work together to perform one or more specific tasks, while objects are individual instances of a class. For the database, the publishing focuses on the variables that describe a specific instance, which we refer to as attributes.

A class acts as a template or blueprint from which lots of individual objects can be created. When individual objects are created, they inherit the same generic properties and behaviors, although each object may have different values for certain properties, including the attributes.

For example, a class could be a template for a plastic. The template itself is not a plastic, but is a detailed structure for what a plastic is. An instance of this class in the database contains the information about a specific plastic and provides values for all attributes of this plastic. This instance is stored in the XML database.

In the context of programming, a class also comes with methods, which define how the objects in this class behave. The instances in a class inherit the behavoir from the class.

In order to allow for easy editing of the database, the Publish menu focuses on the definition of the class parts that are related to the attributes. All other aspects of a class have to be defined in the PHP or Python code.

Links

Note that the link concept introduced here is novel and not similar to some other widely used concepts for linking objects. In most concepts, objects contain information about their relationships to other objects. Here we make the choice to keep the information about relationships separate from the objects themselves as a meta information. For example, an object of the class "Link" could describe the relationship between an object of class "River" and another object of class "Country". Several links between a river and several countries would capture the characteristics of a transboundary river.