From 7edd02e2e870c1038f26cc64731edebf576d016c Mon Sep 17 00:00:00 2001 From: Steven Winship <39765413+stevenwinship@users.noreply.github.com> Date: Fri, 17 Jan 2025 11:08:57 -0500 Subject: [PATCH 01/10] added 3d objects metadata block --- conf/solr/schema.xml | 30 ++++++++ .../11120-add-3d-object-metadata-block.md | 3 + doc/sphinx-guides/source/user/appendix.rst | 1 + .../api/data/metadatablocks/3d_objects.tsv | 45 +++++++++++ scripts/api/setup-datasetfields.sh | 1 + scripts/api/update-datasetfields.sh | 3 +- .../java/propertyFiles/3dobjects.properties | 74 +++++++++++++++++++ 7 files changed, 156 insertions(+), 1 deletion(-) create mode 100644 doc/release-notes/11120-add-3d-object-metadata-block.md create mode 100644 scripts/api/data/metadatablocks/3d_objects.tsv create mode 100644 src/main/java/propertyFiles/3dobjects.properties diff --git a/conf/solr/schema.xml b/conf/solr/schema.xml index 77b7cebdaf3..543bdc698ec 100644 --- a/conf/solr/schema.xml +++ b/conf/solr/schema.xml @@ -254,6 +254,21 @@ WARNING: Do not remove the following include guards if you intend to use the neat helper scripts we provide. --> + + + + + + + + + + + + + + + @@ -496,6 +511,21 @@ WARNING: Do not remove the following include guards if you intend to use the neat helper scripts we provide. --> + + + + + + + + + + + + + + + diff --git a/doc/release-notes/11120-add-3d-object-metadata-block.md b/doc/release-notes/11120-add-3d-object-metadata-block.md new file mode 100644 index 00000000000..06c816d8feb --- /dev/null +++ b/doc/release-notes/11120-add-3d-object-metadata-block.md @@ -0,0 +1,3 @@ +This feature adds a new Metadata block for describing 3D Object Data + +The new Metadata block will be added during the installation or upgrade of Dataverse diff --git a/doc/sphinx-guides/source/user/appendix.rst b/doc/sphinx-guides/source/user/appendix.rst index df9b6704209..59a409e18ca 100755 --- a/doc/sphinx-guides/source/user/appendix.rst +++ b/doc/sphinx-guides/source/user/appendix.rst @@ -30,6 +30,7 @@ Detailed below are what metadata schemas we support for Citation and Domain Spec `Virtual Observatory (VO) Discovery and Provenance Metadata `__. - Life Sciences Metadata (`see .tsv `__): based on `ISA-Tab Specification `__, along with controlled vocabulary from subsets of the `OBI Ontology `__ and the `NCBI Taxonomy for Organisms `__. - Journal Metadata (`see .tsv `__): based on the `Journal Archiving and Interchange Tag Set, version 1.2 `__. +- 3D Objects Metadata (`see .tsv `__) __. Experimental Metadata ~~~~~~~~~~~~~~~~~~~~~ diff --git a/scripts/api/data/metadatablocks/3d_objects.tsv b/scripts/api/data/metadatablocks/3d_objects.tsv new file mode 100644 index 00000000000..a370487a756 --- /dev/null +++ b/scripts/api/data/metadatablocks/3d_objects.tsv @@ -0,0 +1,45 @@ +#metadataBlock name dataverseAlias displayName + 3dobjects 3D Objects Metadata +#datasetField name title description watermark fieldType displayOrder displayFormat advancedSearchField allowControlledVocabulary allowmultiples facetable displayoncreate required parent metadatablock_id termURI + 3d3DTechnique 3D Technique The technique used for capturing the 3D data text 0 #VALUE TRUE TRUE FALSE TRUE FALSE FALSE 3dobjects + 3dEquipment Equipment The equipment used for capturing the 3D data text 1 #VALUE TRUE FALSE FALSE FALSE FALSE FALSE 3dobjects + 3dLightingSetup Lighting Setup The lighting used while capturing the 3D data text 2 #VALUE TRUE TRUE FALSE TRUE FALSE FALSE 3dobjects + 3dMasterFilePolygonCount Master File Polygon Count The high-resolution polygon count text 3 #VALUE TRUE FALSE FALSE FALSE FALSE FALSE 3dobjects + 3dExportedFilePolygonCount Exported File Polygon Count The exported mesh polygon count text 4 #VALUE TRUE FALSE TRUE FALSE FALSE FALSE 3dobjects + 3dExportedFileFormat Exported File Format The format of the exported mesh text 5 #VALUE TRUE TRUE FALSE TRUE FALSE FALSE 3dobjects + 3dAltText Alt-Text A physical description of the object modeled textbox 6 #VALUE FALSE FALSE FALSE FALSE FALSE FALSE 3dobjects + 3dMaterialComposition Material Composition The material used to create the object, e.g. stone text 7 #VALUE TRUE FALSE TRUE TRUE FALSE FALSE 3dobjects + 3dObjectDimensions Object Dimensions The general measurements of the physical object none 8 ; FALSE FALSE FALSE FALSE FALSE FALSE 3dobjects + 3dLength Length The rough length of the object text 9 Length: #VALUE FALSE FALSE FALSE FALSE FALSE FALSE 3dObjectDimensions 3dobjects + 3dWidth Width The rough width of the object text 10 Width: #VALUE FALSE FALSE FALSE FALSE FALSE FALSE 3dObjectDimensions 3dobjects + 3dHeight Height The rough height of the object text 11 Height: #VALUE FALSE FALSE FALSE FALSE FALSE FALSE 3dObjectDimensions 3dobjects + 3dWeight Weight The rough weight of the object text 12 Weight:#VALUE FALSE FALSE FALSE FALSE FALSE FALSE 3dObjectDimensions 3dobjects + 3dUnit Unit The unit of measurement used for the object dimensions text 13 Unit: #VALUE FALSE TRUE FALSE TRUE FALSE FALSE 3dObjectDimensions 3dobjects + 3dHandling Instructions Saftey and special handling instructions for the object textbox 14 #VALUE FALSE FALSE FALSE FALSE FALSE FALSE 3dobjects +#controlledVocabulary DatasetField Value identifier displayOrder + 3d3DTechnique IR Scanner 0 + 3d3DTechnique Laser 1 + 3d3DTechnique Modelled 2 + 3d3DTechnique Photogrammetry 3 + 3d3DTechnique RTI 4 + 3d3DTechnique Structured Light 5 + 3d3DTechnique Tomographic 6 + 3d3DTechnique Other 7 + 3dLightingSetup Natural Light 8 + 3dLightingSetup Lightbox 9 + 3dLightingSetup LED 10 + 3dLightingSetup Fluorescent 11 + 3dLightingSetup Other 12 + 3dUnit cm 13 + 3dUnit m 14 + 3dUnit in 15 + 3dUnit ft 16 + 3dUnit lbs 17 + 3dExportedFileFormat .fbx 18 + 3dExportedFileFormat .glb 19 + 3dExportedFileFormat .gltf 20 + 3dExportedFileFormat .obj 21 + 3dExportedFileFormat .stl 22 + 3dExportedFileFormat .usdz 23 + 3dExportedFileFormat .x3d 24 + 3dExportedFileFormat other 25 diff --git a/scripts/api/setup-datasetfields.sh b/scripts/api/setup-datasetfields.sh index 51da677ceb8..908988f8acb 100755 --- a/scripts/api/setup-datasetfields.sh +++ b/scripts/api/setup-datasetfields.sh @@ -11,3 +11,4 @@ curl "${DATAVERSE_URL}/api/admin/datasetfield/load" -X POST --data-binary @"$SCR curl "${DATAVERSE_URL}/api/admin/datasetfield/load" -X POST --data-binary @"$SCRIPT_PATH"/data/metadatablocks/astrophysics.tsv -H "Content-type: text/tab-separated-values" curl "${DATAVERSE_URL}/api/admin/datasetfield/load" -X POST --data-binary @"$SCRIPT_PATH"/data/metadatablocks/biomedical.tsv -H "Content-type: text/tab-separated-values" curl "${DATAVERSE_URL}/api/admin/datasetfield/load" -X POST --data-binary @"$SCRIPT_PATH"/data/metadatablocks/journals.tsv -H "Content-type: text/tab-separated-values" +curl "${DATAVERSE_URL}/api/admin/datasetfield/load" -X POST --data-binary @"$SCRIPT_PATH"/data/metadatablocks/3d_objects.tsv -H "Content-type: text/tab-separated-values" diff --git a/scripts/api/update-datasetfields.sh b/scripts/api/update-datasetfields.sh index ae099f8dcfd..9237c3fc709 100644 --- a/scripts/api/update-datasetfields.sh +++ b/scripts/api/update-datasetfields.sh @@ -4,4 +4,5 @@ curl http://localhost:8080/api/admin/datasetfield/load -X POST --data-binary @da curl http://localhost:8080/api/admin/datasetfield/load -X POST --data-binary @data/metadatablocks/social_science.tsv -H "Content-type: text/tab-separated-values" curl http://localhost:8080/api/admin/datasetfield/load -X POST --data-binary @data/metadatablocks/astrophysics.tsv -H "Content-type: text/tab-separated-values" curl http://localhost:8080/api/admin/datasetfield/load -X POST --data-binary @data/metadatablocks/biomedical.tsv -H "Content-type: text/tab-separated-values" -curl http://localhost:8080/api/admin/datasetfield/load -X POST --data-binary @data/metadatablocks/journals.tsv -H "Content-type: text/tab-separated-values" \ No newline at end of file +curl http://localhost:8080/api/admin/datasetfield/load -X POST --data-binary @data/metadatablocks/journals.tsv -H "Content-type: text/tab-separated-values" +curl http://localhost:8080/api/admin/datasetfield/load -X POST --data-binary @data/metadatablocks/3d_objects.tsv -H "Content-type: text/tab-separated-values" diff --git a/src/main/java/propertyFiles/3dobjects.properties b/src/main/java/propertyFiles/3dobjects.properties new file mode 100644 index 00000000000..6f628bf4dbe --- /dev/null +++ b/src/main/java/propertyFiles/3dobjects.properties @@ -0,0 +1,74 @@ +metadatablock.name=3dobjects +metadatablock.displayName=3D Objects Metadata +metadatablock.displayFacet= +datasetfieldtype.3d3DTechnique.title=3D Technique +datasetfieldtype.3dEquipment.title=Equipment +datasetfieldtype.3dLightingSetup.title=Lighting Setup +datasetfieldtype.3dMasterFilePolygonCount.title=Master File Polygon Count +datasetfieldtype.3dExportedFilePolygonCount.title=Exported File Polygon Count +datasetfieldtype.3dExportedFileFormat.title=Exported File Format +datasetfieldtype.3dAltText.title=Alt-Text +datasetfieldtype.3dMaterialComposition.title=Material Composition +datasetfieldtype.3dObjectDimensions.title=Object Dimensions +datasetfieldtype.3dLength.title=Length +datasetfieldtype.3dWidth.title=Width +datasetfieldtype.3dHeight.title=Height +datasetfieldtype.3dWeight.title=Weight +datasetfieldtype.3dUnit.title=Unit +datasetfieldtype.3dHandling.title=Instructions +datasetfieldtype.3d3DTechnique.description=The technique used for capturing the 3D data +datasetfieldtype.3dEquipment.description=The equipment used for capturing the 3D data +datasetfieldtype.3dLightingSetup.description=The lighting used while capturing the 3D data +datasetfieldtype.3dMasterFilePolygonCount.description=The high-resolution polygon count +datasetfieldtype.3dExportedFilePolygonCount.description=The exported mesh polygon count +datasetfieldtype.3dExportedFileFormat.description=The format of the exported mesh +datasetfieldtype.3dAltText.description=A physical description of the object modeled +datasetfieldtype.3dMaterialComposition.description=The material used to create the object, e.g. stone +datasetfieldtype.3dObjectDimensions.description=The general measurements of the physical object +datasetfieldtype.3dLength.description=The rough length of the object +datasetfieldtype.3dWidth.description=The rough width of the object +datasetfieldtype.3dHeight.description=The rough height of the object +datasetfieldtype.3dWeight.description=The rough weight of the object +datasetfieldtype.3dUnit.description=The unit of measurement used for the object dimensions +datasetfieldtype.3dHandling.description=Saftey and special handling instructions for the object +datasetfieldtype.3d3DTechnique.watermark= +datasetfieldtype.3dEquipment.watermark= +datasetfieldtype.3dLightingSetup.watermark= +datasetfieldtype.3dMasterFilePolygonCount.watermark= +datasetfieldtype.3dExportedFilePolygonCount.watermark= +datasetfieldtype.3dExportedFileFormat.watermark= +datasetfieldtype.3dAltText.watermark= +datasetfieldtype.3dMaterialComposition.watermark= +datasetfieldtype.3dObjectDimensions.watermark= +datasetfieldtype.3dLength.watermark= +datasetfieldtype.3dWidth.watermark= +datasetfieldtype.3dHeight.watermark= +datasetfieldtype.3dWeight.watermark= +datasetfieldtype.3dUnit.watermark= +datasetfieldtype.3dHandling.watermark= +controlledvocabulary.3d3DTechnique.ir_scanner=IR Scanner +controlledvocabulary.3d3DTechnique.laser=Laser +controlledvocabulary.3d3DTechnique.modelled=Modelled +controlledvocabulary.3d3DTechnique.photogrammetry=Photogrammetry +controlledvocabulary.3d3DTechnique.rti=RTI +controlledvocabulary.3d3DTechnique.structured_light=Structured Light +controlledvocabulary.3d3DTechnique.tomographic=Tomographic +controlledvocabulary.3d3DTechnique.other=Other +controlledvocabulary.3dLightingSetup.natural_light=Natural Light +controlledvocabulary.3dLightingSetup.lightbox=Lightbox +controlledvocabulary.3dLightingSetup.led=LED +controlledvocabulary.3dLightingSetup.fluorescent=Fluorescent +controlledvocabulary.3dLightingSetup.other=Other +controlledvocabulary.3dUnit.cm=cm +controlledvocabulary.3dUnit.m=m +controlledvocabulary.3dUnit.in=in +controlledvocabulary.3dUnit.ft=ft +controlledvocabulary.3dUnit.lbs=lbs +controlledvocabulary.3dExportedFileFormat..fbx=.fbx +controlledvocabulary.3dExportedFileFormat..glb=.glb +controlledvocabulary.3dExportedFileFormat..gltf=.gltf +controlledvocabulary.3dExportedFileFormat..obj=.obj +controlledvocabulary.3dExportedFileFormat..stl=.stl +controlledvocabulary.3dExportedFileFormat..usdz=.usdz +controlledvocabulary.3dExportedFileFormat..x3d=.x3d +controlledvocabulary.3dExportedFileFormat.other=other \ No newline at end of file From 65b259233c20327cf123f2adcc25e7fa674e49c4 Mon Sep 17 00:00:00 2001 From: Steven Winship <39765413+stevenwinship@users.noreply.github.com> Date: Fri, 17 Jan 2025 11:20:24 -0500 Subject: [PATCH 02/10] fix properties file --- src/main/java/propertyFiles/3dobjects.properties | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/propertyFiles/3dobjects.properties b/src/main/java/propertyFiles/3dobjects.properties index 6f628bf4dbe..29f5cc232d9 100644 --- a/src/main/java/propertyFiles/3dobjects.properties +++ b/src/main/java/propertyFiles/3dobjects.properties @@ -67,8 +67,8 @@ controlledvocabulary.3dUnit.lbs=lbs controlledvocabulary.3dExportedFileFormat..fbx=.fbx controlledvocabulary.3dExportedFileFormat..glb=.glb controlledvocabulary.3dExportedFileFormat..gltf=.gltf -controlledvocabulary.3dExportedFileFormat..obj=.obj +controlledvocabulary.3dExportedFileFormat..obj=.obj controlledvocabulary.3dExportedFileFormat..stl=.stl controlledvocabulary.3dExportedFileFormat..usdz=.usdz controlledvocabulary.3dExportedFileFormat..x3d=.x3d -controlledvocabulary.3dExportedFileFormat.other=other \ No newline at end of file +controlledvocabulary.3dExportedFileFormat.other=other From 741cd401c32b59e64630451109f7668cb14d1e77 Mon Sep 17 00:00:00 2001 From: Steven Winship <39765413+stevenwinship@users.noreply.github.com> Date: Fri, 17 Jan 2025 12:38:32 -0500 Subject: [PATCH 03/10] fix properties file --- scripts/api/data/metadatablocks/3d_objects.tsv | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/api/data/metadatablocks/3d_objects.tsv b/scripts/api/data/metadatablocks/3d_objects.tsv index a370487a756..fb10ac5b0a5 100644 --- a/scripts/api/data/metadatablocks/3d_objects.tsv +++ b/scripts/api/data/metadatablocks/3d_objects.tsv @@ -38,7 +38,7 @@ 3dExportedFileFormat .fbx 18 3dExportedFileFormat .glb 19 3dExportedFileFormat .gltf 20 - 3dExportedFileFormat .obj 21 + 3dExportedFileFormat .obj 21 3dExportedFileFormat .stl 22 3dExportedFileFormat .usdz 23 3dExportedFileFormat .x3d 24 From 4b94bf56aed2b1f5aae2762cd6a454964bed6bbe Mon Sep 17 00:00:00 2001 From: Steven Winship <39765413+stevenwinship@users.noreply.github.com> Date: Fri, 17 Jan 2025 14:09:21 -0500 Subject: [PATCH 04/10] fix tests with new metadata block and dataset fields --- src/test/java/edu/harvard/iq/dataverse/api/DatasetFieldsIT.java | 2 +- .../java/edu/harvard/iq/dataverse/api/MetadataBlocksIT.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/test/java/edu/harvard/iq/dataverse/api/DatasetFieldsIT.java b/src/test/java/edu/harvard/iq/dataverse/api/DatasetFieldsIT.java index ae90ddf0b4c..b70ef04d4c0 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/DatasetFieldsIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/DatasetFieldsIT.java @@ -19,7 +19,7 @@ public static void setUpClass() { void testListAllFacetableDatasetFields() { Response listAllFacetableDatasetFieldsResponse = UtilIT.listAllFacetableDatasetFields(); listAllFacetableDatasetFieldsResponse.then().assertThat().statusCode(OK.getStatusCode()); - int expectedNumberOfFacetableDatasetFields = 59; + int expectedNumberOfFacetableDatasetFields = 64; listAllFacetableDatasetFieldsResponse.then().assertThat() .statusCode(OK.getStatusCode()) .body("data[0].name", equalTo("authorName")) diff --git a/src/test/java/edu/harvard/iq/dataverse/api/MetadataBlocksIT.java b/src/test/java/edu/harvard/iq/dataverse/api/MetadataBlocksIT.java index 316ac579de4..c1a76fd7b15 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/MetadataBlocksIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/MetadataBlocksIT.java @@ -27,7 +27,7 @@ public static void setUpClass() { void testListMetadataBlocks() { // No optional params enabled Response listMetadataBlocksResponse = UtilIT.listMetadataBlocks(false, false); - int expectedDefaultNumberOfMetadataBlocks = 6; + int expectedDefaultNumberOfMetadataBlocks = 7; listMetadataBlocksResponse.then().assertThat() .statusCode(OK.getStatusCode()) .body("data[0].fields", equalTo(null)) From cba1678bff2a64726a779ec51a3cd94bfaa55133 Mon Sep 17 00:00:00 2001 From: Steven Winship <39765413+stevenwinship@users.noreply.github.com> Date: Mon, 27 Jan 2025 10:57:06 -0500 Subject: [PATCH 05/10] Update scripts/api/data/metadatablocks/3d_objects.tsv Co-authored-by: Philip Durbin --- scripts/api/data/metadatablocks/3d_objects.tsv | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/api/data/metadatablocks/3d_objects.tsv b/scripts/api/data/metadatablocks/3d_objects.tsv index fb10ac5b0a5..e753e4dfbed 100644 --- a/scripts/api/data/metadatablocks/3d_objects.tsv +++ b/scripts/api/data/metadatablocks/3d_objects.tsv @@ -15,7 +15,7 @@ 3dHeight Height The rough height of the object text 11 Height: #VALUE FALSE FALSE FALSE FALSE FALSE FALSE 3dObjectDimensions 3dobjects 3dWeight Weight The rough weight of the object text 12 Weight:#VALUE FALSE FALSE FALSE FALSE FALSE FALSE 3dObjectDimensions 3dobjects 3dUnit Unit The unit of measurement used for the object dimensions text 13 Unit: #VALUE FALSE TRUE FALSE TRUE FALSE FALSE 3dObjectDimensions 3dobjects - 3dHandling Instructions Saftey and special handling instructions for the object textbox 14 #VALUE FALSE FALSE FALSE FALSE FALSE FALSE 3dobjects + 3dHandling Instructions Safety and special handling instructions for the object textbox 14 #VALUE FALSE FALSE FALSE FALSE FALSE FALSE 3dobjects #controlledVocabulary DatasetField Value identifier displayOrder 3d3DTechnique IR Scanner 0 3d3DTechnique Laser 1 From 5d2afa9570dfd6941155f4e5770b0daa62dc7022 Mon Sep 17 00:00:00 2001 From: Steven Winship <39765413+stevenwinship@users.noreply.github.com> Date: Mon, 27 Jan 2025 10:57:26 -0500 Subject: [PATCH 06/10] Update src/main/java/propertyFiles/3dobjects.properties Co-authored-by: Philip Durbin --- src/main/java/propertyFiles/3dobjects.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/propertyFiles/3dobjects.properties b/src/main/java/propertyFiles/3dobjects.properties index 29f5cc232d9..97b8b0698dc 100644 --- a/src/main/java/propertyFiles/3dobjects.properties +++ b/src/main/java/propertyFiles/3dobjects.properties @@ -30,7 +30,7 @@ datasetfieldtype.3dWidth.description=The rough width of the object datasetfieldtype.3dHeight.description=The rough height of the object datasetfieldtype.3dWeight.description=The rough weight of the object datasetfieldtype.3dUnit.description=The unit of measurement used for the object dimensions -datasetfieldtype.3dHandling.description=Saftey and special handling instructions for the object +datasetfieldtype.3dHandling.description=Safety and special handling instructions for the object datasetfieldtype.3d3DTechnique.watermark= datasetfieldtype.3dEquipment.watermark= datasetfieldtype.3dLightingSetup.watermark= From 88768efd7dfa15ef5918eaf63307df3cff9edbe2 Mon Sep 17 00:00:00 2001 From: Steven Winship <39765413+stevenwinship@users.noreply.github.com> Date: Mon, 27 Jan 2025 10:57:45 -0500 Subject: [PATCH 07/10] Update doc/sphinx-guides/source/user/appendix.rst Co-authored-by: Philip Durbin --- doc/sphinx-guides/source/user/appendix.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/sphinx-guides/source/user/appendix.rst b/doc/sphinx-guides/source/user/appendix.rst index 59a409e18ca..4521b781475 100755 --- a/doc/sphinx-guides/source/user/appendix.rst +++ b/doc/sphinx-guides/source/user/appendix.rst @@ -30,7 +30,7 @@ Detailed below are what metadata schemas we support for Citation and Domain Spec `Virtual Observatory (VO) Discovery and Provenance Metadata `__. - Life Sciences Metadata (`see .tsv `__): based on `ISA-Tab Specification `__, along with controlled vocabulary from subsets of the `OBI Ontology `__ and the `NCBI Taxonomy for Organisms `__. - Journal Metadata (`see .tsv `__): based on the `Journal Archiving and Interchange Tag Set, version 1.2 `__. -- 3D Objects Metadata (`see .tsv `__) __. +- 3D Objects Metadata (`see .tsv `__). Experimental Metadata ~~~~~~~~~~~~~~~~~~~~~ From 315202c9638ccf3fdf4267cb022849d0c63d313c Mon Sep 17 00:00:00 2001 From: Steven Winship <39765413+stevenwinship@users.noreply.github.com> Date: Mon, 27 Jan 2025 10:58:04 -0500 Subject: [PATCH 08/10] Update doc/release-notes/11120-add-3d-object-metadata-block.md Co-authored-by: Philip Durbin --- .../11120-add-3d-object-metadata-block.md | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/doc/release-notes/11120-add-3d-object-metadata-block.md b/doc/release-notes/11120-add-3d-object-metadata-block.md index 06c816d8feb..e5df12ae8be 100644 --- a/doc/release-notes/11120-add-3d-object-metadata-block.md +++ b/doc/release-notes/11120-add-3d-object-metadata-block.md @@ -1,3 +1,9 @@ -This feature adds a new Metadata block for describing 3D Object Data +### New 3D Object Data Metadata Block -The new Metadata block will be added during the installation or upgrade of Dataverse +A new metadata block has been added for describing 3D object data. You can download it from the [guides](https://dataverse-guide--11167.org.readthedocs.build/en/11167/user/appendix.html). See also #11120 and #11167. + +All new Dataverse installations will receive this metadata block by default. We recommend adding it by following the upgrade instructions below. + +## Upgrade Instructions + +TODO: local 3d block, update schema, etc. From c56abfb9015e3c86f619af4364a72f368e3ec37f Mon Sep 17 00:00:00 2001 From: Steven Winship <39765413+stevenwinship@users.noreply.github.com> Date: Tue, 28 Jan 2025 12:53:07 -0500 Subject: [PATCH 09/10] remove update-datasetfields.sh and update release notes --- .../11120-add-3d-object-metadata-block.md | 55 ++++++++++++++++++- scripts/api/update-datasetfields.sh | 8 --- 2 files changed, 54 insertions(+), 9 deletions(-) delete mode 100644 scripts/api/update-datasetfields.sh diff --git a/doc/release-notes/11120-add-3d-object-metadata-block.md b/doc/release-notes/11120-add-3d-object-metadata-block.md index e5df12ae8be..892474d9689 100644 --- a/doc/release-notes/11120-add-3d-object-metadata-block.md +++ b/doc/release-notes/11120-add-3d-object-metadata-block.md @@ -6,4 +6,57 @@ All new Dataverse installations will receive this metadata block by default. We ## Upgrade Instructions -TODO: local 3d block, update schema, etc. +TODO: load 3d block, update schema, etc. + +### For 6.6-Release-notes.md + +6\. Restart Payara + +7\. Update metadata blocks + +These changes reflect incremental improvements made to the handling of core metadata fields. + +```shell +wget https://raw.githubusercontent.com/IQSS/dataverse/v6.6/scripts/api/data/metadatablocks/citation.tsv + +curl http://localhost:8080/api/admin/datasetfield/load -H "Content-type: text/tab-separated-values" -X POST --upload-file citation.tsv +``` +```shell +wget https://raw.githubusercontent.com/IQSS/dataverse/v6.6/scripts/api/data/metadatablocks/3d_objects.tsv + +curl http://localhost:8080/api/admin/datasetfield/load -H "Content-type: text/tab-separated-values" -X POST --upload-file 3d_objects.tsv +``` + +8\. Update Solr schema.xml file. Start with the standard v6.6 schema.xml, then, if your installation uses any custom or experimental metadata blocks, update it to include the extra fields (step 8a). + +Stop Solr (usually `service solr stop`, depending on Solr installation/OS, see the [Installation Guide](https://guides.dataverse.org/en/6.6/installation/prerequisites.html#solr-init-script)). + +```shell +service solr stop +``` + +Replace schema.xml + +```shell +wget https://raw.githubusercontent.com/IQSS/dataverse/v6.6/conf/solr/schema.xml +cp schema.xml /usr/local/solr/solr-9.4.1/server/solr/collection1/conf +``` + +Start Solr (but if you use any custom metadata blocks or adding 3D Objects, perform the next step, 8a first). + +```shell +service solr start +``` +8a\. For installations with custom or experimental metadata blocks: + +Before starting Solr, update the schema to include all the extra metadata fields that your installation uses. We do this by collecting the output of the Dataverse schema API and feeding it to the `update-fields.sh` script that we supply, as in the example below (modify the command lines as needed to reflect the names of the directories, if different): + +```shell + wget https://raw.githubusercontent.com/IQSS/dataverse/v6.6/conf/solr/update-fields.sh + chmod +x update-fields.sh + curl "http://localhost:8080/api/admin/index/solr/schema" | ./update-fields.sh /usr/local/solr/solr-9.4.1/server/solr/collection1/conf/schema.xml +``` + +Now start Solr. + +9\. Reindex Solr diff --git a/scripts/api/update-datasetfields.sh b/scripts/api/update-datasetfields.sh deleted file mode 100644 index 9237c3fc709..00000000000 --- a/scripts/api/update-datasetfields.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/sh -curl http://localhost:8080/api/admin/datasetfield/load -X POST --data-binary @data/metadatablocks/citation.tsv -H "Content-type: text/tab-separated-values" -curl http://localhost:8080/api/admin/datasetfield/load -X POST --data-binary @data/metadatablocks/geospatial.tsv -H "Content-type: text/tab-separated-values" -curl http://localhost:8080/api/admin/datasetfield/load -X POST --data-binary @data/metadatablocks/social_science.tsv -H "Content-type: text/tab-separated-values" -curl http://localhost:8080/api/admin/datasetfield/load -X POST --data-binary @data/metadatablocks/astrophysics.tsv -H "Content-type: text/tab-separated-values" -curl http://localhost:8080/api/admin/datasetfield/load -X POST --data-binary @data/metadatablocks/biomedical.tsv -H "Content-type: text/tab-separated-values" -curl http://localhost:8080/api/admin/datasetfield/load -X POST --data-binary @data/metadatablocks/journals.tsv -H "Content-type: text/tab-separated-values" -curl http://localhost:8080/api/admin/datasetfield/load -X POST --data-binary @data/metadatablocks/3d_objects.tsv -H "Content-type: text/tab-separated-values" From 1715c2f10adfcc1f679bd251841cea0de8a0c1d1 Mon Sep 17 00:00:00 2001 From: Philip Durbin Date: Tue, 28 Jan 2025 15:26:55 -0500 Subject: [PATCH 10/10] remove todo --- doc/release-notes/11120-add-3d-object-metadata-block.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/doc/release-notes/11120-add-3d-object-metadata-block.md b/doc/release-notes/11120-add-3d-object-metadata-block.md index 892474d9689..a43be86bc7d 100644 --- a/doc/release-notes/11120-add-3d-object-metadata-block.md +++ b/doc/release-notes/11120-add-3d-object-metadata-block.md @@ -6,8 +6,6 @@ All new Dataverse installations will receive this metadata block by default. We ## Upgrade Instructions -TODO: load 3d block, update schema, etc. - ### For 6.6-Release-notes.md 6\. Restart Payara