Skip to content
Alessandro Gubitosi edited this page May 22, 2014 · 3 revisions

This page contains the default ontology tag definitions, these offsets represent the default tags used in the objects comprising the ontology and the core objects of this library.
Each entry is a definitions that holds the global identifier of the tag.

Internal offsets

Variable name Value Type Description
kTAG_NID _id Native identifier (_id) This offset is the primary key of all persistent objects, it doesn't have a specific data type and all objects must have it. This attribute is internal and it is not defined in the ontology
kTAG_CLASS _class Class (_class) This offset represents the object class name, this string is used to instantiate the correct object once loaded from a container. This attribute is internal and it is not defined in the ontology
kTAG_SHAPE_TYPE type Shape type (type) This offset represents the type of a shape, this string is used to indicate what type of object the shape represents. This offset is followed by the [kTAG_SHAPE_COORD} offset that contains the shape geometry
kTAG_SHAPE_GEOMETRY coordinates Shape coordinates (coordinates) This offset represents the geometry of a shape, this string is used to indicate the coordinates list that comprise a shape geometry. This offset is preceded by the kTAG_SHAPE_TYPE offset that contains the shape type

===

Object identification tags

Variable name Value Type Description
kTAG_NAMESPACE 1 Namespace (:namespace)
  • Type: [kTYPE_REF_TERM}
