Skip to content

Identifier

Identifier contains normalized textual identifiers extracted from the drawing, such as part numbers, revision codes, or section labels. It stores the raw text, its cleaned version, context hints, and links to the geometry or table where it appeared. Having identifiers in a structured model enables reliable cross- referencing between balloons, BOM rows, and title blocks. You can use it to map drawings to ERP records, trigger version comparisons, or build navigation interfaces that jump to specific sections. The object also captures confidence scores and language metadata, helping you prioritize review when OCR or parsing conditions are challenging. Because identifiers frequently anchor workflows, the model keeps track of duplicates, alternatives, and normalization rules applied so your downstream systems can reconcile variations automatically.

Bases: Entry

Represents an identifier (such as the drawing number) used for distinguishing elements in a drawing.

PARAMETER DESCRIPTION
reference_id

Reference ID to identify the object.

TYPE: int

language

The language of the identifier, if known.

TYPE: Language | None DEFAULT: None

value

The value of the identifier. Must be a non-empty string.

TYPE: str

identifier_type

The type of identifier, such as part ID or drawing ID.

TYPE: IdentifierType

stakeholder

The associated stakeholder, if known.

TYPE: IdentifierStakeholder | None DEFAULT: None

period

The associated period, if known.

TYPE: IdentifierPeriod | None DEFAULT: None

Source code in werk24/models/v2/models.py
class Identifier(Entry):
    """
    Represents an identifier (such as the drawing number) used for distinguishing elements in a drawing.
    """

    identifier_type: IdentifierType = Field(
        ..., description="The type of identifier, such as part ID or drawing ID."
    )

    stakeholder: Optional[IdentifierStakeholder] = Field(
        None,
        description="The associated stakeholder, if known.",
        examples=[IdentifierStakeholder.SUPPLIER, IdentifierStakeholder.OWNER],
    )

    period: Optional[IdentifierPeriod] = Field(
        None,
        description="The associated period, if known.",
        examples=[IdentifierPeriod.PREVIOUS, IdentifierPeriod.CURRENT],
    )