From 695139dac89af0b4284327bf774bf0c87963aa1b Mon Sep 17 00:00:00 2001 From: Mattia Vianelli <mattia.vianelli@4science.com> Date: Thu, 19 Sep 2024 10:39:36 +0200 Subject: [PATCH] CST-15084 Code fix after cherrypick (5) Test fix with new test forms and relation --- .../config/entities/relationship-types.xml | 26 ++ .../dspaceFolder/config/item-submission.xml | 20 + .../dspaceFolder/config/submission-forms.xml | 62 +++ .../service/OrcidEntityFactoryServiceIT.java | 414 ++---------------- dspace/config/entities/relationship-types.xml | 26 ++ dspace/config/item-submission.xml | 29 ++ dspace/config/submission-forms.xml | 28 +- 7 files changed, 225 insertions(+), 380 deletions(-) diff --git a/dspace-api/src/test/data/dspaceFolder/config/entities/relationship-types.xml b/dspace-api/src/test/data/dspaceFolder/config/entities/relationship-types.xml index 122e6ccdd6d5..32248c6bc407 100644 --- a/dspace-api/src/test/data/dspaceFolder/config/entities/relationship-types.xml +++ b/dspace-api/src/test/data/dspaceFolder/config/entities/relationship-types.xml @@ -129,4 +129,30 @@ </rightCardinality> <copyToRight>true</copyToRight> </type> + <type> + <leftType>Product</leftType> + <rightType>Person</rightType> + <leftwardType>isCreatorOfProduct</leftwardType> + <rightwardType>isProductOfCreator</rightwardType> + <leftCardinality> + <min>0</min> + </leftCardinality> + <rightCardinality> + <min>0</min> + </rightCardinality> + <copyToLeft>true</copyToLeft> + </type> + <type> + <leftType>Patent</leftType> + <rightType>Person</rightType> + <leftwardType>isInventorOfPatent</leftwardType> + <rightwardType>isPatentOfInventor</rightwardType> + <leftCardinality> + <min>0</min> + </leftCardinality> + <rightCardinality> + <min>0</min> + </rightCardinality> + <copyToLeft>true</copyToLeft> + </type> </relationships> \ No newline at end of file diff --git a/dspace-api/src/test/data/dspaceFolder/config/item-submission.xml b/dspace-api/src/test/data/dspaceFolder/config/item-submission.xml index 58326b882157..3cebd9a037a8 100644 --- a/dspace-api/src/test/data/dspaceFolder/config/item-submission.xml +++ b/dspace-api/src/test/data/dspaceFolder/config/item-submission.xml @@ -28,6 +28,8 @@ <name-map community-handle="123456789/subcommunity-test" submission-name="subcommunitytest"/> <name-map collection-handle="123456789/collection-test" submission-name="collectiontest"/> <name-map collection-entity-type="CustomEntityType" submission-name="entitytypetest"/> + <name-map collection-handle="123456789/test-product" submission-name="producttestform"/> + <name-map collection-handle="123456789/test-patent" submission-name="patenttestform"/> <name-map collection-handle="123456789/test-duplicate-detection" submission-name="test-duplicate-detection"/> </submission-map> @@ -304,6 +306,24 @@ <step id="collection"/> </submission-process> + <submission-process name="producttestform"> + + <step id="collection"/> + <step id="productStep"/> + <step id="upload"/> + <step id="license"/> + + </submission-process> + + <submission-process name="patenttestform"> + + <step id="collection"/> + <step id="patentStep"/> + <step id="upload"/> + <step id="license"/> + + </submission-process> + <submission-process name="test-duplicate-detection"> <step id="collection"/> <step id="duplicates"/> diff --git a/dspace-api/src/test/data/dspaceFolder/config/submission-forms.xml b/dspace-api/src/test/data/dspaceFolder/config/submission-forms.xml index 6b7349616e2d..e564b0d445f2 100644 --- a/dspace-api/src/test/data/dspaceFolder/config/submission-forms.xml +++ b/dspace-api/src/test/data/dspaceFolder/config/submission-forms.xml @@ -465,6 +465,68 @@ it, please enter the types and the actual numbers or codes.</hint> </row> </form> + <form name="patentStep"> + <row> + <relation-field> + <relationship-type>isInventorOf</relationship-type> + <search-configuration>person</search-configuration> + <repeatable>true</repeatable> + <label>Inventor</label> + <hint>Select the person who invented this patent.</hint> + <linked-metadata-field> + <dc-schema>dc</dc-schema> + <dc-element>contributor</dc-element> + <dc-qualifier>author</dc-qualifier> + <input-type>onebox</input-type> + </linked-metadata-field> + <externalsources>orcid</externalsources> + </relation-field> + </row> + <row> + <field> + <dc-schema>dc</dc-schema> + <dc-element>title</dc-element> + <dc-qualifier></dc-qualifier> + <repeatable>false</repeatable> + <label>Title</label> + <input-type>onebox</input-type> + <hint>Enter the main title of the item.</hint> + <required>You must enter a main title for this item.</required> + </field> + </row> + </form> + + <form name="productStep"> + <row> + <relation-field> + <relationship-type>isCreatorOf</relationship-type> + <search-configuration>person</search-configuration> + <repeatable>true</repeatable> + <label>Creator</label> + <hint>Select the person who created this product.</hint> + <linked-metadata-field> + <dc-schema>dc</dc-schema> + <dc-element>contributor</dc-element> + <dc-qualifier>author</dc-qualifier> + <input-type>onebox</input-type> + </linked-metadata-field> + <externalsources>orcid</externalsources> + </relation-field> + </row> + <row> + <field> + <dc-schema>dc</dc-schema> + <dc-element>title</dc-element> + <dc-qualifier></dc-qualifier> + <repeatable>false</repeatable> + <label>Title</label> + <input-type>onebox</input-type> + <hint>Enter the main title of the item.</hint> + <required>You must enter a main title for this item.</required> + </field> + </row> + </form> + </form-definitions> diff --git a/dspace-api/src/test/java/org/dspace/orcid/service/OrcidEntityFactoryServiceIT.java b/dspace-api/src/test/java/org/dspace/orcid/service/OrcidEntityFactoryServiceIT.java index 187bd9b29c5c..e7b631dd7452 100644 --- a/dspace-api/src/test/java/org/dspace/orcid/service/OrcidEntityFactoryServiceIT.java +++ b/dspace-api/src/test/java/org/dspace/orcid/service/OrcidEntityFactoryServiceIT.java @@ -100,7 +100,7 @@ public void setup() { .withEntityType("OrgUnit") .build(); - patents = CollectionBuilder.createCollection(context, parentCommunity) + patents = CollectionBuilder.createCollection(context, parentCommunity, "123456789/test-patent") .withName("Collection") .withEntityType("Patent") .build(); @@ -110,7 +110,7 @@ public void setup() { .withEntityType("Publication") .build(); - products = CollectionBuilder.createCollection(context, parentCommunity) + products = CollectionBuilder.createCollection(context, parentCommunity, "123456789/test-product") .withName("Collection") .withEntityType("Product") .build(); @@ -127,7 +127,7 @@ public void setup() { persons = CollectionBuilder.createCollection(context, parentCommunity) .withName("Collection") - .withEntityType("person") + .withEntityType("Person") .build(); context.restoreAuthSystemState(); @@ -173,6 +173,7 @@ public void testWorkCreation() { List<Contributor> contributors = work.getWorkContributors().getContributor(); assertThat(contributors, hasSize(3)); + //tornano 3 ma sono null assertThat(contributors, has(contributor("Walter White", AUTHOR, FIRST))); assertThat(contributors, has(contributor("Editor", EDITOR, FIRST))); assertThat(contributors, has(contributor("Jesse Pinkman", AUTHOR, ADDITIONAL))); @@ -207,6 +208,22 @@ public void testProductWorkCreation() { .withScopusIdentifier("scopus-id") .build(); + Item person = ItemBuilder.createItem(context, persons) + .withTitle("Walter White") + .withIssueDate("2017-10-17") + .withAuthor("Walter, White") + .withPersonIdentifierLastName("Walter") + .withPersonIdentifierFirstName("White") + .build(); + + EntityType productType = EntityTypeBuilder.createEntityTypeBuilder(context, "Product").build(); + EntityType personType = EntityTypeBuilder.createEntityTypeBuilder(context, "Person").build(); + + RelationshipType isCreatorOfProduct = createRelationshipTypeBuilder(context, productType, personType, + "isCreatorOfProduct", "isProductOfCreator", 0, null, 0, null).build(); + + RelationshipBuilder.createRelationshipBuilder(context, product, person, isCreatorOfProduct).build(); + context.restoreAuthSystemState(); Activity activity = entityFactoryService.createOrcidObject(context, product); @@ -260,6 +277,22 @@ public void testPatentWorkCreation() { .withType("http://purl.org/coar/resource_type/c_15cd") .build(); + Item person = ItemBuilder.createItem(context, persons) + .withTitle("Walter White") + .withIssueDate("2017-10-17") + .withAuthor("Walter, White") + .withPersonIdentifierLastName("Walter") + .withPersonIdentifierFirstName("White") + .build(); + + EntityType patentType = EntityTypeBuilder.createEntityTypeBuilder(context, "Patent").build(); + EntityType personType = EntityTypeBuilder.createEntityTypeBuilder(context, "Person").build(); + + RelationshipType isInventorOfPatent = createRelationshipTypeBuilder(context, patentType, personType, + "isInventorOfPatent", "isPatentOfInventor", 0, null, 0, null).build(); + + RelationshipBuilder.createRelationshipBuilder(context, patent, person, isInventorOfPatent).build(); + context.restoreAuthSystemState(); Activity activity = entityFactoryService.createOrcidObject(context, patent); @@ -294,85 +327,6 @@ public void testPatentWorkCreation() { } - @Test - public void testWorkWithFundingCreation() { - context.turnOffAuthorisationSystem(); - - Item publication = ItemBuilder.createItem(context, publications) - .withTitle("Test publication") - .withAuthor("Walter White") - .withIssueDate("2021-04-30") - .withType("Book") - .withRelationFunding("Test funding") - .withRelationGrantno("123456") - .build(); - - context.restoreAuthSystemState(); - - Activity activity = entityFactoryService.createOrcidObject(context, publication); - assertThat(activity, instanceOf(Work.class)); - - Work work = (Work) activity; - - List<ExternalID> externalIds = work.getExternalIdentifiers().getExternalIdentifier(); - assertThat(externalIds, hasSize(2)); - assertThat(externalIds, has(selfExternalId("handle", publication.getHandle()))); - assertThat(externalIds, has(fundedByExternalId("grant_number", "123456"))); - } - - @Test - public void testProductWorkWithFundingCreation() { - context.turnOffAuthorisationSystem(); - - Item product = ItemBuilder.createItem(context, products) - .withTitle("Test dataset") - .withAuthor("Walter White") - .withIssueDate("2021-04-30") - .withType("http://purl.org/coar/resource_type/H6QP-SC1X") - .withRelationFunding("Test funding") - .withRelationGrantno("123456") - .build(); - - context.restoreAuthSystemState(); - - Activity activity = entityFactoryService.createOrcidObject(context, product); - assertThat(activity, instanceOf(Work.class)); - - Work work = (Work) activity; - - List<ExternalID> externalIds = work.getExternalIdentifiers().getExternalIdentifier(); - assertThat(externalIds, hasSize(2)); - assertThat(externalIds, has(selfExternalId("handle", product.getHandle()))); - assertThat(externalIds, has(fundedByExternalId("grant_number", "123456"))); - } - - @Test - public void testPatentsWorkWithFundingCreation() { - context.turnOffAuthorisationSystem(); - - Item patent = ItemBuilder.createItem(context, patents) - .withTitle("Test patent") - .withAuthor("Walter White") - .withIssueDate("2021-04-30") - .withType("http://purl.org/coar/resource_type/c_15cd") - .withRelationFunding("Test funding") - .withRelationGrantno("123456") - .build(); - - context.restoreAuthSystemState(); - - Activity activity = entityFactoryService.createOrcidObject(context, patent); - assertThat(activity, instanceOf(Work.class)); - - Work work = (Work) activity; - - List<ExternalID> externalIds = work.getExternalIdentifiers().getExternalIdentifier(); - assertThat(externalIds, hasSize(2)); - assertThat(externalIds, has(selfExternalId("handle", patent.getHandle()))); - assertThat(externalIds, has(fundedByExternalId("grant_number", "123456"))); - } - - @Test public void testWorkWithFundingWithoutGrantNumberCreation() { context.turnOffAuthorisationSystem(); @@ -517,302 +471,6 @@ public void testPatentWorkWithFundingWithGrantNumberPlaceholderCreation() { assertThat(externalIds, has(selfExternalId("handle", patent.getHandle()))); } - - @Test - public void testWorkWithFundingEntityWithoutGrantNumberCreation() { - - context.turnOffAuthorisationSystem(); - - Item funding = ItemBuilder.createItem(context, fundings) - .withTitle("Test funding") - .build(); - - Item publication = ItemBuilder.createItem(context, publications) - .withTitle("Test publication") - .withAuthor("Walter White") - .withIssueDate("2021-04-30") - .withType("Controlled Vocabulary for Resource Type Genres::text::book") - .withRelationFunding("Test funding") - .withRelationGrantno("123456") - .build(); - - context.restoreAuthSystemState(); - - Activity activity = entityFactoryService.createOrcidObject(context, publication); - assertThat(activity, instanceOf(Work.class)); - - Work work = (Work) activity; - - List<ExternalID> externalIds = work.getExternalIdentifiers().getExternalIdentifier(); - assertThat(externalIds, hasSize(2)); - assertThat(externalIds, has(selfExternalId("handle", publication.getHandle()))); - assertThat(externalIds, has(fundedByExternalId("grant_number", "123456"))); - } - - @Test - public void testProductWorkWithFundingEntityWithoutGrantNumberCreation() { - - context.turnOffAuthorisationSystem(); - - Item funding = ItemBuilder.createItem(context, fundings) - .withTitle("Test funding") - .build(); - - Item product = ItemBuilder.createItem(context, products) - .withTitle("Test product") - .withAuthor("Walter White") - .withIssueDate("2021-04-30") - .withType("http://purl.org/coar/resource_type/c_7ad9") - .withRelationFunding("Test funding") - .withRelationGrantno("123456") - .build(); - - context.restoreAuthSystemState(); - - Activity activity = entityFactoryService.createOrcidObject(context, product); - assertThat(activity, instanceOf(Work.class)); - - Work work = (Work) activity; - - List<ExternalID> externalIds = work.getExternalIdentifiers().getExternalIdentifier(); - assertThat(externalIds, hasSize(2)); - assertThat(externalIds, has(selfExternalId("handle", product.getHandle()))); - assertThat(externalIds, has(fundedByExternalId("grant_number", "123456"))); - } - - @Test - public void testPatentWorkWithFundingEntityWithoutGrantNumberCreation() { - - context.turnOffAuthorisationSystem(); - - Item funding = ItemBuilder.createItem(context, fundings) - .withTitle("Test funding") - .build(); - - Item patent = ItemBuilder.createItem(context, patents) - .withTitle("Test patent") - .withAuthor("Walter White") - .withIssueDate("2021-04-30") - .withType("http://purl.org/coar/resource_type/c_15cd") - .withRelationFunding("Test funding") - .withRelationGrantno("123456") - .build(); - - context.restoreAuthSystemState(); - - Activity activity = entityFactoryService.createOrcidObject(context, patent); - assertThat(activity, instanceOf(Work.class)); - - Work work = (Work) activity; - - List<ExternalID> externalIds = work.getExternalIdentifiers().getExternalIdentifier(); - assertThat(externalIds, hasSize(2)); - assertThat(externalIds, has(selfExternalId("handle", patent.getHandle()))); - assertThat(externalIds, has(fundedByExternalId("grant_number", "123456"))); - } - - @Test - public void testWorkWithFundingEntityWithGrantNumberCreation() { - - context.turnOffAuthorisationSystem(); - - Item funding = ItemBuilder.createItem(context, fundings) - .withHandle("123456789/0001") - .withTitle("Test funding") - .withFundingIdentifier("987654") - .build(); - - Item publication = ItemBuilder.createItem(context, publications) - .withTitle("Test publication") - .withAuthor("Walter White") - .withIssueDate("2021-04-30") - .withType("Controlled Vocabulary for Resource Type Genres::text::book") - .withRelationFunding("Test funding") - .withRelationGrantno("123456") - .build(); - - context.restoreAuthSystemState(); - - Activity activity = entityFactoryService.createOrcidObject(context, publication); - assertThat(activity, instanceOf(Work.class)); - - Work work = (Work) activity; - - List<ExternalID> externalIds = work.getExternalIdentifiers().getExternalIdentifier(); - assertThat(externalIds, hasSize(2)); - assertThat(externalIds, has(selfExternalId("handle", publication.getHandle()))); - assertThat(externalIds, has(fundedByExternalId("grant_number", "987654", - "http://localhost:4000/handle/123456789/0001"))); - } - - @Test - public void testProductWorkWithFundingEntityWithGrantNumberCreation() { - - context.turnOffAuthorisationSystem(); - - Item funding = ItemBuilder.createItem(context, fundings) - .withHandle("123456789/0001") - .withTitle("Test funding") - .withFundingIdentifier("987654") - .build(); - - Item product = ItemBuilder.createItem(context, products) - .withTitle("Test product") - .withAuthor("Walter White") - .withIssueDate("2021-04-30") - .withType("http://purl.org/coar/resource_type/c_18cc") - .withRelationFunding("Test funding", funding.getID().toString()) - .withRelationGrantno("123456") - .build(); - - context.restoreAuthSystemState(); - - Activity activity = entityFactoryService.createOrcidObject(context, product); - assertThat(activity, instanceOf(Work.class)); - - Work work = (Work) activity; - - List<ExternalID> externalIds = work.getExternalIdentifiers().getExternalIdentifier(); - assertThat(externalIds, hasSize(2)); - assertThat(externalIds, has(selfExternalId("handle", product.getHandle()))); - assertThat(externalIds, has(fundedByExternalId("grant_number", "987654", - "http://localhost:4000/handle/123456789/0001"))); - } - - @Test - public void testPatentWorkWithFundingEntityWithGrantNumberCreation() { - - context.turnOffAuthorisationSystem(); - - Item funding = ItemBuilder.createItem(context, fundings) - .withHandle("123456789/0001") - .withTitle("Test funding") - .withFundingIdentifier("987654") - .build(); - - Item patent = ItemBuilder.createItem(context, patents) - .withTitle("Test patent") - .withAuthor("Walter White") - .withIssueDate("2021-04-30") - .withType("http://purl.org/coar/resource_type/c_15cd") - .withRelationFunding("Test funding") - .withRelationGrantno("123456") - .build(); - - context.restoreAuthSystemState(); - - Activity activity = entityFactoryService.createOrcidObject(context, patent); - assertThat(activity, instanceOf(Work.class)); - - Work work = (Work) activity; - - List<ExternalID> externalIds = work.getExternalIdentifiers().getExternalIdentifier(); - assertThat(externalIds, hasSize(2)); - assertThat(externalIds, has(selfExternalId("handle", patent.getHandle()))); - assertThat(externalIds, has(fundedByExternalId("grant_number", "987654", - "http://localhost:4000/handle/123456789/0001"))); - } - - - @Test - public void testWorkWithFundingEntityWithGrantNumberAndUrlCreation() { - - context.turnOffAuthorisationSystem(); - - Item funding = ItemBuilder.createItem(context, fundings) - .withHandle("123456789/0001") - .withTitle("Test funding") - .withFundingIdentifier("987654") - .build(); - - Item publication = ItemBuilder.createItem(context, publications) - .withTitle("Test publication") - .withAuthor("Walter White") - .withIssueDate("2021-04-30") - .withType("Controlled Vocabulary for Resource Type Genres::text::book") - .withRelationFunding("Test funding") - .withRelationGrantno("123456") - .build(); - - context.restoreAuthSystemState(); - - Activity activity = entityFactoryService.createOrcidObject(context, publication); - assertThat(activity, instanceOf(Work.class)); - - Work work = (Work) activity; - - List<ExternalID> externalIds = work.getExternalIdentifiers().getExternalIdentifier(); - assertThat(externalIds, hasSize(2)); - assertThat(externalIds, has(selfExternalId("handle", publication.getHandle()))); - assertThat(externalIds, has(fundedByExternalId("grant_number", "987654", "http://test-funding"))); - } - - @Test - public void testProductWorkWithFundingEntityWithGrantNumberAndUrlCreation() { - - context.turnOffAuthorisationSystem(); - - Item funding = ItemBuilder.createItem(context, fundings) - .withHandle("123456789/0001") - .withTitle("Test funding") - .withFundingIdentifier("987654") - .build(); - - Item product = ItemBuilder.createItem(context, products) - .withTitle("Test product") - .withAuthor("Walter White") - .withIssueDate("2021-04-30") - .withType("http://purl.org/coar/resource_type/c_18cc") - .withRelationFunding("Test funding") - .withRelationGrantno("123456") - .build(); - - context.restoreAuthSystemState(); - - Activity activity = entityFactoryService.createOrcidObject(context, product); - assertThat(activity, instanceOf(Work.class)); - - Work work = (Work) activity; - - List<ExternalID> externalIds = work.getExternalIdentifiers().getExternalIdentifier(); - assertThat(externalIds, hasSize(2)); - assertThat(externalIds, has(selfExternalId("handle", product.getHandle()))); - assertThat(externalIds, has(fundedByExternalId("grant_number", "987654", "http://test-funding"))); - } - - @Test - public void testPatentWorkWithFundingEntityWithGrantNumberAndUrlCreation() { - - context.turnOffAuthorisationSystem(); - - Item funding = ItemBuilder.createItem(context, fundings) - .withHandle("123456789/0001") - .withTitle("Test funding") - .withFundingIdentifier("987654") - .build(); - - Item patent = ItemBuilder.createItem(context, patents) - .withTitle("Test patent") - .withAuthor("Walter White") - .withIssueDate("2021-04-30") - .withType("http://purl.org/coar/resource_type/c_15cd") - .withRelationFunding("Test funding") - .withRelationGrantno("123456") - .build(); - - context.restoreAuthSystemState(); - - Activity activity = entityFactoryService.createOrcidObject(context, patent); - assertThat(activity, instanceOf(Work.class)); - - Work work = (Work) activity; - - List<ExternalID> externalIds = work.getExternalIdentifiers().getExternalIdentifier(); - assertThat(externalIds, hasSize(2)); - assertThat(externalIds, has(selfExternalId("handle", patent.getHandle()))); - assertThat(externalIds, has(fundedByExternalId("grant_number", "987654", "http://test-funding"))); - } - @Test public void testEmptyWorkWithUnknownTypeCreation() { diff --git a/dspace/config/entities/relationship-types.xml b/dspace/config/entities/relationship-types.xml index 7ae1ff611629..56de9602dcb2 100644 --- a/dspace/config/entities/relationship-types.xml +++ b/dspace/config/entities/relationship-types.xml @@ -130,4 +130,30 @@ </rightCardinality> <copyToRight>true</copyToRight> </type> + <type> + <leftType>Product</leftType> + <rightType>Person</rightType> + <leftwardType>isCreatorOfProduct</leftwardType> + <rightwardType>isProductOfCreator</rightwardType> + <leftCardinality> + <min>0</min> + </leftCardinality> + <rightCardinality> + <min>0</min> + </rightCardinality> + <copyToLeft>true</copyToLeft> + </type> + <type> + <leftType>Product</leftType> + <rightType>Person</rightType> + <leftwardType>isInventorOfPatent</leftwardType> + <rightwardType>isPatentOfInventor</rightwardType> + <leftCardinality> + <min>0</min> + </leftCardinality> + <rightCardinality> + <min>0</min> + </rightCardinality> + <copyToLeft>true</copyToLeft> + </type> </relationships> \ No newline at end of file diff --git a/dspace/config/item-submission.xml b/dspace/config/item-submission.xml index b5278d2f3d87..f61c260c2fa9 100644 --- a/dspace/config/item-submission.xml +++ b/dspace/config/item-submission.xml @@ -180,6 +180,17 @@ <type>accessCondition</type> </step-definition> + <step-definition id="productStep" mandatory="true"> + <heading>submit.progressbar.describe.product</heading> + <processing-class>org.dspace.app.rest.submit.step.DescribeStep</processing-class> + <type>submission-form</type> + </step-definition> + <step-definition id="patentStep" mandatory="true"> + <heading>submit.progressbar.describe.patent</heading> + <processing-class>org.dspace.app.rest.submit.step.DescribeStep</processing-class> + <type>submission-form</type> + </step-definition> + <!-- This optional step may enrich the current submission using information extracted from uploaded files or metadata. --> <!-- Please note that this step will be triggered only when a request is performed, @@ -419,6 +430,24 @@ <step id="collection"/> <step id="openaireOrganizationForm"/> </submission-process> + + <submission-process name="Product"> + + <step id="collection"/> + <step id="productStep"/> + <step id="upload"/> + <step id="license"/> + + </submission-process> + + <submission-process name="Patent"> + + <step id="collection"/> + <step id="patentStep"/> + <step id="upload"/> + <step id="license"/> + + </submission-process> </submission-definitions> </item-submission> diff --git a/dspace/config/submission-forms.xml b/dspace/config/submission-forms.xml index f792276646a1..f1985d6117f9 100644 --- a/dspace/config/submission-forms.xml +++ b/dspace/config/submission-forms.xml @@ -1351,7 +1351,7 @@ <form name="patentStep"> <row> <relation-field> - <relationship-type>isInventorOf</relationship-type> + <relationship-type>isInventorOfPatent</relationship-type> <search-configuration>person</search-configuration> <repeatable>true</repeatable> <label>Inventor</label> @@ -1365,12 +1365,24 @@ <externalsources>orcid</externalsources> </relation-field> </row> + <row> + <field> + <dc-schema>dc</dc-schema> + <dc-element>title</dc-element> + <dc-qualifier></dc-qualifier> + <repeatable>false</repeatable> + <label>Title</label> + <input-type>onebox</input-type> + <hint>Enter the main title of the item.</hint> + <required>You must enter a main title for this item.</required> + </field> + </row> </form> <form name="productStep"> <row> <relation-field> - <relationship-type>isCreatorOf</relationship-type> + <relationship-type>isCreatorOfProduct</relationship-type> <search-configuration>person</search-configuration> <repeatable>true</repeatable> <label>Creator</label> @@ -1384,6 +1396,18 @@ <externalsources>orcid</externalsources> </relation-field> </row> + <row> + <field> + <dc-schema>dc</dc-schema> + <dc-element>title</dc-element> + <dc-qualifier></dc-qualifier> + <repeatable>false</repeatable> + <label>Title</label> + <input-type>onebox</input-type> + <hint>Enter the main title of the item.</hint> + <required>You must enter a main title for this item.</required> + </field> + </row> </form>