1 of 10

ECS support for�Lists App / FQM

Key development for the Ramsons release

Presented to BELA on 11/12/24

2 of 10

Required permissions

New functionality in Ramsons for content (ECS + non-ECS)

Functionality unique to ECS

3 of 10

FQM/Lists: Enforce content permissions per record type

Changes for end-users (as of Ramsons release):

  • Limit entity/record types when creating a list based on content permissions
  • Limit viewing/filtering of lists on the lists landing page based on content permissions
  • Error/messaging if you don't have permissions for any entity-type

Limit access to record types in Lists app (and FQM) based on the assigned permission(s) the user already has to view record types in FOLIO

Tenant affiliation

Lists app permissions

(for that tenant)

Content permissions

(for that tenant)

Access to �Lists / FQM

(for that tenant)

4 of 10

Enforce required permissions per tenant [ECS]

Access per tenant

Tenant affiliation

App permissions

Content permissions

Central Tenant

✔ Tenant affiliation

✔ App permissions

Instances, Holdings, Items

Member Tenant A

✔ Tenant affiliation

✔ App permissions

Instances, Holdings, Items

Member Tenant B

✔ Tenant affiliation

🗶 App permissions

Instances, Holdings, Items

Member Tenant C

🗶 Tenant affiliation

N/A

N/A

✔ Access to Lists app / FQM � in the Central tenant

✔ Access to Lists app / FQM � in Member tenant A

🗶 No access to Lists app / FQM� in Member Tenant B � (or data from it)

🗶 No access to Lists app / FQM� in Member Tenant C � (or data from it)

5 of 10

Cross-tenant queries

Definitions, Functionality, Limitations

6 of 10

Query within a tenant (intra-tenant)

  • Query that relies on data within the local tenant
  • Equivalent of core Lists/FQM functionality in non-ECS environments
  • All queries in a member tenant are intra-tenant
  • Can occur in central tenant (for record types that don’t support cross-tenant queries)
  • ECS: can include shared data (e.g. shared instance records), but will rely on appropriate shadow records within the local tenant
  • Results are affected by the user’s app + content permissions in the active affiliation

Only occurs in the Central tenant

Limited record types are supported

Query that can include data from more � than one tenant

Results are affected by the user’s � affiliations, app + content permissions

Cross-tenant query

Cross-tenant queriesNew for Ramsons

7 of 10

How to access:

  • Lists app
  • FQM (via API)
  • Bulk edit (via Query)

Supported entities:

  • Instances
  • Holdings
  • Items

Lists app restrictions:

  • For the Ramsons release, lists with a cross-tenant query will be restricted to a single user (via ‘private’ visibility option)
  • Simplifies experience: no accounting for scenarios when users with different affiliations / permissions interact with the same list), and allows us time to gather user feedback
  • An indicator that a List uses a cross-tenant query will be added to the Lists UI

Cross-tenant queriesNew for Ramsons

8 of 10

InstancesCross-tenant query expectations

Record type

Included in query results?

Shared instances in the central tenant

True

Local instances in any member tenant

True

Records returned when querying Instances from the Central tenant Assume the user has required affiliations and permission

Record type

Included in query results?

Shared instances in the central tenant

True

Local instances on the active member tenant

True

Local instances on a different member tenant

False

Records returned when querying Instances from a Member tenant Assume the user has required affiliations and permissions

9 of 10

HoldingsCross-tenant query expectations

Record type

Included in query results?

Holdings in a member tenant associated with shared instances

True

Holdings in a member tenant associated with local instances

True

Records returned when querying Holdings from the Central tenant Assume the user has required affiliations and permissions

Record type

Included in query results?

Holdings in active member tenant associated with shared instances

True

Holdings in other member tenant associated with shared instances

False

Holdings in active member tenant associated with local instances

True

Holdings in other member tenant associated with local instances

False

Records returned when querying Holdings from a Member tenant Assume the user has required affiliations and permissions

10 of 10

ItemsCross-tenant query expectations

Record type

Included in query results?

Items in a member tenant associated with shared instances

True

Items in a member tenant associated with local instances

True

Records returned when querying Items from the Central tenant Assume the user has required affiliations and permissions

Record type

Included in query results?

Items in active member tenant associated with shared instances

True

Items in other member tenant associated with shared instances

False

Items in active member tenant associated with local instances

True

Items in other member tenant associated with local instances

False

Records returned when querying Items from a Member tenantAssume the user has required affiliations and permissions