An attribute can be thought of like a column in a SQL database. Various source helper classes make it easy to fetch the data from files, databases and other places.
Each attribute has certain characteristics that describe it :-
Even though an attribute might be marked as not being allowed to
be NULL, this doesn't mean it could never be returned as NULL if the
underlying datasource chooses (or has a problem).
The web interface uses italic font to show NULL values, so
you can differentiate from the literal string value "NULL"
.
Each attribute is of a certain primitive type, which is one of :-
The date and time primitive types are inspired by the subset of
ISO 8601
used by the XML xs:date
, xs:time
and
xs:dateTime
data types.
Fractions of a second can be omitted,
or can be a .
followed by a number of digits.
Tabulator only holds times to millisecond accuracy.
Offsets can be
+HH
, -HH
,
+HH:MM
, -HH:MM
,
+HHMM
, -HHMM
.
or the literal value Z
for Zulu time (aka GMT, offset 00:00).
Note that in Tabulator, a date or time related attribute either has an offset,
or it doesn't.
There isn't the concept of offset being optional, and as a side-effect,
this means we don't have to worry about partial ordering.
When parsing DateTimes, the T
between date and time can be a space.
Primary key attributes are always shown underlined in the web application.
Sometimes it can be useful to fabricate attributes from other attributes, perhaps using static reference data. For example, a table might contain a "location_id" field, and we may know how to map this to a human readable name. Such an attribute would be marked as computed. If the mapping is not easily reversable, it might also be appropriate to mark the attribute as not-searchable.