IFClite TypeScript API
    Preparing search index...

    Interface EntityRelationshipsData

    The related objects of an entity's structural relationships — never the IfcRel* entities themselves:

    • voids — the IfcOpeningElements that void this element (IfcRelVoidsElement, host → opening).
    • fills — the IfcOpeningElement this element fills (IfcRelFillsElement, filler → opening).
    • groups — the IfcZone / IfcGroup / IfcSystem it is assigned to.
    • connections — the elements it is joined to.

    The field names are deliberately not EXPRESS names, and #2422 resolved to keep them. IFC's own names for these traversals (HasOpenings, FillsVoids, HasAssignments, ConnectedTo / ConnectedFrom) are INVERSE attributes holding the IfcRel* entity, which is not what these arrays contain — so "use the exact EXPRESS name" has no name to offer here. Renaming voids to openings is not a fix either: voids and fills both hold IfcOpeningElements, and only the voids/fills pair — buildingSMART's own vocabulary for the two directions — tells them apart. Pinned by packages/parser/test/relationship-field-semantics-2422.test.ts.

    interface EntityRelationshipsData {
        connections: { id: number; name?: string; type: string }[];
        fills: { id: number; name?: string; type: string }[];
        groups: { id: number; name?: string; type?: string }[];
        relations?: {
            direction: "forward" | "inverse";
            entity: { id: number; name?: string; type: string };
            relationshipId: number;
            relationshipType: string;
        }[];
        voids: { id: number; name?: string; type: string }[];
    }
    Index
    connections: { id: number; name?: string; type: string }[]
    fills: { id: number; name?: string; type: string }[]
    groups: { id: number; name?: string; type?: string }[]
    relations?: {
        direction: "forward" | "inverse";
        entity: { id: number; name?: string; type: string };
        relationshipId: number;
        relationshipType: string;
    }[]

    Every graph edge touching the entity, preserving its exact IfcRel* class. Optional for third-party backends compiled against the pre-#4205 shape.

    voids: { id: number; name?: string; type: string }[]