Project references provide a mechanism for users with higher permissions - typically the owners of a dataset or pipeline - to allow the discovery and use of their data in other Projects. Intermediate Projects can be used as permission boundaries or discovery hubs, wherein the users who own one part of a pipeline can declassify, curate, or otherwise distribute shareable versions of their datasets and make them available to downstream consumers.
Project references add an increased layer of scrutiny for moving data between Projects by explicitly acknowledging when a dataset is exported from or imported to a Project.
To reference a resource, you must have compass:import-resource-from
on the resource (usually expanded from the Viewer role) and compass:import-resource-to
on the destination Project (usually expanded from the Editor role). These permissions can be customized using custom roles.
A user needs access to all Markings related to datasets referenced in a code repository in order to modify code in that repository.