ThingWorx Model Definition and Composer > Model Entity Types
  
Model Entity Types
Before you start to define the model, you should understand the types of entities that make up the various model components. The entities you will be configuring and their uses are as follows:
Entity Types for Physical/Asset Model Definition
Things: the modeled representation of physical assets and/or processes that have properties and business logic. All ThingWorx things are based on thing templates.
Thing Templates: provides base functionality via properties, services, events, and subscriptions that thing instances utilize in their execution. ThingWorx things are derived from thing templates.
Thing Shapes: an abstract definition of a concrete thing or things. Defines properties, services, events, and subscriptions for things that implement the thing shape. Typically, the thing shape is implemented by a thing template, which is then the basis of actual things.
Data Shapes: multifaceted metadata-driven data structures. Data shapes are commonly used to define ThingWorx service outputs, data table, stream and value stream structures, and event payloads. They are comprised of field definitions, which are similar to columns in a database table or properties on an object.
Networks: allow you to create hierarchical relationships between your model things.
Projects: allow you to organize other objects within ThingWorx.
Model Tags: mechanism to label and categorize ThingWorx objects and data to assist in filtering, finding, and organizing your model. A ThingWorx tag is distinguished by the combination of a vocabulary and a vocabulary term.
Industrial Connections: Industrial Connections allow you to connect with and configure industrial things in ThingWorx.
(7.4 and later, available in New Composer).
Entity Types for Analytics
Data Analysis Definitions: represents information that connects the ThingWorx model to features that are used for performing analysis activities.
Entity Types for Visualization
* 
Mashups, media, and style definitions extension entities that are editable, can be upgraded during an in-place upgrade as long as they have not been modified or customized.
Mashups: the visualization of the model and data. Mashups have the ability to produce enriched results from the combination of presentation and data aggregation, making the application more useful and effective.
Masters: provide consistent framing of a mashup’s contents, and is commonly used for items that display throughout the mashup, such as logos, menus, and titles.
Dashboards: arranged visualizations of data (made up of gadgets) that can output control for users that do not require any exposure to or knowledge of ThingWorx.
Gadgets: reusable contained mashups that comprise dashboards. Gadgets contain additional metadata that handles the sizing requirements of a dashboard.
Menus: a tool that allows for navigation options within a mashup. You can define menu structures and functionality.
Media: locally-stored media artifacts necessary for your ThingWorx application implementation. In most cases, these include images and icons used for entities such as menus, style definitions, and mashups.
Widgets: visualizations used in mashups. Widgets are located in the mashup builder and some examples include charts, grids, lists,
images, and buttons.
Style Definitions: a collection of HTML styling elements that can be applied to a widget. All colors, text, and line formats are managed and rendered in the mashup environment using style definitions entities.
State Definitions: a collection of style definitions that are applied via data-based rules. Evaluating the data to specific ranges or values allows you to perform data based formatting, such as changing the background color of cells in a grid widget.
Entity Types for Data Storage
Data Tables: storage tables that have a primary key and optional indexed fields.
Streams: independent data stores that can access data continuously. For example, querying a single column value returns the entire row.
Value Streams: store data from an associated thing’s property. For example, querying the thing’s property data only returns the values for that property.
Data Tags: mechanism to label ThingWorx objects and data to assist in grouping, filtering, and finding ThingWorx objects and searching and discovering data efficiently. A ThingWorx tag is distinguished by the combination of a ThingWorx vocabulary and a ThingWorx vocabulary term.
Persistence Providers: a configured instance of a persistence provider package that can be utilized within some entity settings to tailor the specifics of the persistence (such as location, runtime characteristics, and tuning).
Entity Types for Collaboration
Blogs: collaboration tool that provides blogging functionality.
Wikis: collaboration tool that provides wiki functionality.
Entity Types for User Management and Security
User Groups: categorize users in the ThingWorx system. Groups can contain users and groups, and all permission settings are cumulative.
Users: an account required to access ThingWorx design or runtime environments.
Organizations: hierarchical units that can be used to assign visibility on users and groups to better model and manage your ThingWorx application users.
Application Keys: used to access ThingWorx functionality without having to log in using a user account.
Directory Services: allows you to configure authentication for users against an external directory service, such as LDAP.
Authenticators: ThingWorx Authenticator extensions can be created for various types of authentication strategies, including basic user/password, single sign-on (SSO) access, certificate-based data decryption, and many others.
Entity Types for Server Services
Localization Tables: provides the ability to display runtime labels in different languages or in user-defined terminology.
Resources: Provided services to aid in configuring your applications.
Subsystems: configurable platform functionality that can be tuned or turned off for specific platform performance requirements.
Logs: the various monitoring tools that record the activity in your ThingWorx Model. The available logs are the Application Log, Communication Log, Composer Log, Configuration Log, Security Log, and Script Log.