Relationships

How resources connect, as the queries that follow each link. A forward step reads ids on the record you already have; a reverse step asks the next resource for records pointing back. Collect ids, de-duplicate them and pass them on with filter{<field>.in}.

Table of contents

  1. Single-hop routes
  2. Questions with several branches
  3. Delete behaviour

Single-hop routes

From → toHow
anatomicalregion → experimentalinterfaceGET /api/private/modules/experimentalinterface/?filter{target_regions.in}=<ids>
anatomicalregion → procedureGET /api/private/modules/procedure/?filter{target_regions.in}=<ids>
anatomicalregion → specimenprocedureGET /api/private/modules/specimenprocedure/?filter{target_regions.in}=<ids>
anatomicalregion → specimensetGET /api/private/stem/specimenset/?filter{target_regions.in}=<ids>
behavior → behavioralassayread behavioralassay on each behavior record (one id)
behavior → sessionread session on each behavior record (one id)
behavior → setupread setup on each behavior record (one id)
behavior → subjectread subjects on each behavior record (list of ids)
behavioralassay → behaviorGET /api/private/modules/behavior/?filter{behavioralassay.in}=<ids>
behavioralassay → behavioralparadigmread behavioral_paradigm on each behavioralassay record (one id)
behavioralparadigm → behavioralassayGET /api/private/personal_attributes/behavioralassay/?filter{behavioral_paradigm.in}=<ids>
cohort → subjectread subjects on each cohort record (list of ids)
collection → sessionread sessions on each collection record (list of ids)
consumable → consumablestockGET /api/private/modules/consumablestock/?filter{consumable.in}=<ids>
consumable → materialusageGET /api/private/modules/materialusage/?filter{consumable.in}=<ids>
consumablestock → consumableread consumable on each consumablestock record (one id)
consumablestock → materialusageGET /api/private/modules/materialusage/?filter{consumable_stock.in}=<ids>
dataacquisition → equipmentread equipment on each dataacquisition record (list of ids)
dataacquisition → experimentalinterfaceread interfaces on each dataacquisition record (list of ids)
dataacquisition → sessionread session on each dataacquisition record (one id)
epoch → sessionGET /api/private/stem/session/?filter{epochs.in}=<ids>
equipment → dataacquisitionGET /api/private/modules/dataacquisition/?filter{equipment.in}=<ids>
equipment → experimentalinterfaceGET /api/private/modules/experimentalinterface/?filter{equipment.in}=<ids>
equipment → setupread setup on each equipment record (one id)
experimentalinterface → anatomicalregionread target_regions on each experimentalinterface record (list of ids)
experimentalinterface → dataacquisitionGET /api/private/modules/dataacquisition/?filter{interfaces.in}=<ids>
experimentalinterface → equipmentread equipment on each experimentalinterface record (list of ids)
experimentalinterface → manipulationGET /api/private/modules/manipulation/?filter{interfaces.in}=<ids>
experimentalinterface → materialusageGET /api/private/modules/materialusage/?filter{experimental_interface.in}=<ids>
experimentalinterface → specimensetread specimen_set on each experimentalinterface record (one id)
experimentalinterface → subjectread subject on each experimentalinterface record (one id)
manipulation → experimentalinterfaceread interfaces on each manipulation record (list of ids)
manipulation → sessionread session on each manipulation record (one id)
materialusage → consumableread consumable on each materialusage record (one id)
materialusage → consumablestockread consumable_stock on each materialusage record (one id)
materialusage → experimentalinterfaceread experimental_interface on each materialusage record (one id)
materialusage → procedureread procedure on each materialusage record (one id)
materialusage → specimenprocedureread specimen_procedure on each materialusage record (one id)
procedure → anatomicalregionread target_regions on each procedure record (list of ids)
procedure → materialusageGET /api/private/modules/materialusage/?filter{procedure.in}=<ids>
procedure → procedurelogGET /api/private/modules/procedurelog/?filter{procedure.in}=<ids>
procedure → subjectread subject on each procedure record (one id)
procedurelog → procedureread procedure on each procedurelog record (one id)
project → sessionGET /api/private/stem/session/?filter{projects.in}=<ids>
project → specimensetGET /api/private/stem/specimenset/?filter{projects.in}=<ids>
project → subjectGET /api/private/stem/subject/?filter{projects.in}=<ids>
session → behaviorGET /api/private/modules/behavior/?filter{session.in}=<ids>
session → collectionGET /api/private/stem/collection/?filter{sessions.in}=<ids>
session → dataacquisitionGET /api/private/modules/dataacquisition/?filter{session.in}=<ids>
session → epochread epochs on each session record (list of ids)
session → manipulationGET /api/private/modules/manipulation/?filter{session.in}=<ids>
session → projectread projects on each session record (list of ids)
session → specimensetread specimen_sets on each session record (list of ids)
session → subjectread subjects on each session record (list of ids)
setup → behaviorGET /api/private/modules/behavior/?filter{setup.in}=<ids>
setup → equipmentGET /api/private/modules/equipment/?filter{setup.in}=<ids>
setup → setuptyperead setup_type on each setup record (one id)
setuptype → setupGET /api/private/personal_attributes/setup/?filter{setup_type.in}=<ids>
species → subjectGET /api/private/stem/subject/?filter{species.in}=<ids>
specimen → specimensetread specimen_set on each specimen record (one id)
specimenlog → specimensetread specimen_set on each specimenlog record (one id)
specimenprocedure → anatomicalregionread target_regions on each specimenprocedure record (list of ids)
specimenprocedure → materialusageGET /api/private/modules/materialusage/?filter{specimen_procedure.in}=<ids>
specimenprocedure → specimensetread specimen_set on each specimenprocedure record (one id)
specimenset → anatomicalregionread target_regions on each specimenset record (list of ids)
specimenset → experimentalinterfaceGET /api/private/modules/experimentalinterface/?filter{specimen_set.in}=<ids>
specimenset → projectread projects on each specimenset record (list of ids)
specimenset → sessionGET /api/private/stem/session/?filter{specimen_sets.in}=<ids>
specimenset → specimenGET /api/private/stem/specimen/?filter{specimen_set.in}=<ids>
specimenset → specimenlogGET /api/private/modules/specimenlog/?filter{specimen_set.in}=<ids>
specimenset → specimenprocedureGET /api/private/modules/specimenprocedure/?filter{specimen_set.in}=<ids>
specimenset → subjectread subject on each specimenset record (one id)
strain → subjectGET /api/private/stem/subject/?filter{strain.in}=<ids>
subject → behaviorGET /api/private/modules/behavior/?filter{subjects.in}=<ids>
subject → cohortGET /api/private/stem/cohort/?filter{subjects.in}=<ids>
subject → experimentalinterfaceGET /api/private/modules/experimentalinterface/?filter{subject.in}=<ids>
subject → procedureGET /api/private/modules/procedure/?filter{subject.in}=<ids>
subject → projectread projects on each subject record (list of ids)
subject → sessionGET /api/private/stem/session/?filter{subjects.in}=<ids>
subject → speciesread species on each subject record (one id)
subject → specimensetGET /api/private/stem/specimenset/?filter{subject.in}=<ids>
subject → strainread strain on each subject record (one id)
subject → subjectlogGET /api/private/modules/subjectlog/?filter{subject.in}=<ids>
subjectlog → subjectread subject on each subjectlog record (one id)

