Introduction
This publication TIC4.0 2022.005 contains the Semantics, Data Model and Definitions on the following topics
Cycle: It is an update of the 2022.003 release. The terminal.gate.cycle is now included. With this definition, the most important cycles within a terminal have been defined; the highest level process: terminal.cycle, the subprocesses: terminal.berth.cycle, terminal.yard.cycle, terminals.gate.cycle, terminal.train.cycle, terminal.horizontaltransport.cycle and at the equipment level: CHE.cycle.
Carrier Visit: includes important definitions for processes from the perspective of a carrier visit: Arrival, TerminalOperations and Departure.
Cargo Visit: includes important definitions to follow the process of the cargo on a terminal, such as Inbound and Outbound as well as unambiguous definitions related to the weight of cargo. With these definitions, the most important definitions for the “Cargo Visit” have been defined.
Schema JSON to FLAT: a very important work has been done for anyone who intends to implement TIC4.0. The JSON Schema is defined and clear instructions for a human to convert a JSON format dataset into a FLAT format are included. TIC4.0 developed and published an open-source software tool to automatically convert datasets from JSON to FLAT. The source code can be included in any program and is available via GitHub.
Datamodel: The existing data models are updated reflecting the definitions of this release and the latest development around the TIC4.0 semantic.
This publication extends definitions of previous releases on the most important processes found in terminal operations: the Cargo Visit - which constitutes the sole purpose of terminals, the Carrier Visit - which constitutes the major link(s) to the cargo value chain and the Cycle - which is required to describe the processes of a terminal related to moving payloads.
With the Schema JSON to FLAT this publication provides the required step by step instructions (and an open-source conversion tool) to convert the data from the JSON format to the FLAT format. This is important for the implementation of the semantics.
TIC4.0 uses the JSON format as default because it allows us to express a hierarchical structure and an array of subjects (for several sub-subjects) or observed properties (for different combinations of timestamps, pom, pomt, names, etc). JSON is also the default file format for many protocols such as REST and MQTT extensively used to share data or publish IoT data. A flat format is more suitable for low-level implementation like PLCs or software code. JSON is better for sharing extensive messages. Both formats are TIC4.0 compliant and when implementing TIC4.0 standards in your organisation it is very important to be able to automatically convert from one format to the other.
These definitions are part of TIC4.0’s ongoing work to develop a common vocabulary for the cargo handling industry and will be followed by future releases, as defined by the TIC4.0 Dataset Roadmap. The current list of definitions being worked on can be accessed on the digital platform of TIC4.0. This publication release provides the actual definitions and includes them in the TIC4.0 templates with the general approach on how to use these in Data Models, Data Schema's, JSON formats and provides high-level scenarios as examples.
...
To apply the vocabulary in each entry in several digital protocols, a Data Schema is needed. TIC4.0 will propose a Data Schema for each of the most common protocols, but the Data Schema is compatible with any protocol. In the examples that are provided, TIC4.0 usually uses JSON as it is very user friendly and easy to read.
...
Following the semantic web standard (subject: object) the model has 3 main components: header, asset description and measurement.
...
SUBJECT creates the hierarchy tree structure (we have sub-subjects) that helps to identify the boundary of the value. The hierarchy is fixed by TIC4.0 for each kind of subject (CHE, TOS, Terminal) and can mix any type of subjects (e.g. machine.process = che.move). The subjects conform to an array defined by the (concept) metadata so various identical subjects but with different metadata (id or name or location or…) can be sent in the same message (one message with several CHE's or one CHE with several spreaders).
The CONCEPT'smetadata defines “what is” and the CONCEPT“what does”. Both are flat (no hierarchy, no arrays) and as many as necessary can be used. Additionally, two concepts can be combined with “and” or “or” creating a new concept which includes the condition that makes both true. For e.g. “hoisting_and_trolleying” that represents the action of hoisting and trolleying at the same time (both statuses must be true).
OBSERVED PROPERTies define the “magnitude” of the CONCEPT, are flat (no hierarchy) and can be used as many times as necessary with a CONCEPT.
For each OBSERVED PROPERTies an array created by the combination of the different POINT OF MEASUREMENTs in time (actual, estimated, etc), place (input, iinput, ioutput, output), timestamps and the different Units will give an array (a list) of VALUEs. The array could be as long as necessary in each message. The length will depend on the relation between the data frequency and the message frequency and also the amount of different POINT OF MEASUREMENTs that need to be represented.
A detailed definition of the Data Model can be found in https://tic40.atlassian.net/l/c/XBT1vEBA
The Data Schema will be was provided as part of the 2022.004 release and it will define defines the rules that the Data Model will follow, and will allow allows the translation from a hierarchy format to a flat format.
...
Release | Definition | Link | Definition | TIC4.0 semantic |
---|---|---|---|---|
2022.005 | Job Instruction | https://tic40.atlassian.net/wiki/spaces/REV/pages/953942134 Job Instruction | A job instruction is a collection of orders (something) that a source (system/someone) tells to subjects (system/someone/something/equipment) to do to an object (system/someone/something/equipment) in a coordinated way. | SUBJECT-PROCESS |
2022.005 | Job Instruction List | “Job Instruction List” (jobinstructionlist) is a collection of Job Instructions of the same type, that can be over different objects and executed by different subjects. | SUBJECT-PROCESS | |
2022.005 | Order | “Order” (order) indicates one action to perform with the JobInstruction. It includes only one subject, doing one action to one object. | SUBJECT-PROCESS |