html_url,issue_url,id,node_id,user,created_at,updated_at,author_association,body,reactions,performed_via_github_app,issue
https://github.com/pydata/xarray/issues/4118#issuecomment-845845472,https://api.github.com/repos/pydata/xarray/issues/4118,845845472,MDEyOklzc3VlQ29tbWVudDg0NTg0NTQ3Mg==,6772352,2021-05-21T10:15:13Z,2021-05-21T10:17:00Z,NONE,"A simple comment/question:
In xarray.Dataset, why not just **use the Unix-path notation into a ""flat"" dict model**?
Actually, netCDF4 implements this Unix-like path access to groups and variables: `/path/to/group/variable`.
All of the hierarchical stuff (e.g., getting a sub-Dataset from a random group) and conventions (e.g., dimensions scoping rule) would then be driven by the parsing of strings only. It's all about symbolic names (like in a file system right?) and there would be not any hierarchical data in memory anymore.
My question is then: **Are there some tricky points for xarray.Dataset not to go this simple way?**
Some related remarks:
- About the attribute access to variables: I don't really know why this exist at all since it is all about mixing unrelated namespaces: (1) the class internals and (2) the user's variables one. Mixing namespaces seems very bad to me: it makes some variable names forbidden in order to avoid any collision between the two namespaces, it usually imply unnecessarily complex code with corner cases to deal with.
- About netCDF4 being a self-described format: xarray API has `open_dataset(filepath)`, but **this function is unable to read the whole file in memory without getting help from a priori file content description**, i.e., the names of the groups if you follow me. Considering xarray for simple tasks like geographical-selection-cropping, it seems to ignore the self-describing nature of netCDF4 format. As far as I can understand the situation, a ""flat"" model could be a good way to go.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,628719058