Questions with several branches

session → anatomicalregion

Where a session’s recordings or manipulations were targeted, through the interfaces they used. For specimen sessions the set’s own target regions apply.

  • session>dataacquisition → dataacquisition>experimentalinterface → experimentalinterface>anatomicalregion
  • session>manipulation → manipulation>experimentalinterface → experimentalinterface>anatomicalregion
  • session>specimenset → specimenset>anatomicalregion

session → behavioralparadigm

Behavioral paradigms run in a session.

  • session>behavior → behavior>behavioralassay → behavioralassay>behavioralparadigm

session → consumable

Which probe designs, viruses or reagents a session’s recordings used, through interface materials.

  • session>dataacquisition → dataacquisition>experimentalinterface → experimentalinterface>materialusage → materialusage>consumable
  • session>dataacquisition → dataacquisition>experimentalinterface → experimentalinterface>materialusage → materialusage>consumablestock → consumablestock>consumable
  • session>manipulation → manipulation>experimentalinterface → experimentalinterface>materialusage → materialusage>consumable
  • session>manipulation → manipulation>experimentalinterface → experimentalinterface>materialusage → materialusage>consumablestock → consumablestock>consumable

session → setuptype

Setup types used in a session: behavior setups, or the setups of recording equipment.

  • session>behavior → behavior>setup → setup>setuptype
  • session>dataacquisition → dataacquisition>equipment → equipment>setup → setup>setuptype

session → species

Species of the animals in a session, directly or through the subject a specimen set came from.

  • session>subject → subject>species
  • session>specimenset → specimenset>subject → subject>species

subject → anatomicalregion

Regions targeted on a subject: by its procedures, its interfaces, or specimen sets taken from it.

  • subject>procedure → procedure>anatomicalregion
  • subject>experimentalinterface → experimentalinterface>anatomicalregion
  • subject>specimenset → specimenset>anatomicalregion

subject → consumable

