Details
-
Story
-
Status: Closed (View Workflow)
-
TBD
-
Resolution: Done
-
-
ERM Sprint 69, ERM Sprint 70, ERM Sprint 71, ERM Sprint 72
-
Bienenvolk
Description
A number of errors can occur on package/resource import to the local KB. These should be handled in the following way:
On importing package data, if the package lacks any of:
- source
- reference
- name
An error log entry should be created indicating what piece of data was missing and that the package and related resource data was not imported as a result
On importing a resource within a package, in order to create a platformTitleInstance if the resource must specify one of:
- platform name
- platform url
If both of these are absent the resource should not be created or added to the package and an error log entry should be created indicating these were missing and that the resource data was not imported as a result
On importing a resource within a package, the resource must have a titleInstance name (i.e. title for the resource). If this is absent the resource should not be created or added to the package and an error log entry should be created indicating the data was missing and that the resource data was not imported as a result
On importing a resource within a package, if the resource has identifiers specified without an accompanying namespace for the identifier, the identifier should not be created or added to the resource, although the resource can still be created/added to the package. A log entry should be created indicating the data was missing and that the identifier data was not imported as a result
On importing a resource within a package, if a coverage start date cannot be parsed as a valid date the date should not be added to the resource, although the resource can still be created/added to the package. A log entry should be created indicating the data was missing and that the coverage start date was not imported as a result
On importing a resource within a package, if a coverage end date cannot be parsed as a valid date the date should not be added to the resource, although the resource can still be created/added to the package. A log entry should be created indicating the data was missing and that the coverage end date was not imported as a result
*In the case of the package import being based on the package JSON schema defined in https://drive.google.com/drive/u/1/folders/1yyRwx4JYjz1KH5RiFSyb3RWXKIm1hSX8* then the rules listed above can be seen as failures against part of the schema. e.g:
- If a top level (package) object in the array does not comply with the relevant part of the schema, the package should not be imported
- If a 'contentItem' in the package (i.e. a record in the package) does not contain a valid platformTitleInstance object, the contentItem should not be processed
- If a 'platformTitleInstance' does not contain a titleInstance with the required fields, the contentItem should not be processed
etc.
In general Log the following details:
- reference to the import/sync job
- reference to the record instance (eg, record number)
- error detail
Log entries should be viewable in the Error Log accordian for the related import job in Local KB Admin (as per ERM-333).
TestRail: Results
Attachments
Issue Links
- defines
-
UXPROD-1643 KB Data integrity checking and error handling
-
- Closed
-
- is duplicated by
-
ERM-183 Log issues with remote KB sync
-
- Closed
-
- relates to
-
ERM-335 Define spec for upload file
-
- Closed
-