-
Notifications
You must be signed in to change notification settings - Fork 2
removing advanced search #13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
removing advanced search #13
Conversation
can we merge this ? @m-mohr |
Has this been moved somewhere already? Removing without replacement or deprecation seems not like the right approach. |
Well my understanding is that I'll let @rhysrevans3 jump in for this one |
I haven't moved this yet as I'm still unsure of the best place for it. The two options I came up with were:
I agree with @vincentsarago advanced search could be more well described (I'd like to follow the Lucene query syntax but that might be my elasticsearch bias showing). I'm happy to do the move if there's a consensus on where it should be moved to. |
Filter is not a good idea as that's meant to be aligned with OGC APIs. Just to be clear this is pretty much two extensions in one already. There are different conformance classes so you could literally just copy the repository and delete everything for basic in the new repository and remove everything for advaned from this repository. That would be the simplest way for now to just separate them. What to do with advanced afterwards, I'm not sure. |
I don't think adding an extra filter language would stop the filter extension from being aligned with OGC APIs. They actually explicitly allow extra filtering languages.
from OGC API - Features - Part 3: Filtering - 8.3 Parameter filter-lang |
Yeah, but then instead of a slightly convoluted free-text search extension we'd have a even more convoluted filter extension. I don't see why this would be desirable. Given the status of the advanced free text, I'd noestly just create a separate extension for it, if it is deemed useful to split them from the basic free text. |
Sorry I got the wrong end of the stick for your last message. You're right that was the thought behind "an extension to the filter extension" (a separate extension that extends the filter extension) so it would leave the core filter extension alone. That was also part of the reason for suggesting this move to allow free text search to also be fully aligned with the OGC API's free text search. But as you said these are practically separate extensions already so probably not as big a concern as I thought. The other reason was to allow APIs the option to do both basic and advanced (as long as a different parameter was used). So they could stay in line with the OGC and have the extra functionality of advanced. But maybe that's more confusing than it's worth. Reading your's and @fmigneault (stac-utils/stac-fastapi#849) opinions on the move I'm happy to leave advanced search in this extension and close this pull if that's the consensus. Possibly a separate issue but would people be happy to have advanced free text search follow Lucene query syntax just to make it more well defined? A note could be added to the readme. |
I think we should separate the various different discussions that are going on. For me the roadmap would be:
|
I think having separate extensions makes sense if the Advanced Free Text Search can be complementary/extends the Basic one. Right now, they are conflicting by using the same The Lucene syntax IMO is closer to a |
Shouldn't it be the opposite? If advanced extends the basic one, they should be together. If they cinflict, they should be separate. 🤔 |
Feels more like a extension structure/administration concern. Extensibility and conflicts are both hard to track if too disjoint, so proper references must be given either way (similar to Another way to refer them could be that the conformance class of Advanced inherits from Basic, so it is a requirement that both are referenced and handled if Advanced is implemented. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree with @m-mohr that just deleting content from the readme isn't very user-friendly. There should be some kind of deprecation cycle and a clear path of what people should be migrating to.
I am looking forward to implementing and support it once the issue I encountered was fixed (stac-utils/stac-fastapi#849). Preferably, it is not unnecessarily deprecated unless this deprecation comes with a direct replacement. I see little/no advantage in separating/moving them though, since each basic/advanced variant can already be identified by their distinct conformance URIs even if they are maintained under a common repository. Leaving them together avoids repeating concepts that are shared between the two. |
Versioning would be simpler if they are split, including a potential deprecation of Advanced. |
If split and Advanced moves to a new separate version, then I suggest we take that versioning opportunity to integrate my proposal during the community meeting, that is, that Advanced is adjusted to work on top of Basic rather than conflicting with it. The only adjustments would be:
This way would allow APIs to support both variants simultaneously, and users would get natural responses with whichever typical "anyOf" text representation they submit. |
I did some extra digging into the code, and I found that it is implemented in stac-utils/pgstac#295. However, |
I'm closing here, this is something for an issue, not a PR. |
Advanced and simple free text search are not compatible. I think advanced search is closer to Filter Extension so should be moved to either the filter extension or it's own extension of the filter extension.
#10