Materials used on a subject: in its procedures or built into its interfaces.

  • subject>procedure → procedure>materialusage → materialusage>consumable
  • subject>procedure → procedure>materialusage → materialusage>consumablestock → consumablestock>consumable
  • subject>experimentalinterface → experimentalinterface>materialusage → materialusage>consumable
  • subject>experimentalinterface → experimentalinterface>materialusage → materialusage>consumablestock → consumablestock>consumable

Delete behaviour

What happens to a record when a record it points to is deleted: cascade deletes it too, protect refuses the deletion while it exists, set null clears the link.

RecordFieldPoints toOn delete
anatomicalreferencespeciesspeciesprotect
anatomicalregionreferenceanatomicalreferenceprotect
anatomicalregionreplaced_byanatomicalregionset null
anatomicalregionuseruserset null
behaviorbehavioralassaybehavioralassayprotect
behaviorsessionsessioncascade
behaviorsetupsetupprotect
behavioruserusercascade
behavioralassaybehavioral_paradigmbehavioralparadigmprotect
behavioralassaysetup_typesetuptypeprotect
behavioralassayuserusercascade
behavioralassaygroupmembershipinvitationbehavioralassaybehavioralassaycascade
behavioralassaygroupmembershipinvitationinviteegroupcascade
behavioralassaygroupmembershipinvitationuserusercascade
behavioralassaymembershipinvitationbehavioralassaybehavioralassaycascade
behavioralassaymembershipinvitationinviteeusercascade
behavioralassaymembershipinvitationuserusercascade
behavioralcategoryparentbehavioralcategoryprotect
behavioralcategoryuserusercascade
behavioralcategoryapprovalparentbehavioralcategoryapprovalprotect
behavioralcategoryapprovalreviewerusercascade
behavioralcategoryapprovaluserusercascade
behavioralparadigmcategorybehavioralcategoryprotect
behavioralparadigmuserusercascade
behavioralparadigmapprovalcategorybehavioralcategoryprotect
behavioralparadigmapprovalreviewerusercascade
behavioralparadigmapprovaluserusercascade
breedingfathersubjectprotect
breedingmothersubjectprotect
breedingprojectprojectcascade
breedinguserusercascade
cohortprojectprojectcascade
cohortuserusercascade
collectionprojectprojectcascade
collectionuserusercascade
consumablesuppliersupplierprotect
consumableuserusercascade
consumableapprovalreviewerusercascade
consumableapprovalsuppliersupplierprotect
consumableapprovaluserusercascade
consumablestockconsumableconsumableprotect
consumablestockinventoryinventoryprotect
consumablestockuserusercascade
coordinatetransformanatomical_referenceanatomicalreferenceprotect
dataacquisitionsessionsessioncascade
dataacquisitionuserusercascade
dataacquisitiontemplateuserusercascade
datastorageuserusercascade
datastoragegroupmembershipinvitationdatastoragedatastoragecascade
datastoragegroupmembershipinvitationinviteegroupcascade
datastoragegroupmembershipinvitationuserusercascade
datastoragemembershipinvitationdatastoragedatastoragecascade
datastoragemembershipinvitationinviteeusercascade
datastoragemembershipinvitationuserusercascade
epochbehaviorbehaviorset null
epochsessionsessioncascade
epochuserusercascade
equipmentconsumableconsumableprotect
equipmenthardwaredevicehardwaredeviceprotect
equipmentsetupsetupprotect
equipmentuserusercascade
experimentalinterfacesource_material_usagematerialusageset null
experimentalinterfacespecimen_setspecimensetcascade
experimentalinterfacesubjectsubjectcascade
experimentalinterfaceuserusercascade
experimentalinterfacetemplateuserusercascade
groupmembershipinvitationauthgroupgroupcascade
groupmembershipinvitationuserusercascade
groupmembershipinvitationuser_account_invitationusercascade
groupmembershiprequestauthgroupgroupcascade
groupmembershiprequestuserusercascade
groupmembershiprequestuser_account_requestusercascade
hardwaredevicesuppliersupplierprotect
hardwaredeviceuserusercascade
hardwaredeviceapprovalreviewerusercascade
hardwaredeviceapprovalsuppliersupplierprotect
hardwaredeviceapprovaluserusercascade
inventoryuserusercascade
inventorygroupmembershipinvitationinventoryinventorycascade
inventorygroupmembershipinvitationinviteegroupcascade
inventorygroupmembershipinvitationuserusercascade
inventorymembershipinvitationinventoryinventorycascade
inventorymembershipinvitationinviteeusercascade
inventorymembershipinvitationuserusercascade
journaluserusercascade
journalapprovalreviewerusercascade
journalapprovaluserusercascade
laboratorygroupgroupcascade
laboratoryuserusercascade
licenseregulatory_authorityregulatoryauthorityprotect
licenseuserusercascade
licensegroupmembershipinvitationinviteegroupcascade
licensegroupmembershipinvitationlicenselicensecascade
licensegroupmembershipinvitationuserusercascade
licensemembershipinvitationinviteeusercascade
licensemembershipinvitationlicenselicensecascade
licensemembershipinvitationuserusercascade
manipulationsessionsessioncascade
manipulationuserusercascade
manipulationtemplateuserusercascade
materialusageconsumableconsumableprotect
materialusageconsumable_stockconsumablestockprotect
materialusagecopied_frommaterialusageset null
materialusageexperimental_interfaceexperimentalinterfacecascade
materialusageprocedureprocedurecascade
materialusagespecimen_procedurespecimenprocedurecascade
materialusageuserusercascade
materialusagetemplateconsumableconsumableprotect
materialusagetemplateexperimental_interface_templateexperimentalinterfacetemplatecascade
materialusagetemplateprocedure_templateproceduretemplatecascade
materialusagetemplatespecimen_procedure_templatespecimenproceduretemplatecascade
materialusagetemplateuserusercascade
pendinginvitationuserusercascade
procedureanatomical_referenceanatomicalreferenceprotect
procedurecoordinate_transformcoordinatetransformprotect
procedureperformed_byuserset null
procedureprocedure_episodeprocedureepisodeset null
procedureprotocolprotocolprotect
proceduresubjectsubjectcascade
procedureuserusercascade
procedureepisodeprotocolprotocolprotect
procedureepisodesubjectsubjectprotect
procedureepisodeuserusercascade
procedureepisodetemplateprotocolprotocolprotect
procedureepisodetemplateuserusercascade
procedurelogprocedureprocedurecascade
procedureloguserusercascade
proceduretemplateprotocolprotocolprotect
proceduretemplateuserusercascade
projectuserusercascade
projectgroupmembershipinvitationinviteegroupcascade
projectgroupmembershipinvitationprojectprojectcascade
projectgroupmembershipinvitationuserusercascade
projectmembershipinvitationinviteeusercascade
projectmembershipinvitationprojectprojectcascade
projectmembershipinvitationuserusercascade
protocoluserusercascade
protocolgroupmembershipinvitationinviteegroupcascade
protocolgroupmembershipinvitationprotocolprotocolcascade
protocolgroupmembershipinvitationuserusercascade
protocolmembershipinvitationinviteeusercascade
protocolmembershipinvitationprotocolprotocolcascade
protocolmembershipinvitationuserusercascade
publicationjournaljournalprotect
publicationuserusercascade
publicationapprovaljournaljournalprotect
publicationapprovalreviewerusercascade
publicationapprovaluserusercascade
regulatoryauthorityuserusercascade
regulatoryauthorityapprovalreviewerusercascade
regulatoryauthorityapprovaluserusercascade
sessionuserusercascade
setupsetup_typesetuptypeprotect
setupuserusercascade
setupgroupmembershipinvitationinviteegroupcascade
setupgroupmembershipinvitationsetupsetupcascade
setupgroupmembershipinvitationuserusercascade
setupmembershipinvitationinviteeusercascade
setupmembershipinvitationsetupsetupcascade
setupmembershipinvitationuserusercascade
setuptypeuserusercascade
setuptypeapprovalreviewerusercascade
setuptypeapprovaluserusercascade
speciesuserusercascade
speciesapprovalreviewerusercascade
speciesapprovaluserusercascade
specimensource_specimenspecimenset null
specimenspecimen_setspecimensetcascade
specimenuserusercascade
specimenlogprotocolprotocolset null
specimenlogspecimen_setspecimensetcascade
specimenloguserusercascade
specimenprocedureprotocolprotocolset null
specimenprocedurespecimen_setspecimensetcascade
specimenprocedureuserusercascade
specimenproceduretemplateprotocolprotocolset null
specimenproceduretemplateuserusercascade
specimensetsource_specimen_setspecimensetset null
specimensetsubjectsubjectset null
specimensetuserusercascade
strainspeciesspeciesprotect
strainuserusercascade
strainapprovalreviewerusercascade
strainapprovalspeciesspeciesprotect
strainapprovaluserusercascade
subjectbreedingbreedingset null
subjectspeciesspeciesprotect
subjectstrainstrainprotect
subjectsuppliersupplierprotect
subjectuserusercascade
subjectlogprotocolprotocolprotect
subjectlogsubjectsubjectcascade
subjectloguserusercascade
supplieruserusercascade
supplierapprovalreviewerusercascade
supplierapprovaluserusercascade