Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make Series multiple #9255 #9256

Merged
merged 15 commits into from
May 2, 2023
Merged

Make Series multiple #9255 #9256

merged 15 commits into from
May 2, 2023

Conversation

philippconzett
Copy link
Contributor

@philippconzett philippconzett commented Jan 4, 2023

What this PR does / why we need it:
Allows depositors to define multiple instances of the metadata field Series in the Citation Metadata block.

Which issue(s) this PR closes:

Closes #9255

Special notes for your reviewer:
No.

Suggestions on how to test this:
Create a test dataset with multiple instances of the Series metadata field.

Does this PR introduce a user interface change? If mockups are available, please link/include them here:
No. There are already other metadata fields that are repeatable and facetable.

Is there a release notes update needed for this change?:
Should briefly mention that the field now is repeatable.

Additional documentation:
No.

Please feel free not to use these notes and just list the change under Complete List of Changes.
@pdurbin pdurbin marked this pull request as draft January 6, 2023 17:34
@mreekie
Copy link

mreekie commented Jan 10, 2023

Prio meeting with Stefano.

  • Moved from Community Backlog to ordered backlog

@sekmiller sekmiller self-assigned this Mar 23, 2023
@sekmiller
Copy link
Contributor

Based on the work I did on making production place multiple (#9254) this PR will need additional release notes with respect to upgrading the citation block - also schema.xml and searching - possibly import

@pdurbin pdurbin added Size: 10 A percentage of a sprint. 7 hours. and removed Size: 3 A percentage of a sprint. 2.1 hours. labels Mar 23, 2023
@sekmiller
Copy link
Contributor

Updates for solr are done. Still needs work on ImportDDIServiceBean for multiple series. Also there may need to be notes on backwards incompatibility for dataset json that do not note that series can be multiple.

@sekmiller
Copy link
Contributor

Also, currently getting an error on finalize publish export all formats.

@coveralls
Copy link

coveralls commented Mar 29, 2023

Coverage Status

Coverage: 20.167% (-0.02%) from 20.184% when pulling ec69508 on philippconzett:patch-3 into 4903e9f on IQSS:develop.

@sekmiller sekmiller added Size: 3 A percentage of a sprint. 2.1 hours. and removed Size: 10 A percentage of a sprint. 7 hours. labels Mar 29, 2023
@pdurbin pdurbin marked this pull request as ready for review April 6, 2023 15:13
@landreev landreev self-requested a review April 24, 2023 14:57
@landreev landreev self-assigned this Apr 24, 2023
@landreev
Copy link
Contributor

Just grabbed this for review now. Based on a very quick first glance, the correct changes were made in the export DDI util (the part that we overlooked when productionPlace was made multiple), but I need to take a closer look.

@landreev
Copy link
Contributor

@sekmiller I would like to take you up on syncing the branch with develop (first @philippconzett's fork needs to be synced with IQSS:dataverse). I don't think I can sync the actual remote fork, but I did try this on my own local checkout of Philipp's branch; and, to my surprise, it auto-merges just fine with IQSS/develop, without any conflicts in DdiExportUtil.java.
Once this is done, I'd like to change the control "all fields" json file and the corresponding control ddi export to actually include multiple series, to make sure we are testing the field correctly. Again, I tried this in my local checkout and the tests passed.
So, I'm talking about replacing

             {
              "seriesName": {
                "typeName": "seriesName",
                "multiple": false,
                "typeClass": "primitive",
                "value": "SeriesName"
              },
              "seriesInformation": {
                "typeName": "seriesInformation",
                "multiple": false,
                "typeClass": "primitive",
                "value": "SeriesInformation"
              }
            }

with

             {
                "seriesName": {
                  "typeName": "seriesName",
                  "multiple": false,
                  "typeClass": "primitive",
                  "value": "SeriesName1"
                },
                "seriesInformation": {
                  "typeName": "seriesInformation",
                  "multiple": false,
                  "typeClass": "primitive",
                  "value": "SeriesInformation1"
                }
              },
              {
                "seriesName": {
                  "typeName": "seriesName",
                  "multiple": false,
                  "typeClass": "primitive",
                  "value": "SeriesName2"
                },
                "seriesInformation": {
                  "typeName": "seriesInformation",
                  "multiple": false,
                  "typeClass": "primitive",
                  "value": "SeriesInformation2"
                }
              }

in src/test/java/edu/harvard/iq/dataverse/export/ddi/dataset-create-new-all-ddi-fields.json
and replacing

      <serStmt>
        <serName>SeriesName</serName>
        <serInfo>SeriesInformation</serInfo>
      </serStmt>

with

     <serStmt>
        <serName>SeriesName1</serName>
        <serInfo>SeriesInformation1</serInfo>
      </serStmt>
      <serStmt>
        <serName>SeriesName2</serName>
        <serInfo>SeriesInformation2</serInfo>
      </serStmt> 

in src/test/java/edu/harvard/iq/dataverse/export/ddi/exportfull.xml.

Aside from this, I'm happy with everything in this PR, providing all the Jenkins tests pass after this.
Thank you, and sorry for coming up with more work.

@pdurbin
Copy link
Member

pdurbin commented Apr 26, 2023

In 7748450 I merged develop into this branch/PR. I more or less followed: https://guides.dataverse.org/en/5.13/developers/version-control.html#adding-commits-to-a-pull-request-from-a-fork

The only wrinkle is if there are multiple branches called patch-3 (in this case) across remotes you have configured. I ended up deleting a remote to get down to just the single patch-3 I wanted to update.

@pdurbin pdurbin removed their assignment Apr 26, 2023
@landreev
Copy link
Contributor

Great, thank you @pdurbin. The branch looks good, let me check in the 2 changes I wanted to make and that should be it.

@landreev
Copy link
Contributor

OK, I have checked in the json and ddi xml files. Will wait for Jenkins to do its thing and move into QA.

@mreekie
Copy link

mreekie commented Apr 26, 2023

sprint kickoff

  • These are just waiting on jenkins tests to complete and QA

Copy link
Contributor

@landreev landreev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Moving into QA.

@landreev landreev removed their assignment Apr 26, 2023
@kcondon kcondon self-assigned this May 2, 2023
@kcondon
Copy link
Contributor

kcondon commented May 2, 2023

Issues found:

  1. Cannot add multiple series without error either to an existing or new dataset, see error in ui, none in logs but metadata is added. Can add a single series value without error. Maybe indexing?

Screen Shot 2023-05-02 at 10 49 03 AM

Screen Shot 2023-05-02 at 10 49 15 AM

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature: Metadata Size: 3 A percentage of a sprint. 2.1 hours.
Projects
Status: No status
Development

Successfully merging this pull request may close these issues.

Feature Request/Idea: Make Series repeatable
7 participants