ID (TQL)
Instead of a specific Item ID, you can use 'ID' as a clause parameter value. This is automatically replaced by the ID of the Item containing the TQL statement.
ID clause values are often used in combination with Template Panels; For example: Consider A Template Text Panel applied on Neighborhoods
Example
Consider the following (simplified) Neighborhood data of a project:
[
{ "id" : 0, "name" : "East Side", "attributes": { "INHABITANTS": [ 600.0 ] } },
{ "id" : 1, "name" : "West Side", "attributes": { "INHABITANTS": [ 200.0 ] } }
]
And a Template Text Panel applied on Neighborhoods, resulting in two Text Panel instances:
[
{
"id" : 2, "mapLink" : "NEIGHBORHOODS", "name" : "Template Text Panel", "type" : "TEMPLATE_TEXT_PANEL",
"text" : "Name: $SELECT_NAME_WHERE_NEIGHBORHOOD_IS_ID<br>Inhabitants: $SELECT_ATTRIBUTE_WHERE_NEIGHBORHOOD_IS_ID_AND_NAME_IS_INHABITANTS"
} , {
"contentID" : 0, "contentMapLink" : "NEIGHBORHOODS", "id" : 3, "name" : "Template Text Panel: East Side", "parentID" : 2, "type" : "TEXT_PANEL"
} , {
"contentID" : 1, "contentMapLink" : "NEIGHBORHOODS", "id" : 4, "name" : "Template Text Panel: West Side", "parentID" : 2, "type" : "TEXT_PANEL"
}
]
Since each panel is linked to a particular Neighborhood, through the contentID and contentMaplink parameters, the TQL statement SELECT_NAME_WHERE_NEIGHBORHOOD_IS_ID is internally replaced with:
SELECT_NAME_WHERE_NEIGHBORHOOD_IS_0for the first Text PanelSELECT_NAME_WHERE_NEIGHBORHOOD_IS_1for the second Text Panel
The result of each query will be:
"East Side" and "West Side"
Similarly, the value of the attribute INHABITANTS of the linked Neighborhood can be obtained using
SELECT_ATTRIBUTE_WHERE_NEIGHBORHOOD_IS_ID_AND_NAME_IS_INHABITANTS.
Clause Parameters
The X value can be used in the following TQL Clause parameters: