Skip to content

Commit 38e7b95

Browse files
committed
CMR-9355: Updating UMM-C to update description wording and adding geo+json as a mime type.
1 parent 518a69a commit 38e7b95

File tree

7 files changed

+223
-95
lines changed

7 files changed

+223
-95
lines changed

common-app-lib/src/cmr/common_app/config.clj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
(defconfig collection-umm-version
99
"Defines the latest collection umm version accepted by ingest - it's the latest official version.
1010
This environment variable needs to be manually set when newer UMM version becomes official"
11-
{:default "1.18.2"})
11+
{:default "1.18.3"})
1212

1313
(defconfig launchpad-token-enforced
1414
"Flag for whether or not launchpad token is enforced."

schemas/resources/schemas/collection-draft/v1.0.0/metadata.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -264,8 +264,8 @@
264264
"DOI" : "10.1234/DOIID",
265265
"Authority" : "https://doi.org/"
266266
},
267-
"ShortName" : "Mapping Short Name 1.18.2",
268-
"EntryTitle" : "Mapping Example for UMM-C 1.18.2",
267+
"ShortName" : "Mapping Short Name 1.18.3",
268+
"EntryTitle" : "Mapping Example for UMM-C 1.18.3",
269269
"PublicationReferences" : [ {
270270
"OnlineResource" : {
271271
"Linkage" : "http://www.yahoo.com",
@@ -814,9 +814,9 @@
814814
"LongName" : "MUSES"
815815
} ],
816816
"MetadataSpecification" : {
817-
"URL" : "https://cdn.earthdata.nasa.gov/umm/collection/v1.18.2",
817+
"URL" : "https://cdn.earthdata.nasa.gov/umm/collection/v1.18.3",
818818
"Name" : "UMM-C",
819-
"Version" : "1.18.2"
819+
"Version" : "1.18.3"
820820
},
821821
"ArchiveAndDistributionInformation" : {
822822
"FileArchiveInformation" : [ {

umm-spec-lib/resources/json-schemas/collection/umm/v1.18.3/umm-c-json-schema.json

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -402,7 +402,7 @@
402402
},
403403
"required": ["LicenseText"]
404404
}
405-
]},
405+
]},
406406
"DirectoryNameType": {
407407
"type": "object",
408408
"additionalProperties": false,
@@ -1415,7 +1415,7 @@
14151415
"enum": ["NEAR_REAL_TIME", "LOW_LATENCY", "EXPEDITED", "SCIENCE_QUALITY", "OTHER"]
14161416
},
14171417
"CollectionProgressEnum": {
1418-
"description": "This element describes the production status of the data set. There are five choices for Data Providers: PLANNED refers to data sets to be collected in the future and are thus unavailable at the present time. For Example: The Hydro spacecraft has not been launched, but information on planned data sets may be available. ACTIVE refers to data sets currently in production or data that is continuously being collected or updated. For Example: data from the AIRS instrument on Aqua is being collected continuously. COMPLETE refers to data sets in which no updates or further data collection will be made. For Example: Nimbus-7 SMMR data collection has been completed. DEPRECATED refers to data sets that have been retired, but still can be retrieved. Usually newer products exist that replace the retired data set. NOT APPLICABLE refers to data sets in which a collection progress is not applicable such as a calibration collection. There is a sixth value of NOT PROVIDED that should not be used by a data provider. It is currently being used as a value when a correct translation cannot be done with the current valid values, or when the value is not provided by the data provider.",
1418+
"description": "This element describes the production status of the data set. There are multiple choices for Data Providers: PLANNED refers to data sets to be collected in the future and are thus unavailable at the present time. For Example: The Hydro spacecraft has not been launched, but information on planned data sets may be available. ACTIVE refers to data sets currently in production or data that is continuously being collected or updated. For Example: data from the AIRS instrument on Aqua is being collected continuously. COMPLETE refers to data sets in which no updates or further data collection will be made. For Example: Nimbus-7 SMMR data collection has been completed. DEPRECATED refers to data sets that have been retired, but still can be retrieved. Usually newer products exist that replace the retired data set. NOT PROVIDED should not be used by a data provider. It is currently being used as a value when a correct translation cannot be done with the current valid values, or when the value is not provided by the data provider. PREPRINT: Refers to datasets which are made available prior to completion of validation and review processes to support manuscript publication processes and open science.\nPreprint datasets are provisional and should not be used for production applications. INREVIEW: Refers to datasets which are made available to support science team final review. In Review datasets are provisional and should not be used for production applications. Note that if restricted access is needed, an INREVIEW dataset may also have an Access Control List applied. SUPERSEDED: Refers to datasets which remain publicly available, but for which a newer version is available.",
14191419
"type": "string",
14201420
"enum": ["ACTIVE", "PLANNED", "COMPLETE", "DEPRECATED", "NOT PROVIDED", "PREPRINT", "INREVIEW", "SUPERSEDED"]
14211421
},
@@ -1468,7 +1468,7 @@
14681468
"enum": ["KB", "MB", "GB", "TB", "PB", "NA"]
14691469
},
14701470
"DistributionMediaType": {
1471-
"description": "This element defines the media by which the end user can obtain the distributable item. Examples of media include: CD-ROM, 9 track tape, diskettes, hard drives, online, transparencies, hardcopy, etc.",
1471+
"description": "This element defines the media by which the end user can obtain the distributable item. Each media type is listed separately. Examples of media include HTTPS, Earthdata Cloud, etc.",
14721472
"type": "string",
14731473
"minLength": 1,
14741474
"maxLength": 80
@@ -1593,7 +1593,7 @@
15931593
"$ref": "#/definitions/ArchiveDistributionFormatDescriptionType"
15941594
},
15951595
"Media": {
1596-
"description": "This element defines the media by which the end user can obtain the distributable item. Each media type is listed separately. Examples of media include: CD-ROM, 9 track tape, diskettes, hard drives, online, transparencies, hardcopy, etc.",
1596+
"description": "This element defines the media by which the end user can obtain the distributable item. Each media type is listed separately. Examples of media include HTTPS, Earthdata Cloud, etc.",
15971597
"type": "array",
15981598
"items": {
15991599
"$ref": "#/definitions/DistributionMediaType"
@@ -1656,7 +1656,7 @@
16561656
"$ref": "#/definitions/ArchiveDistributionFormatDescriptionType"
16571657
},
16581658
"Media": {
1659-
"description": "This element defines the media by which the end user can obtain the distributable item. Each media type is listed separately. Examples of media include: CD-ROM, 9 track tape, diskettes, hard drives, online, transparencies, hardcopy, etc.",
1659+
"description": "This element defines the media by which the end user can obtain the distributable item. Each media type is listed separately. Examples of media include HTTPS, Earthdata Cloud, etc.",
16601660
"type": "array",
16611661
"items": {
16621662
"$ref": "#/definitions/DistributionMediaType"
@@ -1905,7 +1905,7 @@
19051905
"URL": {
19061906
"description": "This element represents the URL where the schema lives. The schema can be downloaded.",
19071907
"type": "string",
1908-
"enum": ["https://cdn.earthdata.nasa.gov/umm/collection/v1.18.2"]
1908+
"enum": ["https://cdn.earthdata.nasa.gov/umm/collection/v1.18.3"]
19091909
},
19101910
"Name": {
19111911
"description": "This element represents the name of the schema.",
@@ -1915,7 +1915,7 @@
19151915
"Version": {
19161916
"description": "This element represents the version of the schema.",
19171917
"type": "string",
1918-
"enum": ["1.18.2"]
1918+
"enum": ["1.18.3"]
19191919
}
19201920
},
19211921
"required": ["URL", "Name", "Version"]

umm-spec-lib/resources/json-schemas/collection/umm/v1.18.3/umm-cmn-json-schema.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -565,7 +565,7 @@
565565
"description": "Provides a DOI of the previous version of this collection. This allows users to find historical data for this collection. Note: The values should start with the directory indicator which in ESDIS' case is 10. If the DOI was registered through ESDIS, the beginning of the string should be 10.5067. The DOI URL is not stored here; it should be stored as a RelatedURL. The DOI organization that is responsible for creating the DOI is described in the Authority element. For ESDIS records the value of https://doi.org/ should be used. For those that want to specify that a DOI is not applicable or unknown for their record, use the second option.",
566566
"properties": {
567567
"Version": {
568-
"description": "This element stores the DOI (Digital Object Identifier) that identifies the prevoius version of this collection. Note: The values should start with the directory indicator which in ESDIS' case is 10. If the DOI was registered through ESDIS, the beginning of the string should be 10.5067. The DOI URL is not stored here; it should be stored as a RelatedURL.",
568+
"description": "The version number if one exists.",
569569
"$ref": "#/definitions/VersionType"
570570
},
571571
"Description": {
@@ -1084,7 +1084,7 @@
10841084
"TemporalResolutionType": {
10851085
"oneOf": [{
10861086
"type": "object",
1087-
"title": "Contant or Varies Resolution",
1087+
"title": "Constant or Varies Resolution",
10881088
"additionalProperties": false,
10891089
"description": "Describes the amount of time between measurements.",
10901090
"properties": {
@@ -1307,7 +1307,7 @@
13071307
"application/vnd.google-earth.kml+xml", "image/gif", "image/tiff", "image/bmp", "text/csv",
13081308
"text/xml", "application/pdf", "application/x-hdf", "application/xhdf5",
13091309
"application/octet-stream", "application/vnd.google-earth.kmz", "image/jpeg", "image/png",
1310-
"image/vnd.collada+xml", "application/x-vnd.iso.19139-2+xml", "text/html", "text/plain", "Not provided"]
1310+
"image/vnd.collada+xml", "application/x-vnd.iso.19139-2+xml", "text/html", "text/plain", "application/geo+json", "Not provided"]
13111311
},
13121312
"GetServiceTypeFormatEnum": {
13131313
"type": "string",

umm-spec-lib/src/cmr/umm_spec/migration/version/collection.clj

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -794,3 +794,24 @@
794794
(update :CollectionProgress migrate-collection-progress-down))
795795
coll))))
796796

797+
(defmethod interface/migrate-umm-version [:collection "1.18.2" "1.18.3"]
798+
[_context collection & _]
799+
;; Migrating up version 1.18.2 to 1.18.3
800+
(-> collection
801+
(m-spec/update-version :collection "1.18.3")))
802+
803+
(defn down-grade-geo-json-mime-type
804+
"Replace MimeType geo+json with json as geo+json doesn't exist in the lower versions.
805+
Otherwise leave the MimeType as is."
806+
[service ]
807+
(if (= "application/geo+json" (:MimeType service))
808+
(assoc service :MimeType "application/json")
809+
service))
810+
811+
(defmethod interface/migrate-umm-version [:collection "1.18.3" "1.18.2"]
812+
[_context collection & _]
813+
;; Migrating down version 1.18.3 to 1.18.2
814+
;; Modify RelatedUrls GetService MimeType from geo+json to json
815+
(-> collection
816+
(m-spec/update-version :collection "1.18.2")
817+
(util/update-in-all [:RelatedUrls :GetService] #(down-grade-geo-json-mime-type %))))

umm-spec-lib/src/cmr/umm_spec/versioning.clj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
"1.15" "1.15.1" "1.15.2" "1.15.3" "1.15.4" "1.15.5"
1414
"1.16" "1.16.1" "1.16.2" "1.16.3" "1.16.4" "1.16.5" "1.16.6" "1.16.7"
1515
"1.17.0" "1.17.1" "1.17.2" "1.17.3"
16-
"1.18.0" "1.18.1" "1.18.2"]
16+
"1.18.0" "1.18.1" "1.18.2" "1.18.3"]
1717
:granule ["1.4" "1.5" "1.6" "1.6.1" "1.6.2" "1.6.3" "1.6.4" "1.6.5" "1.6.6"]
1818
:variable ["1.0" "1.1" "1.2" "1.3" "1.4" "1.5" "1.6" "1.7" "1.8" "1.8.1" "1.8.2" "1.9.0"]
1919
:service ["1.0" "1.1" "1.2" "1.3" "1.3.1" "1.3.2" "1.3.3" "1.3.4" "1.4" "1.4.1" "1.5.0" "1.5.1" "1.5.2" "1.5.3"]

0 commit comments

Comments
 (0)