Why the transgenic lines of the same experiment don't match?

I am looking at the connectivity data of experiment 156394513. From the website, the transgenic line used in the experiment should be A930038C07Rik-Tg1-Cre.

But when I run the below code, 27 different transgenic lines show up in the data. Why are there 26 extra transgenic lines? Is the connectivity data obtained from the below code really refer to a single experiment only? Or the data refer to multiple experiments?

p.s. Even the lines of same color can have different transgenic lines.

import json
import urllib.request

LINES_FMT = "http://api.brain-map.org/api/v2/data/query.json?criteria=service::mouse_connectivity_target_spatial[seed_point$eq%d,%d,%d][section_data_set$eq%d]"

injection_data_set_id = 156394513

x = 4400
y = 3300
z = 5600

url = LINES_FMT % (x, y, z, injection_data_set_id)

connection = urllib.request.urlopen(url)
response_text = connection.read()
response = json.loads(response_text)

lines = response['msg']

transgenic_lines = [line['transgenic-line'] for line in lines]


Hi @orio

The mouse_connectivity_target_spatial service that you are calling returns a list of experiments based on the one that you have selected in your service call. Each of these has it’s own transgenic line value(s). That is why you see many different values for transgenic line.

Best regards,

@wayne Thanks for your reply. The url used in the code is http://api.brain-map.org/api/v2/data/query.json?criteria=service::mouse_connectivity_target_spatial[seed_point$eq4400,3300,5600][section_data_set$eq156394513]. So the experiment ID 156394513 is at the end of the url. If there are multiple experiments, so what fields are actually filtered? Can I just get data for 1 experiment only instead (since I want to compare the density with the connectivity, and I think the density data is for 1 experiment only.)?

Hi @orio It does seem like the filter options described in the documentation do not actually have an effect.

@wayne So when we do “(x, y, z) = (x0, y0, z0) and experiment = i”, we are actually doing “(x, y, z) = (x0, y0, z0) and experiment = all”? Oh…

Yes, I think I understand and agree with your notation. It does actually work as seen in the GUI