This tag is a reference to a term object, it is a string representing the native identifier of a term. Namespaces are used to disambiguate homonym local identifiers in order to come up with a global unique identifier. This identifier is persistent
kTAG_ID_LOCAL 2 Local identifier (:id-local) This tag is a string which represents the local identifier of an object. Local identifiers are unique within their namespace and are persistent. In general, the namespace is concatenated to the local identifier to form the persistent identifier
kTAG_ID_PERSISTENT 3 Persistent identifier (:id-persistent This tag is a string which represents the persistent identifier of an object. Persistent identifiers are unique across namespaces, they are global, in that they include the namespace and they are persistent. In general, this identifier is the concatenation of the namespace and the local identifier
kTAG_ID_VALID 4 Valid identifier (:id-valid This tag is a string which represents the persistent global identifier of the object that is considered the valid choice. This is generally used by legacy or obsolete objects for referring to the valid, current or official object
kTAG_ID_SEQUENCE 5 Sequence number (:id-sequence
  • Type: [kTYPE_INT}
This tag is an integer sequence number which is automatically assigned to objects just before they are committed. This represents an identifier unique to the collection to which the object belongs. This identifier is not persistent, in that it depends on the order in which the object was committed
kTAG_ID_GRAPH 6 Graph reference (:id-graph)
  • Type: [kTYPE_INT}
This tag is an integer value used to reference a graph element. Nodes, tags, entities and units are represented in a graph by nodes, while edges reference graph edges. This offset is used to link objects of the document store with objects in the graph store

===

Object classification tags

Variable name Value Type Description
kTAG_DOMAIN 7 Domain (:unit:domain)
  • Type: [kTYPE_ENUM}
This tag represents the domain of a unit object, it is an enumerated value which represents the kind or nature of the object, this type of property is used to disambiguate objects of different domains within the same collection
kTAG_AUTHORITY 8 Authority (:unit:authority) This tag is a string representing the identifier or reference of the entity object which is responsible for the identification of the unit, or which is the author of the information regarding the unit
kTAG_COLLECTION 9 Collection (:unit:collection) This tag is a string representing the name or code of the collection to which a unit object belongs. It is used to disambiguate units sharing the same domain and identifier; it may also be used to indicate the group to which a unit belongs
kTAG_IDENTIFIER 10 identifier (:unit:identifier) This tag is a string representing the identifier of a unit object, this value must be unique among unit objects of the same domain and collection
kTAG_VERSION 11 Version (:unit:version) This tag is a string representing a version or an iteration of a unit object. This attribute can be used to differentiate between different iterations of the same object, or to provide a time stamp for the object's information
kTAG_SYNONYM 12 Synonym (:synonym) This tag holds a list of strings representing alternate identifications of the object. These identifiers should not be defined in the current database, nor available as a link, these should be external known synonyms of te current object

===

Object reference tags

Variable name Value Type Description
kTAG_TAG 13 Tag (:tag)
  • Type: [kTYPE_REF_TAG}
This tag holds a string representing a tag object reference, it is the tag native identifier of the tag object it references
kTAG_TAGS 14 Tags (:tags) This tag holds a list of strings representing tag object references, these elements are the native identifiers of the tag objects they reference
kTAG_TERM 15 Term (:term)
  • Type: [kTYPE_REF_TERM}
This tag holds a string representing a term object reference, it is the native identifier of the term object it references
kTAG_TERMS 16 Terms (:terms) This tag holds a list of strings representing term object references, these elements are the native identifiers of the term objects they reference
kTAG_SUBJECT 17 Relationship subject (:relationship:subject)
  • Type: [kTYPE_REF_NODE}
This tag holds an integer representing a node native identifier, it is a reference to a node object through its sequence number. This tag describes the origin vertex of a directed graph relationship
kTAG_GRAPH_SUBJECT 18 Graph relationship subject (:relationship:graph-subject)
  • Type: [kTYPE_INT}
This tag holds an integer representing the reference to a graph node. This tag describes the origin vertex of a directed graph relationship in the graph, this property is used by edge objects to reference the subject node in the graph
kTAG_PREDICATE 19 Relationship predicate (:predicate)
  • Type: [kTYPE_REF_TERM}
This tag holds a term object reference, it is a string that represents the term native identifier. This tag describes the predicate of a directed graph relationship
kTAG_OBJECT 20 Relationship object (:relationship:object)
  • Type: [kTYPE_REF_NODE}
This tag holds an integer representing a node native identifier, it is a reference to a node object through its sequence number. This tag describes the destination vertex of a directed graph relationship
kTAG_GRAPH_OBJECT 21 Graph relationship object (:relationship:graph-object)
  • Type: [kTYPE_INT}
This tag holds an integer representing the reference to a graph node. This tag describes the destination vertex of a directed graph relationship in the graph, this property is used by edge objects to reference the subject node in the graph
kTAG_ENTITY 22 Entity reference (:entity)
  • Type: [kTYPE_REF_ENTITY}
This tag holds a string representing an entity native identifier, it is a reference to an entity object
kTAG_MASTER 23 Master (:master)
  • Type: [kTYPE_REF_SELF}
This tag holds value representing a reference to an object of the same class as the holder. Master objects represent either the master copy of the object, or an object that contains information shared by several alias objects which are those featuring this property

===

Object category tags

Variable name Value Type Description
kTAG_CATEGORY 24 Category (:category)
  • Type: [kTYPE_SET}
This tag holds an enumerated set of term object references which represent the different categories to which an object belongs
kTAG_DATA_TYPE 25 Data type (:type:data)
  • Type: [kTYPE_ENUM}
This tag holds a term object references which indicate the data type of a data property. This type corresponds to the primitive data representation and structure of a data property
kTAG_DATA_KIND 26 Data kind (:type:kind)
  • Type: [kTYPE_SET}
This tag holds an enumerated set of term object references which indicate the cardinality and requirements of a data property. This type corresponds to the attributes of a data property, not to its type
kTAG_TERM_TYPE 27 term type (:type:term)
  • Type: [kTYPE_SET}
This tag holds an enumerated set of term object references which indicate the type of a term object. This value qualifies the term type, it indicates the context in which the term is used
kTAG_NODE_TYPE 28 Node type (:type:node)
  • Type: [kTYPE_SET}
This tag holds an enumerated set of term object references which indicate the type of a node object. This value qualifies the node type, it indicates the context in which the node is used

===

Object description tags

Variable name Value Type Description
kTAG_NAME 29 Name (:name) This tag holds a string representing the name of an object*. This is generally the way humans refer to the object and it is not related to a specific language
kTAG_LABEL 30 Label (:label)
  • Type: [kTYPE_LANGUAGE_STRINGS}
This tag holds a list of strings representing labels of an object in several languages*. Each element holds the language in which the label is expressed in and the text of the label
kTAG_DEFINITION 31 Definition (:definition)
  • Type: [kTYPE_LANGUAGE_STRINGS}
This tag holds a list of texts representing definitions of an object in several languages*. Each element holds the language in which the definition is expressed in and the text of the definition. A definition should provide detailed information on an object without reference to the context
kTAG_DESCRIPTION 32 Description (:description)
  • Type: [kTYPE_LANGUAGE_STRINGS}
This tag holds a list of texts representing descriptions of an object in several languages*. Each element holds the language in which the description is expressed in and the text of the description. A description should add context related information to the definition of the object
kTAG_NOTE 33 Notes (:notes) This tag holds a series of notes or comments in a list of texts unrelated to a specific language
kTAG_EXAMPLE 34 Examples (:examples) This tag holds a series of examples or instances in a list of texts unrelated to a specific language

===

Object statistical tags

Variable name Value Type Description
kTAG_UNIT_COUNT 35 Units count (:unit-count)
  • Type: [kTYPE_INT}
  • Kind: [kTAG_PRIVATE_MODIFY}
This tag holds an integer value representing the number of unit objects featuring a specific property. This is generally used to assess tag usage frequency in unit objects
kTAG_ENTITY_COUNT 36 Entity count (:entity-count)
  • Type: [kTYPE_INT}
  • Kind: [kTAG_PRIVATE_MODIFY}
This tag holds an integer value representing the number of entity objects featuring a specific property. This is generally used to assess tag usage frequency in entity objects
kTAG_TAG_COUNT 37 Tag count (:tag-count)
  • Type: [kTYPE_INT}
  • Kind: [kTAG_PRIVATE_MODIFY}
This tag holds an integer value representing the number of tag objects that reference the current object
kTAG_TERM_COUNT 38 Term count (:term-count)
  • Type: [kTYPE_INT}
  • Kind: [kTAG_PRIVATE_MODIFY}
This tag holds an integer value representing the number of term objects that reference the current object
kTAG_NODE_COUNT 39 Node count (:node-count)
  • Type: [kTYPE_INT}
  • Kind: [kTAG_PRIVATE_MODIFY}
This tag holds an integer value representing the number of node objects that reference the current object
kTAG_EDGE_COUNT 40 Edge count (:node-count)
  • Type: [kTYPE_INT}
  • Kind: [kTAG_PRIVATE_MODIFY}
This tag holds an integer value representing the number of edge objects that reference the current object
kTAG_TAG_OFFSETS 41 Tag offsets (:offset:tag) This tag holds an array of strings representing the set of offset paths in which the tag was referenced as a leaf offset in tag objects. This property is held exclusively by tag objects
kTAG_TERM_OFFSETS 42 Term offsets (:offset:term) This tag holds an array of strings representing the set of offset paths in which the tag was referenced as a leaf offset in term objects. This property is held exclusively by tag objects
kTAG_NODE_OFFSETS 43 Node offsets (:offset:node) This tag holds an array of strings representing the set of offset paths in which the tag was referenced as a leaf offset in node objects. This property is held exclusively by tag objects
kTAG_EDGE_OFFSETS 44 Edge offsets (:offset:edge) This tag holds an array of strings representing the set of offset paths in which the tag was referenced as a leaf offset in edge objects. This property is held exclusively by tag objects
kTAG_ENTITY_OFFSETS 45 Entity offsets (:offset:entity) This tag holds an array of strings representing the set of offset paths in which the tag was referenced as a leaf offset in entity objects. This property is held exclusively by tag objects
kTAG_UNIT_OFFSETS 46 Unit offsets (:offset:unit) This tag holds an array of strings representing the set of offset paths in which the tag was referenced as a leaf offset in unit objects. This property is held exclusively by tag objects
kTAG_OBJECT_TAGS 47 Object tags (:object-tags)
  • Type: [kTYPE_INT}
  • Kind: [kTYPE_LIST, [kTAG_PRIVATE_MODIFY}, [kTYPE_PRIVATE_DISPLAY}
This tag holds an array of elements holding a tag sequence number and all the leaf offset paths where the tag is referenced
kTAG_OBJECT_OFFSETS 48 Object offsets (:object-offsets)
  • Type: [kTYPE_ARRAY}
  • Kind: [kTAG_PRIVATE_MODIFY}, [kTYPE_PRIVATE_DISPLAY}
This tag holds a *list of elements/em> holding a tag sequence number as the key and as value the list of offset paths where the tag was used as a leaf offset
kTAG_OBJECT_REFERENCES 49 Object references (:object-references)
  • Type: [kTYPE_ARRAY}
  • Kind: [kTAG_PRIVATE_MODIFY}, [kTYPE_PRIVATE_DISPLAY}
This tag holds the *list of object references/em> featured by the current object, the property is an array, indexed by collection name with as value the references to objects in that collection
kTAG_TAG_STRUCT 50 Tag container structure (:tag:struct)
  • Type: [kTYPE_REF_TAG}
  • Kind: [kTAG_PRIVATE_MODIFY}, [kTYPE_PRIVATE_DISPLAY}
This tag is used to provide the the current tag's container. If set, it indicates that the current offset should be stored in the offset defined by the property. This means that the referenced tag must be a structure and that when an object featuring this tag is stored in an object, the container structure must be created if not yet there
kTAG_TAG_STRUCT_IDX 51 Container structure list index (:tag:struct-index)
  • Type: [kTYPE_REF_TAG}
  • Kind: [kTAG_PRIVATE_MODIFY}, [kTYPE_PRIVATE_DISPLAY}
This tag indicates which offset in the current structure acts as the index. This means that the tag object holding this property must be a structure and a list, the value of this property is a tag native identifier referencing the element of the structure that represents the structure index or key. No two elements of the list may have an offset, defined by the current attribute, with the same value

===

Property description tags

Variable name Value Type Description
kTAG_MIN_VAL 52 Minimum value (:min-val)
  • Type: [kTYPE_FLOAT}
This tag holds a floating point number representing the minimum value occurrence of the property
kTAG_MIN_RANGE 53 Minimum range (:min-range)
  • Type: [kTYPE_FLOAT}
This tag holds a floating point number representing the minimum value that a property may hold
kTAG_MAX_VAL 54 Maximum (:max-val)
  • Type: [kTYPE_FLOAT}
This tag holds a floating point number representing the maximum value occurrence of the property
kTAG_MAX_RANGE 55 Maximum range (:max-range)
  • Type: [kTYPE_FLOAT}
This tag holds a floating point number representing the maximum value that a property may hold
kTAG_PATTERN 56 Pattern (:grep) This tag holds a string representing a regular expression pattern, it used to provide a validation pattern for coded strings

===

Generic tags

Variable name Value Type Description
kTAG_TYPE 57 Type (:type) This tag holds a string which represents a discriminating type or category
kTAG_LANGUAGE 58 Language (:language) This tag holds a string which represents a specific language name or code, this tag is generally used as an element of a structure for indicating the element's language
kTAG_TEXT 59 Text (:text) This tag holds a string which represents a text, this tag is generally used as an element of a structure for indicating the element's text
kTAG_URL 60 URL (:url)
  • Type: [kTYPE_URL}
This tag holds a string which represents an internet address, this tag is generally used to hold an URL
kTAG_GEO_SHAPE 61 Geographic location shape (:geo)
  • Type: [kTYPE_SHAPE}
This tag holds the geographic shape of an object. This value is expressed as a geometric shape that can be a point or a polygon which describes the position and shape of an object

===

Connection attributes

Variable name Value Type Description
kTAG_CONN_PROTOCOL 62 Connection protocol (:connection:protocol) This tag holds a string which identifies a specific network connection protocol or scheme
kTAG_CONN_HOST 63 Connection host (:connection:host) This tag holds a string which identifies a specific network connection domain name or internet address
kTAG_CONN_PORT 64 Connection port (:connection:port) This tag holds an integer which identifies a specific network TCP or UDP port number
kTAG_CONN_USER 65 Connection user code (:connection:user) This tag holds a string which identifies a specific user code used to authenticate with a service
kTAG_CONN_PASS 66 Connection user password (:connection:password) This tag holds a string which identifies a specific user password which allows to authenticate with a service
kTAG_CONN_BASE 67 Database name (:connection:database) This tag holds a string which identifies a specific database
kTAG_CONN_COLL 68 Collection name (:connection:collection) This tag holds a string which identifies a specific database collection
kTAG_CONN_OPTS 69 Connection options (:connection:options) This tag holds a list of key/value pairs which represent the options for a network connection. The key part identifies the option, the value part provides the option value

===

Entity attributes

Variable name Value Type Description
kTAG_ENTITY_FNAME 70 Entity first name (:entity:fname) This tag holds a string representing the first name of an entity, this implies that the entity is an individual
kTAG_ENTITY_LNAME 71 Entity last name (:entity:lname) This tag holds a string representing the surname of an entity, this implies that the entity is an individual
kTAG_ENTITY_TYPE 72 Entity type (:type:entity) This tag holds an enumerated set which describes the types of an entity
kTAG_ENTITY_KIND 73 Entity kind (:kind:entity) This tag holds an enumerated set which describes the kinds of an entity
kTAG_ENTITY_ACRONYM 74 Entity acronym (:entity:acronym) This tag holds a a list of strings representing the entity acronyms or abbreviations
kTAG_ENTITY_MAIL 75 Entity mail (:entity:mail)
  • Type: [kTYPE_TYPED_LIST](#kTYPE_TYPED_LIST
This tag holds a list of mailing addresses discriminated by their type. Each element of the list represents an address which should be used according to its type
kTAG_ENTITY_EMAIL 76 Entity e-mail (:entity:email) This tag holds a list of e-mail addresses discriminated by their type. Each element of the list represents an e-mail which should be used according to its type
kTAG_ENTITY_LINK 77 Entity link (:entity:url) This tag holds a list of internet addresses discriminated by their type. Each element of the list represents an internet link which can be categorised according to its type
kTAG_ENTITY_PHONE 78 Entity phone (:entity:phone) This tag holds a list of telephone numbers discriminated by their type. Each element of the list represents a phone number which should be used according to its type
kTAG_ENTITY_FAX 79 Entity fax (:entity:fax) This tag holds a list of telefax numbers discriminated by their type. Each element of the list represents a fax number which should be used according to its type
kTAG_ENTITY_AFFILIATION 80 Entity affiliation (:entity:affiliation) This tag holds a list of entity references discriminated by their type. Each element of the list represents an entity object reference which is qualified by the element's type
kTAG_ENTITY_COUNTRY 81 Entity country (:entity:country) This tag holds an enumerated value representing the country of the entity
kTAG_ENTITY_VALID 82 Valid entity (:entity:valid) This tag holds a reference to the currently valid or preferred entity. This attribute is used by obsolete or defunct entities for referring to the current substitute or valid entity

===

Operation offsets

Variable name Value Type Description
kTAG_OPERATION_APPEND 100 Append to array This tag indicates an append to array directive, it is used when setting nested offsets: whenever this offset is encountered in a sequence of nested offsets, the sequence following this offset will be appended to the offset preceding this tag

===

Default tags limit

Variable name Value Type Description
kTAG_SEQUENCE_START 101 Dynamic tag sequence origin This defines the first dynamically assigned sequence tag number.