DIQ_Revision
Purpose
The
DIQ_Revision
type represents a specific revision instance within a DimensionIQ project. It allows projects to maintain structured version control
over drawings, layouts, and measurement data.
A
DIQ_Revision
enables the host application and the DimensionIQWidget to track iterative
changes, maintain historical context, and clearly separate measurement states across project lifecycle stages.
This type is commonly used when:
- Creating a new project revision
- Switching between historical measurement states
- Displaying revision history
- Persisting version-controlled project data
- Managing drawing updates across tender, construction, or as-built phases
By standardizing revisions into a defined type, DimensionIQ ensures that version tracking remains predictable and consistent across integrations.
Why This Type Exists
Projects often evolve over time. Drawings are updated, scopes change, and measurements must be adjusted accordingly.
The
DIQ_Revision
type exists to:- Provide structured version control at the project-level
- Preserve historical measurement states
- Support comparison between revisions
- Allow safe modification without overwriting prior data
- Enable host-controlled lifecycle management
Because the host application is responsible for data persistence and business logic, revisions must be explicitly defined and managed outside the widget.
DIQ_Revision
provides
the structured contract that allows the widget to safely operate within a versioned environment.
Properties
| Properties | Type | Required | Description |
|---|---|---|---|
key | string | Yes | Unique identifier for the revision, used for referencing and persistence |
projectKey | string | Yes | Identifies the parent project this revision belongs to, must match an existing DIQ_Project key |
number | number | Yes | Numeric revision sequence (eg, 1, 2, 3), used for ordering and version tracking |
name | string | Yes | Display name for the revision (eg, "Revision A", "Tender Issue") |
notes | string | No | Optional descriptive notes explaining the purpose or changes within the revision |
Behavioral Expectations
Revision Identity- The keymust be unique within the host system
- The keyshould remain stable once created
- Reassigning a revision key may break data asssociations
- projectKeymust reference a validDIQ_Project
- A revision cannot exist independently of a project
- Host applications must enforce this relationship
- numbershould represent the logical sequence of revisions
- Revision numbers should increment predictably
- The host application is responsible for ensuring numbering consistency
- nameis the primary user-friendly revision label
- numbermay be displayed alongsidenamefor clarity
- notesmay be used for audit trails, change summaries, or documentation
Summary
DIQ_Revision
provides structured version control within DimensionIQ projects. It enables safe iteration, historical tracking, and predictable integration
across host applications.
By separating project state into clearly defined revisions, DimensionIQ ensures that measurement data remains organized, auditable, and resilient throughout the lifecycle of a project.