-
Notifications
You must be signed in to change notification settings - Fork 355
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
Add backend: ProQuest Federated Search Gateway #3991
base: dev
Are you sure you want to change the base?
Add backend: ProQuest Federated Search Gateway #3991
Conversation
Other than the TODOs, I think this is far enough to be worth a review. Also worth noting that there is no authentication config, it's simply IP-based access. |
*/ | ||
public function getShortTitle() | ||
{ | ||
return strip_tags($this->marcGetShortTitle()); |
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.
The strip_tags is temporary until #4004 is integrated.
@@ -0,0 +1 @@ | |||
<?=$this->render('RecordDriver/DefaultRecord/link-generic.phtml', compact('driver', 'lookfor') + ['type' => 'author', 'quoteQuery' => false]); |
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.
The only change here is overriding the default Author
to author
.
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.
Thanks, @maccabeelevine -- this is off to a great start! Just a few (mostly minor) comments below, plus a couple of other notes:
1.) I notice that you've made some backward-breaking changes to the SRU backend. I'm not concerned about this since I don't think it's being used anywhere, but I did add a TODO to remind myself to update the changelog just in case when we merge this.
2.) It might be nice to add some tests once the code is stable, if time permits!
; and max_input_vars settings and/or adjust the Apache LimitRequestLine setting. | ||
default_limit = 20 | ||
; limit_options = 10,20,40,60,80,100 | ||
|
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 think we probably need to add the result_limit setting here to limit the depth at which users can paginate into the results. If I try to jump to the end of a long result set, it loads for a long time and finally fails with:
An error has occurred - TypeError: can't convert undefined to object
module/VuFindSearch/src/VuFindSearch/Backend/ProQuestFSG/Backend.php
Outdated
Show resolved
Hide resolved
...e/VuFindSearch/src/VuFindSearch/Backend/ProQuestFSG/Response/XML/RecordCollectionFactory.php
Outdated
Show resolved
Hide resolved
...e/VuFindSearch/src/VuFindSearch/Backend/ProQuestFSG/Response/XML/RecordCollectionFactory.php
Outdated
Show resolved
Hide resolved
Co-authored-by: Demian Katz <[email protected]>
Co-authored-by: Demian Katz <[email protected]>
Yup I think that was your suggestion a while back, to not worry about those changes to SRU. If we have another use of SRU at some point and want some of the old code, Git will remember.
Of course, just added some that I thought were worthwhile. (And didn't add some others... :) But I can be convinced otherwise.) |
Thanks, @maccabeelevine, I agree that your tests seem like a worthwhile start; we can always expand later based on need. I just don't like adding new features without any tests at all. :-) Looks like my comment above about the result_limit setting still needs to be addressed, but I think we're otherwise about caught up. If you want more eyes on this (and more thorough hands-on testing than I can currently manage), feel free to also request a review from @sturkel89. |
The ProQuest Federated Search Gateway is an SRU API for searching across research databases licensed via ProQuest. It's old (docs last updated 2016) but still works and per ProQuest customer service:
On the plus side, it has a fairly rich CQL syntax for search. On the minus, there are no facets offered other than the constituent databases.
Implementation is patterned after the soon-to-be-deleted WorldCat backend as they both use SRU.
TODO