Skip to content
Elytherion edited this page May 20, 2018 · 21 revisions

Data Tables

Usage

The property list items have parameters below their respective column header.

Property template with parameter types:

Column Header Occurrence

  • Type:
  • Description:
  • Column Header — Well ... the column header?!
  • Occurrence"data" or "l10n" or empty — Whether the entry occurs in only the data table or only the localization tables. Empty if entry occurs in all tables. Property definition might be splitted for "data" and "l10n" tables when sharing the same column header.
  • Type — The type to use for the respective field. See what is meant by different types in the table below.
  • Description — What the column entries are used for and how they should be used. Referenced JSON interfaces can be found in TypeScript syntax below the respective table.

If Markdown is used, use \n characters for line breaks. Also use the styles of the text you copy (like italic or bold texts and lists)!

For translators

TODO: Add important and/or helpful notes for translators here

Term definitions

term description
String ID The respective ID from the id column with a prefix. The specific prefix is mentioned in the id description in the table definition file.
Numeric ID The plain ID integer from the id column.
Selection-ID or SID Selections (like Trade Secrets, Languages or Hair Colors) do not have an ID prefix. To clarify that this ID is referenced to, the SID term is used. Mostly this ID is numeric-only, in case of skill lists the string ID of the respective entries is used as the SID.
ID If the term ID is used without a numeric or string and refers to a list item that has a string ID, the string ID is meant. If the term is used to refer to an item in an array, the index of the item (imagine a 1-based index) is used as the ID.

Type definitions

type description
string Plain text.
number A plain number.
boolean TRUE or FALSE.
Array<E, S> A list of values of type E. The values are separated by S. The list can be of any length but it must contain at least one value. A list declaration can also include a description for the given type, e.g. Array<id: number, S>.
Array<E, S, L> A list of values of type E. The values are separated by S. The list is of length L. A list declaration can also include a description for the given type, e.g. Array<id: number, S, L>.
[ ... ]<S> This represents a list with a fixed length. The values are separated by S. A list with a string as first element and a number as second element will look like [string, number]<S>. So: The types in the type declaration are separated by ,. A fixed list declaration can also include descriptions for the given types, e.g. [value: number, id: string]<S>. A fixed list must contain at least two values. A value can also be declared as optional by either saying description?: type or type?, depending on if a description is provided or not. In case of an optional you do not need to provide the value but you can. Optional values can only appear at the end of a fixed list.

Examples:

  • If a string list's separator is a ,, the corresponding type is Array<string, ,>.
  • The types [string, string]<&> and Array<string, &, 2> are equal.

Sometimes a symbol might follow a type:

symbol description
? Field can be empty. Example: boolean?.