Omero search for a user's data is showing empty results if the user is not owning the project

Hi all,

we see a somewhat unexpected search behaviour in our Omero instance. I typically upload images into existing projects. These projects are owned by someone else, while I create a new dataset and upload the images not on behalf of someone, but simply with my user. If I now search (“Explore data”) within a specific group for my datasets/images, I do get an empty result:
omero_search_results_empty

However, when I search for the user that owns the project itself, then the result contains my datasets and images too.

So the question is, if this searching behaviour works as intended. It is at least not what we are expecting and we wonder if this is something that can be modified in the Omero configuration.

This topic might be related to what has been described earlier (https://forum.image.sc/t/how-to-get-all-the-projects-and-datasets-of-an-omero-user/47245. @will-moore wrote there that the search should at least find the datasets. But for us this is not the case, as seen above.

Any hints are much appreciated.

Thanks, Anna

Hi Anna,
That previous discussion was about using the Search page to do a text-based search for data. But the screenshots above are not what we call search. This is simply “browsing” the Project/Dataset hierarchies for different users.

In this case, the “top-level” objects (Projects, Orphaned Datasets, Screens, Orphaned Plates and Orphaned images) will belong to the User who’s data you are browsing.
In each of those containers, you will see the “children” that are linked to them (e.g. the Datasets that are linked to the parent Project) regardless of ownership.

We also aim to only show an object (e.g. a Dataset) in 1 hierarchy. So if it is linked to a Project, it will only appear under that Project (not as a top-level orphaned Dataset). If you don’t own that Project then the Dataset won’t appear under your own hierarchy.

So I’m afraid it is working as intended and can’t currently be configured.

I had a look at the omero-web code and the change you want is a small diff. Only ignore ‘orphaned’ Datasets if the parent Project belongs to you at: omero-web/tree.py at 90dd8ad0e2d6b5ed83b9f76fde6c0d07a8b7e688 · ome/omero-web · GitHub

$ git diff
diff --git a/omeroweb/webclient/tree.py b/omeroweb/webclient/tree.py
index 8612b40c6..e25aaccc2 100644
--- a/omeroweb/webclient/tree.py
+++ b/omeroweb/webclient/tree.py
@@ -478,8 +478,9 @@ def marshal_datasets(
             not exists (
                 select pdlink from ProjectDatasetLink as pdlink
                 where pdlink.child = dataset.id
+                and pdlink.parent.details.owner.id=%s
             )
-            """
+            """ % experimenter_id
         )

I guess this could be an OMERO setting to switch on this behaviour, especially if it’s something that others might expect? The hardest part is choosing a name for it!

Regards,
Will

1 Like

Hi @will-moore,

thanks a lot for your quick answer and explanation. I wasn’t aware that these are basically different functionalities. Our core users usually use the “browsing” functionality and not the real “search”. I’m not sure if there is a reason behind it, but it just seems to be more intuitive. But I can confirm, that when using the real search it shows all of my data properly. So I will let our users know about it. Nevertheless it would be of course lovely if this small change could be added to one of the next version Omero versions.

Thanks,
Anna

@ahamacher
One more information which might be useful for your users. In the case discussed above, it is good to draw the attention of the users to “All Members” option which allows them to see all the Projects, Datasets and Images in that group, irrespective of who is owning them. I think this would solve a lot of the problems the users are remarking on without even using the Search functionality, instead, staying in the “Browse” functionality which is navigated as seen on the screenshot, in top-left corner by clicking on your group name.

Best

Petr

Screenshot 2021-03-31 at 13.35.19

Hi Anna,

Let us know how you get on with your users with the “Search” option and Petr’s “All Members” suggestion. Every new feature has a cost (testing, docs, training etc) so we’d want to be sure it’s really needed by the community before going ahead.
Thanks,
Will.

Good morning @will-moore and @pwalczysko ,

the “All Members” option is frequently used amongst our users, but it is only handy for groups with not too many projects and/or datasets. Especially we as a core facility have mostly no clue about the structure or naming conventions of the working groups, so it is much easier for us to search for specific persons that we collaborate with rather than to browse through all projects. Just as a general side note. In any case we will go ahead with the real search for now.

Thanks and regards,
Anna

2 Likes