...
The general structures is:
Text |
List |
Table |
It is a fractal model because every parameter in the list or table of the dataset can contain a TeLiTab itself:
Text | |
List | |
Text | |
List | |
Table | |
Table | |
Text | |
List | |
Table |
Syntax
The syntax for the TeLiTab is as followed:
Normal TeLiTab,
TableNo%>0:
"Text$"
"..."
"Text$"
@DOCUMENT_ParName_CaseNumber
Document$
@END_DOCUMENT_ParName_CaseNumber
@END_DOCUMENTS
ListNo%
"ParName" ParVal
... ...
"ParName" ParVal
TableNo% "ParName" ... "ParName"
"1" ParVal ... ParVal
... ... ... ...
"nr.cases" ParVal ... ParVal
Transposed TeLiTab,
TableNo%<0:
"Text$"
"..."
"Text$"
@DOCUMENT_ParName_CaseNumber
Document$
@END_DOCUMENT_ParName_CaseNumber
@END_DOCUMENTS
"ParName" ParVal
... ...
"ParName" ParVal
TableNo% "1" ... "nr.cases"
"ParName" ParVal ... ParVal
... ... ... ...
"ParName" ParVal ... ParVal
Arguments
The DOCUMENT block should always close with a taga @END_DOCUMENTS tag;
The parameter containing a document defined by should have as document Document$ defined by @DOCUMENT_ParName_CaseNumber Document$@END_DOCUMENT_ParNam_CaseNumber should have "\DOCUMENT" as value in the list or table;
ParName
items, they cannot have the same name!); is
Each nested telitab starts with and with { and ends with } , which should both be provided on a new line:
ListNo%
If If TeLiTab or OBJECT values have to be included in the table, should TableNo% should be the total number of table parameters, including the TeLiTab or OBJECT parameters. This is not really surprising as the OBJECT or TeLiTab parameters for these values are indeed part of the Table. However, the structure is difference in only blocks with and divide with { and } divide the different values:
"ParName"
{Remarks
Parameters can have documents as values, in that case ParVal for this parameter should be replaced with
"\DOCUMENT". These document are defined as a block after the text part and prior to the list parameters. If the text part is NOT provided the TeLiTab should start with an empty line. This should be the case on any TeLiTab level. A document is basically a set of strings (text) with character returns;...
2
"Lpp" 100
"B" 20
2 "R" "V"
"1" 1000 10
"2" 1200 11
"3" 1300 12
"4" 1400 13
"5" 1500 14
"6" 1600 15
You could consider to define a seperate object or TeLiTab "Resistance" that containt the resistance data. In that case the Resistance data is connected to a seperate parameter denominated "Resistance" which contains a TeLiTab with Speed (V) and Resistance (R). Based on this discription you can expect a two TeLiTabs:
...
The resulting TeLiTab looks as followed:
3
"Lpp" 100
"B" 20
"Resistance"
{
0
2 "R" "V"
"1" 1000 10
"2" 1200 11
"3" 1300 12
"4" 1400 13
"5" 1500 14
"6" 1600 15
}
Finally you could assume that this information is part of the "Ship" object. In that case on the highest level their is one list parameter "Ship", containing the previous TeLiTab structure as value:
1
"Ship"
{
3
"Lpp" 100
"B" 20
"Resistance"
{
0
2 "R" "V"
"1" 1000 10
"2" 1200 11
"3" 1300 12
"4" 1400 13
"5" 1500 14
"6" 1600 15
}
}
All information between double quotes are parameters/objects.
...