mnylc / islandora_multi_importer

This is a flexible, twig based, all cmodel, tabular data to islandora Object importer with optional ZeroMQ processing
GNU General Public License v3.0
16 stars 15 forks source link

MODS to DC XSLT not being triggered #95

Closed astrohm closed 5 years ago

astrohm commented 5 years ago

We're having some trouble with the MODS to DC transform. We've edited the default XSLT and updated the file located in the /islandora_xml_forms/builder/transforms directory and the IMI directory, and we've confirmed that if we use the Islandora UI to ingest and item, the transformation of the MODS is happening correctly and the resulting DC file looks the way it should. All content models are currently associated with the same default XSLT in the Form Builder settings.

When using the IMI, we select the default XSLT file for the generation of the DC file, and the resulting DC file only contains a title (generated from the item label we select during the IMI import, I think) and the pid. None of the other metadata is included, even though our twig file is generating the correct MODS file. So somewhere the module is failing to trigger the transform.

Thanks for taking a look!

DiegoPino commented 5 years ago

@astrohm cool. Looking at it now. Thanks for reporting

DiegoPino commented 5 years ago

@astrohm @patdunlavey @McFateM See please https://github.com/mnylc/islandora_multi_importer/pull/97 Also, do you all want a way of pointing to an external XSLT for this? Or an upload? The Drupal var is there, but not exposed via UI. Really needed? How many variants to the infamous MODS to DC can exist?

astrohm commented 5 years ago

We had loaded a new file into the module filesystem. We've got a slightly customized MODS to DC that we'd like to use, but aren't picky on whether we select it via the UI or just put it in a directory.

McFateM commented 5 years ago

Same with me. I have a custom xslt too, but it’s not critical. Would be nice to have.

From: astrohm notifications@github.com<mailto:notifications@github.com> Reply-To: mnylc/islandora_multi_importer reply@reply.github.com<mailto:reply@reply.github.com> Date: Monday, December 17, 2018 at 3:41 PM To: mnylc/islandora_multi_importer islandora_multi_importer@noreply.github.com<mailto:islandora_multi_importer@noreply.github.com> Cc: Mark McFate mcfatem@grinnell.edu<mailto:mcfatem@grinnell.edu>, Mention mention@noreply.github.com<mailto:mention@noreply.github.com> Subject: Re: [mnylc/islandora_multi_importer] MODS to DC XSLT not being triggered (#95)

We had loaded a new file into the module filesystem. We've got a slightly customized MODS to DC that we'd like to use, but aren't picky on whether we select it via the UI or just put it in a directory.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_mnylc_islandora-5Fmulti-5Fimporter_issues_95-23issuecomment-2D448008972&d=DwMCaQ&c=HUrdOLg_tCr0UMeDjWLBOM9lLDRpsndbROGxEKQRFzk&r=PQglHQe-EzyZqJOuOVcmU0OZ6bg-89msSPuqyNlQr28&m=iNpn3JWb-VNaIH86_VaqRfPYSA1oH0ll-kRrUs_DIw0&s=YuWueJ11eUODzxI-mYqxoX5E7cTfukkWbx_mhT_OhJo&e=, or mute the threadhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_AIFIwYw3jnM4ToS22pWMLh9nMy5wJbscks5u6A-2DJgaJpZM4ZR4u9&d=DwMCaQ&c=HUrdOLg_tCr0UMeDjWLBOM9lLDRpsndbROGxEKQRFzk&r=PQglHQe-EzyZqJOuOVcmU0OZ6bg-89msSPuqyNlQr28&m=iNpn3JWb-VNaIH86_VaqRfPYSA1oH0ll-kRrUs_DIw0&s=wja8wmET9ci3M_vak7kCK1mxCiUilSPOgUeDz-kM06E&e=.

DiegoPino commented 5 years ago

@astrohm @McFateM @patdunlavey. I feel #97 is ready to test.

I added:

  1. if admin/islandora/xmlform/settingsUse Default DC XSLTs` is unset 1.2 Derive DC from MODS using the internal XSLT if DC was not already generated by some other means (like an uploaded file or a twig template) and MODs actually exist. 1.2 Try to derive. If it fails, log, if not ingest the damn thing.

Also: this pull also generates an empty Collection Policy 👀 on newly created Collections. Also, it includes a new RELS-EXT merging option when using this for updating. I feel it is still 95% accurate but getting there.

This is now working for Newly created objects. Not sure what would be the expected behavior for updates so open to suggestions (since in that case, DC will always exist!).

I decided for now (time constraints) not to add a form element in the admin page to set up the XSLT value. Mostly because it would require some dB logic probably or exposing filesystem (if no DB logic) to the ingester. I wanted to reuse the XML forms XLST management class but then i noticed there is not a "plain" get, only a "get if associated to CMODEL", which well, was not what I wanted.

I really hope this does not affect in any way performance (for those without default XSLT) since now more stuff happens on each ingested object. Finally, if you have a default XSLT, please make sure your CMODELS are actually mapped. I'm not defaulting to "derive it the IMI way" if someone forgot to map their manuscript CMODEL to an XSLT transformation!

astrohm commented 5 years ago

We're still not seeing the Mods to DC file in the module directory being activated, but I'm beginning to think that there's some user error involved on our end. Perhaps if others aren't seeing this, we can chat via email or another means to see what we're potentially doing wrong.

DiegoPino commented 5 years ago

Hi, you mean after testing that branch? Or did you pull from master again? Yes, we can chat. I repeated my tests with that new branch and mods to dc is working quite fine, maybe there are some permissions/naming issues with the replacement? Any errors on the log?

El El vie, 21 de dic. de 2018 a las 09:55, astrohm notifications@github.com escribió:

We're still not seeing the Mods to DC file in the module directory being activated, but I'm beginning to think that there's some user error involved on our end. Perhaps if others aren't seeing this, we can chat via email or another means to see what we're potentially doing wrong.

— You are receiving this because you were assigned.

Reply to this email directly, view it on GitHub https://github.com/mnylc/islandora_multi_importer/issues/95#issuecomment-449408978, or mute the thread https://github.com/notifications/unsubscribe-auth/AGn85xLPHcbP0xPCV83fhIFM7WzCwUvAks5u7PZHgaJpZM4ZR4u9 .

-- Diego Pino Navarro Digital Repositories Developer Metropolitan New York Library Council (METRO)

astrohm commented 5 years ago

We'd missed the last updates on the branch -- everything is working as expected now, thanks!

DiegoPino commented 5 years ago

Fixed by https://github.com/mnylc/islandora_multi_importer/commit/d88084fae88a8e8dd4b71fec4f8dbef348c539a4 and merged to master