Data model
In TicTAP you can create a data model that fits your needs. The data model is composed of entities and definitions that are
fully dynamic.
Entities
TicTAP works with entities. Each entity, that can be an asset or just a taxonomy used to categorize assets and has a set of fields that can be filled with data.
For instance: an entity can be a Pump ( asset ) with informed fields such as the serial number, the model, the manufacturer, etc. Or an entity could be a Model with filled fields such as the name, the manufacturer, etc. and it is related to a pump entity and that contains all the shared information between all the pumps of that model.
Entities always have a name and a description that are treated as "own" and are always present in every entity. Besides, entities can optionally have a state that is used to hold a state of the entity across time. For instance: if a dynamic entity was a Task the state could be "In progress", or "Doing", or "Done.
Definitions
All the fields that an
entity can have are described in the definition. The definition describes the type of each field, the name of
the field, and other properties. Besides, a definition also defines the child structure: which child entities can be
added to the entity.
Fields
When editing fields in a definition, you can define the following properties:
Each field has a name property that identifies the field, a slug property that is a unique identifier for the field,
and a type property that identifies the type of the field. The type can be one of the following:
text: a text fieldemail: an email fielddate: a date fieldchoice: a choice field, with a predefined set of Optionsmedia: a media field, that allows storing Media, that can be restricted with afile_typeto only allow certain types of files, such asimageto restrict to images only orfilefor any other type of file.media_collection: a media collection field, that allows storing a collection of Media.address: an address field, that allows storing an address as text, and a latitude and longitude.manifest_icon: it is the same as a Media field but it is used to store the manifest icon of the App.dynamic_entity: this special field allows creating unidirectional many to one relation from the current definition to another definition. For example: if our definition "Asset" has a dynamic entity field to the definition "Model" means that many assets can be related to one model. This field is special because it is not a field that can be filled with data, but it is a field that allows creating a relation between two entities.