-
Notifications
You must be signed in to change notification settings - Fork 1
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
Allow custom mapping of request fields to Aeon fields #228
Comments
I do have a couple of customizations found in non-ASpace data, specifically: Variability in the default request_broker/process_request/routines.py Line 188 in 75070e5
and in the selected request_broker/process_request/routines.py Line 248 in 75070e5
So, |
I think the challenge with mapping is that, as you noted in another issue, the request data is being compiled from the return of I would also suggest making the localization of request defaults a separate issue so we can make sure we've got all the bases covered there. I think we will want to make the concatenation settings configurable too, either by having a
|
Actually, thinking about it more, there is definitely logic which produces the |
The
|
Is your feature request related to a problem? Please describe.
Mapping of fields from the ASpace data object to the Aeon form fields is currently hardcoded:
request_broker/process_request/routines.py
Lines 289 to 306 in 75070e5
Some assumptions are obvious, like
creators
toItemAuthor
ordates
toItemDate
. Others are arbitrary, however, including all ofItemInfo1
toItemInfo5
. Additionally there may be disparity in whetherItemTitle
should represent the object's title or the collection's title.Describe the solution you'd like
Move this mapping into configuration, preferably with a link to, or duplication of, the ASpace schema as a reference. An example of mapping could be:
Describe alternatives you've considered
n/a
Additional context
I'm not currently clear on the implications of this with respect to the Grouping/Concatenate/FirstValue settings here:
request_broker/process_request/routines.py
Lines 186 to 205 in 75070e5
This also doesn't currently consider other Aeon fields which are sourced from request data, not from ASpace data:
request_broker/process_request/routines.py
Lines 248 to 251 in 75070e5
These might be considered standard enough not to require configuration settings.
This also might mean moving logic like
"" if i["restrictions"] == "open" else i["restrictions_text"]
to theget_data
method, rather than theparse_items
method.The text was updated successfully, but these errors were encountered: