Bug #5885
closedUpgrading EML version causes access policy to be lost
0%
Description
Matt saved a DataONE package to the MN using R, but the EML was 2.0.1 and had no access rules in it. The SystemMetadata specified public access. When he opened it in Morpho it had him upgrade it to 2.1.1, but the access rules were lost.
Updated by ben leinfelder almost 12 years ago
My hunch is that the original SystemMetadata (from the MN) is discarded during the upgrade process and new SystemMetadata is generated from the EML fields. We should really be saving the original SystemMetadata and then just setting these fields:
-identifier (new identifier)
-obsoletes (the original identifier)
-formatId (new EML version)
-size
-checksum
Updated by ben leinfelder almost 12 years ago
Here is an example EML 2.0.1 file that has an accessPolicy set in SystemMetadata. When I open it by id in Morpho (after many exceptions because it cannot find the referenced data file) it asks me to upgrade to 2.1.1. I say yes, and then look at the access policy and there are none.
See the SM has an access policy:
https://mn-demo-5.test.dataone.org/knb/d1/mn/v1/meta/doi:10.6085/AA/ALEXXX_015ADCP015R00_19990817.50.5
Updated by Jing Tao almost 12 years ago
If i didn't upgrade the eml version and saved it locally, the access policies can be preserved in the system metadata. So, during the upgrade process, the system metadata was lost.
Updated by Jing Tao almost 12 years ago
Before the upgrading, the system metadata should be preserved. Then we set it backup when the upgrading is done.
After doing that, the access rules will not be lost. And the format in the system metadata still is the eml-2.1.1.