Procedure to request islandora_xml_forms module code change

61 views
Skip to first unread message

Michael Brundin

unread,
Jun 24, 2016, 4:29:27 PM6/24/16
to islandora
Hello,

I would like to know the proper procedure to follow to make a request for a code change in an Islandora repository module.  We could fork this module, but we are interested in exploring if our proposed changes would be deemed useful enough that they would be incorporated into the main branch of this module.

We are interested in making two small changes to a file in the islandora_xml_forms module (https://github.com/Islandora/islandora_xml_forms), maintained by Diego Pino (for whom there does not appear to be any contact information).

Specifically, we are interested in having two small changes made to the mods_to_dc.xsl file (https://github.com/Islandora/islandora_xml_forms/blob/7.x/builder/transforms/mods_to_dc.xsl).  Presently, only MODS //mods:name/mod:namePart values with a //mods:name/mods:role/mods:roleTerm/@code="cre" or //mods:name/mods:role/mods:roleTerm/@text="creator" value are written to DC dc:creator; all other MODS namePart values are written to DC dc:contributor.  We would like to expand the conditionals to include code="aut" and text="Author", and we would also like to change the existing condition of text="creator" to text="Creator".  The rationale is that the Dublin Core guidelines indicate that a creator is "an entity primarily responsible for making the content of the resource," and this definition of "creator" would include the author of a resource.  We also want to use the initial-letter capitalization for the terms (i.e., "Creator", and "Author"), to follow how they are defined in the "MARC Code List for Relators" (https://www.loc.gov/marc/relators/relaterm.html).


* On line 97, change

<xsl:when test="mods:role/mods:roleTerm[@type='text']='creator' or mods:role/mods:roleTerm[@type='code']='cre' ">

to

<xsl:when test="mods:role/mods:roleTerm[@type='text']='Creator' or mods:role/mods:roleTerm[@type='code']='cre' or mods:role/mods:roleTerm[@type='text']='Author' or mods:role/mods:roleTerm[@type='code']='aut'  ">

* On line 389, change

<xsl:for-each select="mods:role[mods:roleTerm[@type='text']!='creator']">

to

<xsl:for-each select="mods:role[mods:roleTerm[@type='text']!='Creator' and mods:roleTerm[@type='text']!='Author']">


This would then result in both "Creator" ("cre") as well as "Author" ("aut") role terms having the namePart values written to dc:creator.

Thanks in advance for any information anyone can provide regarding the protocol to follow to make a code change request.

Cheers,
Michael

Michael Brundin
Data Integrity and Metadata Coordinator
Canadian Writing Research Collaboratory
Department of English and Film Studies
4-14 Humanities Centre,
University of Alberta
Edmonton, Alberta
Canada T6G 2E5

Nick Ruest

unread,
Jun 24, 2016, 4:33:01 PM6/24/16
to isla...@googlegroups.com
Hi Michael,

There is a CONTRIBUTING.md file in the repo that should outline
everything for you.

https://github.com/Islandora/islandora_xml_forms/blob/7.x/CONTRIBUTING.md

Let us know if you have any questions.

-nruest
> --
> For more information about using this group, please read our Listserv
> Guidelines: http://islandora.ca/content/welcome-islandora-listserv
> ---
> You received this message because you are subscribed to the Google
> Groups "islandora" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to islandora+...@googlegroups.com
> <mailto:islandora+...@googlegroups.com>.
> Visit this group at https://groups.google.com/group/islandora.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/islandora/cf7af6b0-8da6-4495-a2fd-ea3ae146689b%40googlegroups.com
> <https://groups.google.com/d/msgid/islandora/cf7af6b0-8da6-4495-a2fd-ea3ae146689b%40googlegroups.com?utm_medium=email&utm_source=footer>.
> For more options, visit https://groups.google.com/d/optout.

Nelson Hart

unread,
Jun 24, 2016, 8:52:06 PM6/24/16
to isla...@googlegroups.com
There numerous instances where we've discussed forking the LOC mods to dc xslt (eg: https://jira.duraspace.org/browse/ISLANDORA-841) and if I'm not mistaken, we've simply documented the problem and carried on. Unless the group stance has changed on that, your efforts to suggest a fork may be fruitless, but worth documenting via a Jira ticket for sure!

To unsubscribe from this group and stop receiving emails from it, send an email to islandora+...@googlegroups.com.

Diego Pino

unread,
Jun 26, 2016, 6:20:56 PM6/26/16
to islandora
Hi Michael,

Well, if you happen to need to contact me it's dp...@metro.org and @ my name autocomplete in JIRA and github works in issues and really any type of comment fields. As Nick correctly stated JIRA ticket + pull request + CLA, it's all in https://github.com/Islandora/islandora_xml_forms/blob/7.x/CONTRIBUTING.md and is the right way (and the best way) to get your proposed changes discussed by the community.

But also, since your change involves just an XSLT modification, have you maybe considered creating/using your own custom XSLT by a) assigning it to a form or b) making it global/derivative using the form builder module itself? This would resolve your particular issue and has the same implications/results but with a lot more flexibility for you. If that is not enough, then you can also open a ticket and/or submit a pull request which will follow the same procedure all our islandora modules apply.

Best

Diego Pino

Brandon Weigel

unread,
Jun 27, 2016, 1:35:32 PM6/27/16
to islandora
The state of the XSLT files has been vexing for quite a few of us, I think. I get that we don't want to put Core in conflict with Library of Congress, but perhaps it would be good to have some way of sharing and accessing customized XSLTs for the kinds of fixes that so many have asked for? 

It would be nice if we could keep the official LOC XSLTs Core and set up as the default, but also have some semi-official customized ones that include some of the more commonly-desired tweaks for optional use.

Alternatively, perhaps in the Islandora Awesome repo, we could start linking to such custom XSLTs so that good ones are readily available and those of us who are less experienced don't have to struggle trying to write our own?

(Re the specifics of customizing the dc.creator field - should also consider primary creator roles that are associated with other kinds of content, i.e. director, artist, photographer, etc. Might need specific branches of XSLT to deal with those -- one for images, one for video, etc.)

Michael Brundin

unread,
Jun 29, 2016, 4:53:18 PM6/29/16
to islandora
Hello all,

Many thanks to everyone for your responses, for outlining the proper steps to take to make a code change request for a particular repository, for suggestions on how to reference a custom XSLT from MODS forms, as well as general thoughts related to the LC MODS to DC XSLT.  We will probably create a modified version of the LC MODS to DC XSLT, and then associate it with our custom MODS forms.

Thanks again!

Cheers,
Michael
Reply all
Reply to author
Forward
0 new messages