Release 3.5.0.-beta: hierarchical import through OAI and CUSTOM interfaces #5508
-
We have been experimenting with a custom import interface but more recently switched to an OAI interface. We have been trying to make multi-level imports work with both, but found several obstacles. In case of OAI, these may also be grounded in the standard.
|
Beta Was this translation helpful? Give feedback.
Replies: 4 comments 15 replies
-
This limitation exists because OAI PMH interfaces are not really meant for searching but for harvesting instead and thus do not allow defining custom search fields (including fields querying records by parent ID). To support metadata import from OAI interfaces anyway we make use of the predefined OAI "verb"
This is a bug. (and Because being able to search for individual records by ID was sufficient for the use case at that time, Since enabling these features for
This is difficult to say without further investigation. There were several bugs concerning import configurations in release 3.5.0-beta which have since been fixed (see https://github.com/kitodo/kitodo-production/milestone/18 for progress). Perhaps you could try with the most current master branch to see if the problem you described has been resolved as well?
This is probably a remnat of earlier version of Kitodo.Production 3 and may not be required anymore. (It should not matter if you select 'reference' here). The corresponding GitHub issue is #5318. I will have to check whether it is still required in some cases when I find the time. |
Beta Was this translation helpful? Give feedback.
-
Yes, adding support for the OAI verb This would probably not be a trivial change, though, so implementing this feature will most likely require some time and resources. Perhaps this could be a candidate for the development fund 2023. Could you provide me with an example URL of the search interface you want to query for an individual record? I could check whether allowing custom search fields for CUSTOM type interfaces is more feasible in the current master or not in order to create the query you need. |
Beta Was this translation helpful? Give feedback.
-
In addition to everything said above: It appears to me that in your case the same field ("identifier") is used for retrieving children and parent records. So the automatic retrieval of a parent record should also work (at least for the normal process creation). I am also using a custom interface and when i import a child record the parent record is also imported. So this works for me. Edit: But i am also not sure WHY this works - i am still not fully sure about the exact purpose of the functional keys |
Beta Was this translation helpful? Give feedback.
-
My understanding of those keys is that The So when the system is searching if there is already an parent record in the database for the newly created record the following is happing:
When the parent's record identifier is not already contained in the database, Kitodo is trying to import the parent from an external catalog. The number of times this import logic is called depends on the number of import levels defined during import. This is done using repeated/recursive calls of the method The logic works in a way that after the import of a record, the This |
Beta Was this translation helpful? Give feedback.
Yes, adding support for the OAI verb
ListRecords
has been on my mind for some time. It could be used to create hit lists similar to those resulting from regular search queries, instead showing all records of the selected OAI set.This would probably not be a trivial change, though, so implementing this feature will most likely require some time and resources. Perhaps this could be a candidate for the development fund 2023.
Could you provide me with an example URL of the search interface you want to query for an individual record? I could check whether allowing custom search fields for CUSTOM type interfaces is more feasible in the current master or not in order to create the query you need.