Document Relations

Kazinex Workflows allows you to link documents together using typed relationships. Document relations make it possible to model how documents depend on or supersede each other — and to trace those connections across the project register. This guide covers the four relation types, how to add and manage relations in the UI, and how relations affect document status and register filtering.
Why use document relations?
On complex projects, documents rarely exist in isolation:
- A revised drawing supersedes an earlier revision.
- A method statement references a specification.
- A shop drawing is attached to an RFI.
- A structural calculation is related to a geotechnical report.
Without explicit relations, document controllers must track these connections manually — through naming conventions, spreadsheets, or institutional memory. Typed relations in Workflows create a machine-readable dependency graph that can be traversed in the UI, filtered in the register, and exported in the audit trail.
Relation types
| Relation type | Direction | When to use | Status impact |
|---|---|---|---|
| supersedes | Source → Target | Use when a new document or revision formally replaces an earlier one. The source is the new document; the target is the one being replaced. | The target document status is automatically changed to Superseded when the relation is saved. |
| references | Source → Target | Use when a document cites or depends on another document. E.g., a method statement referencing a COSHH specification. | No automatic status change. |
| attached_to | Source → Target | Use when a document is a supporting attachment to another record (e.g., a marked-up drawing attached to an RFI). | No automatic status change. |
| related_to | Bidirectional | Use for general cross-references where the relationship is relevant but does not fit the other types. | No automatic status change. |
Adding a relation
- Open a document in the register by clicking its row.
- Select the Relations tab in the document detail panel.
- Click Add Relation.
- In the Add Relation dialog:
- Select the Relation type from the dropdown (supersedes, references, attached_to, related_to).
- In the Search field, type the document number or title of the target document.
- Select the correct target document from the search results.
- Optionally add a Note to describe the relationship in more detail.
- Click Save Relation.
The relation appears immediately in the Relations tab of both the source and target documents.
Important: The
supersedesrelation type immediately changes the target document's status toSuperseded. Confirm the target document number before saving. If you add a supersedes relation by mistake, remove it immediately (see Removing a relation) — the system will restore the target's previous status.
Viewing relations
From the document detail Relations tab, you can see:
- All outgoing relations (where this document is the source).
- All incoming relations (where this document is the target of another document's relation).
Each relation row shows:
| Column | Description |
|---|---|
| Relation type | supersedes, references, attached_to, or related_to |
| Direction | → (outgoing) or ← (incoming) |
| Document number | The related document's number |
| Title | The related document's title |
| Revision | The revision at the time the relation was created |
| Status | The related document's current status |
| Added by | The user who created the relation |
| Added on | Timestamp of when the relation was saved |
Impact on document status
The supersedes relation type is the only relation that automatically changes document status:
- When you add a
supersedesrelation from Document A (new) to Document B (old), Document B's status changes to Superseded. - Document B's revision history still shows all previous workflow decisions and audit events.
- Document B remains searchable and visible in the register (filtered by status if desired).
- Document A becomes the current active revision for that document subject.
All other relation types (references, attached_to, related_to) are informational and do not trigger any automatic status changes.
Filtering the register by relation type
Use the document register's filter panel to find documents by their relation type:
- Open the Documents register.
- Click Filter.
- Expand the Relations filter group.
- Select one or more relation types to filter by (e.g., show only documents that
supersedeanother document). - Apply the filter.
The register shows only documents that have at least one relation of the selected type. Use this to:
- Find all documents that have superseded something (to audit revision cycles).
- Find all documents that reference a specific standard or specification (useful when that standard changes).
- Identify documents with no relations (potentially isolated documents with unclear dependencies).
Removing a relation
If a relation was added incorrectly:
- Open the document's Relations tab.
- Find the relation to remove.
- Click Remove on the relation row.
- Confirm the removal.
For supersedes relations: Removing the relation restores the target document's status to what it was before the relation was added (typically the status it held before being superseded). A removal event is recorded in the audit trail for both documents.
Audit trail for relations
Every relation action is recorded in the audit trail:
| Event | What is recorded |
|---|---|
relation_added | Source document, target document, relation type, added by, timestamp |
relation_removed | Source document, target document, relation type, removed by, timestamp |
document_superseded | Target document's status change to Superseded, triggered by relation, superseding document reference |
View the full relation history for a document from its Activity tab, filtered by event type document_relations.
Best practices
- Add
supersedesrelations immediately when uploading a new revision to keep the register current. - Use
referencesrelations for specifications, standards, or regulatory documents that multiple other documents depend on — when the referenced document changes, you can quickly find all dependent documents. - Avoid adding
related_torelations for every possible connection — use them selectively for relationships that will genuinely be used during review or closeout. - For formal document packages, use a Work Package rather than
attached_torelations for grouping — Work Packages have their own review workflow, whileattached_tois better suited for informal supporting material.