When submitting new items into DSpace, I have discovered inconsistencies in the text_lang column of the metadatavalue table.
I created a new submission and populated a value into every field on the item submission screen. When the submission was completed, I ended up with the following results.
Is there a property in one of the item submission workflows that controls how the text_lang column is set when a new item is created?
Terry,
There is no magic property. You will find that this DCValue/MetadataValue attribute is populated differently in different DSpace applications (SWORD, LNI, XMLUI, JSPUI, CLI).
In each of the cases where the application code sets the language, there are several methods in the DSpace Item class responsible for populating metadata values, to find the cases you are seeking, you will need to dig deeply into the applications usage of these org.dspace.content.Item.java methods:
https://github.com/DSpace/DSpace/blob/dspace-4.2/dspace-api/src/main/java/org/dspace/content/Item.java#L608 https://github.com/DSpace/DSpace/blob/dspace-4.2/dspace-api/src/main/java/org/dspace/content/Item.java#L631 https://github.com/DSpace/DSpace/blob/dspace-4.2/dspace-api/src/main/java/org/dspace/content/Item.java#L660 https://github.com/DSpace/DSpace/blob/dspace-4.2/dspace-api/src/main/java/org/dspace/content/Item.java#L706 https://github.com/DSpace/DSpace/blob/dspace-4.2/dspace-api/src/main/java/org/dspace/content/Item.java#L800 https://github.com/DSpace/DSpace/blob/dspace-4.2/dspace-api/src/main/java/org/dspace/content/Item.java#L832
This is an area that could stand to have vast improvement made in DSpace, to add to your examples, there are places in DSpace where an "*" is placed into the lang field which is also incorrect.
Ideally, DSpace MetadataValue should place some validation/control on this attribute to assure that it is being populated with correct values.
Regards, Mark