TQL: Difference between revisions
No edit summary |
|||
Line 199: | Line 199: | ||
|} | |} | ||
==Query Construction== | |||
===TQL Uses=== | ===TQL Uses=== | ||
TQL is currently used to communicate with Microsoft Excel, using the [[Excel (Indicator)|Excel Indicator]]. | TQL is currently used to communicate with Microsoft Excel, using the [[Excel (Indicator)|Excel Indicator]]. |
Revision as of 09:36, 1 July 2015
Please note: This page is currently being updated! |
TQL
The Tygron Query Language is a special-purpose programming language designed for obtaining spacial area information from a specific game session on the Tygron Engine. The primary reason for its development was to make an easy to use bridge between the Tygron Engine and Microsoft Excel.
Queries
The operation used in TQL is the query, which is performed with the declarative SELECT
statement. SELECT
retrieves data from a running Tygron game session. The SELECT
statements have no persistent effects on the game session itself.
Queries allow the user to describe desired data, leaving the Tygron Engine responsible for planning, optimizing, and performing the physical operations necessary to produce that result as it chooses.
A query includes a parameter to include in the final result, immediately following the SELECT
keyword. Currently, one of the following result parameters can be chosen:
Result Parameter | Description | Example |
---|---|---|
FLOORSIZE
|
Floor size of buildings. | SELECT_FLOORSIZE_WHERE_CATEGORY_IS_OFFICES
|
LOTSIZE
|
Lot size of buildings. | SELECT_LOTSIZE_WHERE_CATEGORY_IS_OFFICES
|
UNITS
|
Amount of housing units. | SELECT_UNITS_WHERE_CATEGORY_IS_SOCIAL
|
DIKES
|
Surface space of constructed dikes or levees. | SELECT_DIKES_WHERE_ZONE_IS_1
|
Comparison Predicate
The SELECT
and result parameter are followed by the WHERE
statement. The WHERE
statements includes a comparison predicate, which restricts the information taken into account by the query. The WHERE
clause eliminates all information from the result set where the comparison predicate does not evaluate to True.
The comparison predicate consists of 0 or more clauses. Clauses consists of three parts;
- Clause Type
- Operator
- Value
Clauses
Some clauses are particular for constructions, others are applied to surface areas of constructions or dikes. The clause types and expected values currently supported are:
Clause Type | Description | Value Type | Example |
---|---|---|---|
CATEGORY
|
A construction belongs to the specific Function category | Function category | CATEGORY_IS_INDUSTRY
|
FUNCTION
|
A construction belongs to a specific Function | Function ID | FUNCTION_IS_621
|
DIKE
|
Surface area lies (partly) within a particular type of Dike (or Levee) | Dike ID | DIKE_IS_0
|
MAP
|
A construction or dike is present in the specified map or view. Also see Simulation Type | CURRENT or MAQUETTE | MAP_IS_MAQUETTE
|
STAKEHOLDER
|
A construction or surface area is owned by a specific Stakeholder | Stakeholder ID | STAKEHOLDER_IS_7
|
STAKEHOLDERTYPE
|
A construction or surface area is owned by stakeholders of a specific Stakeholder Type | Stakeholder Type | STAKEHOLDERTYPE_IS_COMPANY
|
STATE
|
A construction resides in the specified State | State Type | STATE_IS_PENDING_CONSTRUCTION
|
TERRAIN
|
Surface area lies (partly) within a specific Terrain | Terrain ID | TERRAIN_IS_1
|
TERRAINTYPE
|
Surface area lies (partly) within terrains with a specific Type of Terrain | Terrain Type | TERRAIN_IS_1
|
ZONE
|
Surface area lies (partly) within a specific Zone | Zone ID | ZONE_IS_25
|
Operators
TQL clausses currently support the following Operators:
Operator | Description | Example |
---|---|---|
IS
|
Equal to | CATEGORY_IS_OFFICES
|
Simulation Type
Depending on the Simulation Type, the map parameter is named as followed in the Query Tool:
Simulation Type | CURRENT
|
MAQUETTE
|
---|---|---|
Planning | ORIGINAL
|
PLANNED
|
Timeline | TODAY
|
MODEL
|
State
During the game sessions, constructions go from one phase to another. For example; from being planned, to being permitted, to being constructed, to being ready. The current available states are:
State | Explanation |
---|---|
CONSTRUCTING
|
Construction is being constructed. |
CONSTRUCTION_APPROVED
|
Construction is approved. |
CONSTRUCTION_DENIED
|
Construction is denied. |
DEMOLISH_APPROVED
|
Demolition is approved. |
DEMOLISH_DENIED
|
Demolition is denied. |
DEMOLITION_FINISHED
|
Demolition is finished. |
DEMOLISHING
|
Construction is being demolished. |
NOTHING
|
Construction does not exist. |
PENDING_CONSTRUCTION
|
Construction is waiting for the date to be constructed. |
PENDING_CONSTRUCTION
|
Construction is waiting for the date to be constructed. |
PENDING_DEMOLISHING
|
Construction is waiting for the date to be demolished. |
PENDING_UPGRADE
|
Construction is waiting for the date to be upgraded. |
READY
|
Construction is done constructing. |
REQUEST_CONSTRUCTION_APPROVAL
|
Request is send to ask construction approval. |
REQUEST_DEMOLISH_APPROVAL
|
Request is send to ask demolition approval. |
REQUEST_ZONING_APPROVAL
|
Request is send to ask zoning approval. |
WAITING_FOR_DATE
|
Waiting to receive a date on which to start construction. |
WAITING_FOR_DEMOLISH_DATE
|
Waiting to receive a date on which to start demolition. |
Query Construction
TQL Uses
TQL is currently used to communicate with Microsoft Excel, using the Excel Indicator.