The URI of the model these references were found in — the base for resolving relative locations.
ReadonlyhandlerRecord one cross-reference entity. Bind to a dispatcher subscription filtered to the reference types; every record it is handed is taken to be a cross-reference (the dispatcher does the type filtering).
Resolve the collected references into navigable links by reading each
one's Location and resolving it against the source model URI. References
whose location is absent (null / empty) are skipped — they carry no link.
Reads the Location of an express ID.
The resolved outbound links.
Collects a model's outbound cross-model references during the streaming parse and, once locations are readable, resolves them into navigable federation links (M5 / design S3).
The links come from IFC's own reference entities —
IfcExternalReferenceand its subtypes (IfcDocumentReference,IfcClassificationReference,IfcLibraryReference) — and, for STEP AP242, its external references. Two phases, matching M2's "identify while parsing, resolve on demand":dispatcher.on([IfcExternalReference], reg.handler)); it records the express ID of every such record as it streams past. Cheap and idempotent (aSet), so the rare grow-restart is harmless.Locationvia a ReferenceLocationReader and resolves it against the source model URI, yielding CrossReferenceLinks the UI renders as links. Visiting one opens the target model in theModelRegistry.The location read is deferred because the event stream carries only
(localID, expressID, typeID)— not attribute strings; pullingLocationneeds the entity's fields, which is a model read, not a parse event.