Key Concepts
Following are the key concepts used in TQL
Name | Description |
---|---|
Project | A deployment unit, consisting of one or more Models, Model Facets and Queries. |
Model | A unit of definition with structures to represent the Attributes and Actions of an entity. |
ThingModel | One kind of Model. Used to represent things that interact with the application from outside the software system, such as sensors, devices and machines. |
AppModel | One kind of Model. Used to represent an application logic construct. |
DataModel | One kind of Model. Used to define a data structure. |
ModelFacet | A reusable definition component that can be used (via "Combines") by Models. Usually contains its Attribute and Action definitions. |
ThingFacet | One kind of ModelFacets. Used to define a reusable construct concerning interaction with things. |
AppFacet | One kind of ModelFacets. Used to define a reusable construct concerning application logic. |
Combines | A keyword used in Model definitions. Models "Combines" ModelFacets to acquire all the Attributes and Action definitions of the ModelFacets. |
Attribute | A container that holds values for the Model. |
Action | A definition of a process(es) associated with a Model. |
Actionable Attribute | An attribute whose value changes will automatically trigger the processes defined by Action(s). |
Workflow | A sequence of tasks that are orchestrated and repeatable. |
Task | A unit of work. |
Model Instance | An incarnation of a Model definition. |
Deploy | The process of compiling Model definitions and make the post-compilation artifacts (such as model runtime) available to the running TQL Engine |
Instantiation | The process of creating Model Instances from a Model definition. The process of creating workflow instances from a Workflow definition. |
Query | Any operation(s) on the model instance data (or model data), which includes filtering, joining, and manipulations. |
Subscription | Subscribing to a topic |
Topic | Topic is a string value that model developers use to subscribe and eventually receive notifications. |
/wiki/spaces/TQLDocs/pages/1179763 | Custom or System defined Model definitions (Example: Primitive types - String, Number etc) |
Macros | Macros help keep TQL code (portions) organized and reusable. Macros have Arguments and Result (Reusable portion of TQL code) |
Protocol Handler | Protocol Handlers are communication (Channel) transport handler within A-Stack. Protocol Handlers are one of the key extension points of A-Stack |
Facet Instances | Facet Instances are runtime definition of A-Stack capabilities by choosing appropriate Facet Types. |
Facet Types | A-Stack capabilities are provided as Facet Types. Example, SffTqlFacet, SffMsgFacet etc |
FacetID | Unique identifier given each Facet Instance definition. A-Stack adds fid- user provided Facet Instance ID |
Template Processing | Template Processing provides runtime access to variable values. XPath expressions can be used with Template Processing. |
Atomic Domain Languages (ADL) | Atomiton provided Domain Languages to build IoT Applications |
Thing Query Language (TQL) | Thing Query Language is core part of Atomic Domain Language. TQL consists of Thing Definition Language (TDL) and Thing Interaction Language (TIL) |