--- title: "Data Models" slug: "data-models-overview" tags: ["workspaces"] updated: 2026-09-15T16:48:27Z published: 2026-09-15T16:48:27Z canonical: "docs.unqork.io/data-models-overview" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.unqork.io/llms.txt > Use this file to discover all available pages before exploring further. # Data Models A Data Model is a workspace-level entity that defines a typed structure for storing records. Each Data Model links to a [Schema](/unqorkai/docs/schemas) that specifies the fields, types, and validation rules for records created under that model. Modules bound to a Data Model can read and write records that conform to that schema. ## When to Use Data Models Data Models are a project-level architectural decision, not a day-to-day building tool. They are typically configured at the start of a project by a lead Creator or Solutions Architect and rarely changed after development begins. Use Data Models when any of the following apply: - **Multiple modules share the same data structure.** A Data Model defines that structure once for all modules that read or write that record type. - **Field-level RBAC is required.** Data Models let Creators apply role-based access control at the individual field level, not just at the module level. - **Validation must hold regardless of which form creates the record.** Schema validation in a Data Model is enforced at the data layer. A record that does not conform to the schema is rejected even if it bypasses the UI entirely. - **Data must be managed independently of any specific module.** Record Collections, bulk import and export, and revision tracking are Data Model features. Standard module submissions do not support these capabilities. Data Models are not necessary for simple, self-contained forms where data maps naturally to a single module. Standard module submissions are the right choice for most straightforward use cases. ## Records vs. Submissions Data Models introduce a distinction between the following two concepts: - **Submissions**: Data records created by a module when an end-user submits a form. Submissions store whatever field values the module collects. They are associated with a module, not a schema. - **Records**: Data stored through a Data Model. Records are validated against the Data Model's schema. Field types, required fields, and validation rules are enforced at the data layer, not just in the UI. At the API level, both use the same underlying storage. The distinction is in how they are created and validated. Standard module submissions are not schema-validated unless the module is bound to a Data Model. Records created through a Data Model always go through schema validation. This applies to records created through the API, a workflow, or an import, not only when an end-user submits a form. When a module is bound to a Data Model, the records it creates display in both the module's submission history and in Record Collections. ## Data Models in the Workspace ![[docs-mockup:DocsDataModelExplorerMockup] Data Model Explorer panel](https://cdn.us.document360.io/15548f06-2fba-434c-b0c1-5df88317dbd7/Images/Documentation/api_upload_20260915_163759_997b520884124464a6c1e3a00a55041b.png?sv=2026-02-06&spr=https&st=2026-11-03T08%3A16%3A54Z&se=2026-11-03T09%3A16%3A54Z&sr=c&sp=r&sig=jCUXwtJjNTL78LdYNoUuSpfpSHowPqfjINLWsgYvQ2Y%3D) Data Models are accessible from the **Explorer panel**. In the panel, expand the **Utilities** folder, then expand **Data Models** to see the Data Model files in the current workspace. Select a Data Model file to open its [definition page](/unqorkai/docs/data-model-definition-page). > [!NOTE] > If the Data Models folder is not visible in the Explorer panel, a workspace administrator must enable the feature for the organization. ## Creating a Data Model To create a Data Model, hover over the Data Models folder in the Explorer panel, click the ⋮ (**ellipsis**) button, then select **Create Data Model**. In the creation dialog, complete the following: - **Name** (required): A display name for the Data Model, unique in the workspace. - **Schema** (required): Choose one of the following: - **Select a Schema**: Choose an existing published Schema from the workspace. Only published Schemas are available. - **Upload a file**: Upload a JSON Schema file. A new Draft Schema is created and linked to the Data Model automatically. For an example of a valid JSON Schema file, see [Schemas](/unqorkai/docs/schemas). After creation, the platform navigates to the [Data Model Definition Page](/unqorkai/docs/data-model-definition-page). ## How Data Models and Record Collections Work Together Data Models define the structure. Record Collections provides the interface for managing the actual data. - **Data Model**: Defines field types, validation rules, and settings (revisions, strict validation, permissions). - **Record Collections**: Provides the interface for viewing, importing, and exporting records that conform to that structure. Navigate from a Data Model to its records by selecting **View Records** on the [Data Model Definition Page](/unqorkai/docs/data-model-definition-page). From Record Collections, Creators can filter and browse individual records, import records in bulk, and export records for external use. ## Data Model Definition Page Select a Data Model from the Explorer panel to open its definition page. For details on the definition page layout, available fields, actions, and settings, see [Data Model Definition Page](/unqorkai/docs/data-model-definition-page). --- **Changelog** | Date | Change | | --- | --- | | 2026-08-05 | Added Data Model Definition Page section and inline links to the definition page throughout. Split into Data Models (conceptual) and Data Model Definition Page. Added Explorer panel mockup. Corrected Data Models in the Workspace section. | | 2026-08-03 | Expanded with Settings dialog, Update Schema flow, Associated Queries, Schema Properties section, and Data Model actions. Added Schemas and Data Model Bindings cross-references. | | — | Initial publication. | Schema is a declarative language that defines the structure, content, and constraints of the data. Also known as Unqork Users, or Designer Users; is anyone who is inside the Unqork platform. A data structure is the design used for organizing, using, and storing data. RBAC (Role-Based Access Control) is a method to control system access for authorized users. The role in RBAC refers to the levels of access employees have to a network. Also known as Unqork Users, or Designer Users; is anyone who is inside the Unqork platform. RBAC (Role-Based Access Control) is a method to control system access for authorized users. The role in RBAC refers to the levels of access employees have to a network. The UI (user interface) is a device's end-user interaction and communication point. It can include display screens, keyboards, and mouse. It is also how a user interacts with your application. End-users, also known as Express Users, are the individuals accessing an application through Express View. In most cases, end-users are the customers using the product. APIs (application programming interfaces) are a set of protocols and definitions developers use to build and integrate application software. APIs act as the connective tissue between products and services. A functionality of a software. For example, Copy and Paste is a feature of a computer's operating system. JSON (JavaScript Object Notation) is an open standard file and data interchange format. Unqork uses JSON for submission (record) data.