Episteme - DML - Logical Types

Syntax of Logical Types

The logical types of a diagram are determined by the domain in which the diagrams occur. Types are denoted by the data namespace in which the domain objects are defined, followed by a name for that type. Since up until this point we have been working with canonical authors, the data namespace for domain objects has corresponded to the author's textgroup concatenated with the work in which the object is defined.

The syntax for a logical type is data_namespace:typename

Current Logical Type Collections

Archimedes (tlg0552)
Euclid (tlg1799)

Declaring and Referencing Logical Type Variables

For example, the syntax for declaring a Euclidean point variable labeled o takes the following form:

	<tlg1799.tlg001:point id='o'/>
      

Now lets say that I want to declare a fluid surface labeled abcd. Since abcd has o as its center, I need to declare the fluid surface and initialize its logical center by referencing o with a ref attribute.

	<tlg0552.tlg008:fluid_surface id='abcd'>
	  <tlg0552.tlg008:center_of_earth ref='o'/>
	<tlg0552.tlg008:fluid_surface>
      

Following naming conventions for variables can be extremely helpful. For example, I often use the prefix ul_ to denote a primitive manipulated in the text but not explicitly labeled.