-
Notifications
You must be signed in to change notification settings - Fork 15
Description
minimal example
Consider a tiled, multiple dimensional array. For example this one visualized in Figure 1:
https://pydap.github.io/pydap/en/notebooks/ECCO.html#download-a-single-variable
The array has a dimension called tile of length 13. Each tile represents a region of the world. Imagine I want to subset 3 tiles at once, and stream the data into a local file. If these tiles are contiguous (or equidistant) I can do the following:
<base_url>.dap?dap4.ce=/Depth[0:2,:,:] # <--- example case 1: tiles=0,1,2
<base_url>.dap?dap4.ce=/Depth[2:2:6,:,:] # <--- example case 2: tiles=2,4,6
# or
<base_url>.dap?dap4.ce=/tile=[0:2];/Depth # <--- example case 1: tiles=0,1,2
<base_url>.dap?dap4.ce=/tile=[2:2:6];/Depth # <--- example case 2: tiles=2,4,6the examples above work because the tiles 0,1,2 are contiguous. But say I want to extract tiles that are NOT contiguous:
<base_url>.dap?dap4.ce=/Depth[(2,5,10),:,:]
# or
<base_url>.dap?dap4.ce=/tile=[2,5,10];/DepthNOTE: I added ( and ) in the first case above to illustrate the elements I want to subset along the first dimension. In the case of subsetting using shared dimensions, the syntax would be cleaner.
I do not think this is supported: https://opendap.github.io/dap4-specification/DAP4.html#_array_subsetting_in_index_space