|
97 | 97 | },
|
98 | 98 | "MetadataDateType": {
|
99 | 99 | "type": "object",
|
| 100 | + "additionalProperties": false, |
100 | 101 | "properties": {
|
101 | 102 | "Create": {
|
102 | 103 | "description": "This element represents the creation date of the metadata.",
|
|
197 | 198 | "type": "string",
|
198 | 199 | "minLength": 1,
|
199 | 200 | "maxLength": 1024
|
200 |
| - } |
| 201 | + } |
201 | 202 | }
|
202 | 203 | }
|
203 | 204 | },
|
|
249 | 250 |
|
250 | 251 | "DimensionScale": {
|
251 | 252 | "description": "The characterizes the grid's X, Y, Time, and Other Dimensions.",
|
| 253 | + "additionalProperties": false, |
252 | 254 | "type": "object",
|
253 | 255 | "properties": {
|
254 | 256 | "0_360_DegreeProjection": {
|
|
274 | 276 | },
|
275 | 277 | "required": [
|
276 | 278 | "X",
|
277 |
| - "Y", |
278 |
| - "Time", |
279 |
| - "Other" |
| 279 | + "Y" |
280 | 280 | ],
|
281 | 281 | "allOf": [
|
282 | 282 | {"$ref": "#/definitions/DimensionScaleUnitXEnumsCondition"},
|
283 | 283 | {"$ref": "#/definitions/DimensionScaleUnitYEnumsCondition"},
|
284 | 284 | {"$ref": "#/definitions/DimensionScaleUnitTimeEnumsCondition"},
|
285 | 285 | {"$ref": "#/definitions/DimensionScaleXUnitPatternDMS"},
|
286 | 286 | {"$ref": "#/definitions/DimensionScaleYUnitPatternDMS"},
|
287 |
| - {"$ref": "#/definitions/DimensionScaleMeterMinMaxConditionX"}, |
288 |
| - {"$ref": "#/definitions/DimensionScaleMeterMinMaxConditionY"}, |
289 |
| - {"$ref": "#/definitions/DimensionScaleKilometerMinMaxConditionX"}, |
290 |
| - {"$ref": "#/definitions/DimensionScaleKilometerMinMaxConditionY"}, |
291 | 287 | {"$ref": "#/definitions/DimensionScaleDegreeMinMaxTrueConditionX"},
|
292 | 288 | {"$ref": "#/definitions/DimensionScaleDegreeMinMaxTrueConditionY"},
|
293 | 289 | {"$ref": "#/definitions/DimensionScaleHourMinMaxPatternConditionTime"},
|
|
312 | 308 |
|
313 | 309 | "OrganizationType": {
|
314 | 310 | "type": "object",
|
315 |
| - "additionalItems": false, |
| 311 | + "additionalProperties": false, |
316 | 312 | "properties": {
|
317 | 313 | "ShortName": {
|
318 | 314 | "description": "The unique name of the organization.",
|
|
453 | 449 | "DimensionScaleType": {
|
454 | 450 | "description": "The elements used for DimensionScale group.",
|
455 | 451 | "type": "object",
|
| 452 | + "additionalProperties": false, |
456 | 453 | "properties": {
|
457 | 454 | "Minimum": {
|
458 | 455 | "description": "The lowest value of the element."
|
|
536 | 533 | },
|
537 | 534 | "AdditionalAttributeType": {
|
538 | 535 | "type": "object",
|
539 |
| - "additionalItems": false, |
| 536 | + "additionalProperties": false, |
540 | 537 | "properties": {
|
541 | 538 | "Name": {
|
542 | 539 | "description": "The name (1 word description) of the additional attribute.",
|
|
672 | 669 | "else": false
|
673 | 670 | },
|
674 | 671 |
|
675 |
| - "DimensionScaleMeterMinMaxConditionX": { |
676 |
| - "$comment": "Checks if the DimensionScale's Unit element value is Meter then sets the minimum value for Minimum and Maximum sub-elements for X.", |
677 |
| - "if": {"properties": {"X": {"properties": {"Unit": {"const": "Meter"}}}}}, |
678 |
| - "then": {"properties": {"X": {"properties": {"Minimum": {"minimum": 1}, |
679 |
| - "Maximum": {"minimum": 1}}}}} |
680 |
| - }, |
681 |
| - |
682 |
| - "DimensionScaleMeterMinMaxConditionY": { |
683 |
| - "$comment": "Checks if the DimensionScale's Unit element value is Meter then sets the minimum value for Minimum and Maximum sub-elements for Y.", |
684 |
| - "if": {"properties": {"Y": {"properties": {"Unit": {"const": "Meter"}}}}}, |
685 |
| - "then": {"properties": {"Y": {"properties": {"Minimum": {"minimum": 1}, |
686 |
| - "Maximum": {"minimum": 1}}}}} |
687 |
| - }, |
688 |
| - |
689 |
| - "DimensionScaleKilometerMinMaxConditionX": { |
690 |
| - "$comment": "Checks if the DimensionScale's Unit element value is Kilometer then sets the minimum value for Minimum and Maximum sub-elements for X.", |
691 |
| - "if": {"properties": {"X": {"properties": {"Unit": {"const": "Kilometer"}}}}}, |
692 |
| - "then": {"properties": {"X": {"properties": {"Minimum": {"minimum": 1}, |
693 |
| - "Maximum": {"minimum": 1}}}}} |
694 |
| - }, |
695 |
| - |
696 |
| - "DimensionScaleKilometerMinMaxConditionY": { |
697 |
| - "$comment": "Checks if the DimensionScale's Unit element value is Kilometer then sets the minimum value for Minimum and Maximum sub-elements for Y.", |
698 |
| - "if": {"properties": {"Y": {"properties": {"Unit": {"const": "Kilometer"}}}}}, |
699 |
| - "then": {"properties": {"Y": {"properties": {"Minimum": {"minimum": 1}, |
700 |
| - "Maximum": {"minimum": 1}}}}} |
701 |
| - }, |
702 | 672 |
|
703 | 673 | "DimensionScaleDegreeMinMaxTrueConditionX": {
|
704 | 674 | "$comment": "Checks if the DimensionScale's Unit element value is Degree then sets the minimum and maximum values for Minimum and Maximum sub-elements for X.",
|
|
720 | 690 | "DimensionScaleHourMinMaxPatternConditionTime": {
|
721 | 691 | "$comment": "Checks if the DimensionScale's Unit element value is Hour then set the pattern requirement",
|
722 | 692 | "if": {"properties": {"Time": {"properties": {"Unit": {"const": "Hour"}}}}},
|
723 |
| - "then": {"properties": {"Time": {"properties": {"Minimum": {"pattern": "^[0-9][0-9](\\.[0-9]{3})?$"}, |
724 |
| - "Maximum": {"pattern": "^[0-9][0-9](\\.[0-9]{3})?$"}}}}} |
| 693 | + "then": {"properties": {"Time": {"properties": {"Minimum": {"pattern": "^[0-9][0-9](\\.[0-9]{5})?$"}, |
| 694 | + "Maximum": {"pattern": "^[0-9][0-9](\\.[0-9]{5})?$"}}}}} |
725 | 695 | },
|
726 | 696 |
|
727 | 697 | "DimensionScaleMinutesMinMaxPatternConditionTime": {
|
728 | 698 | "$comment": "Checks if the DimensionScale's Unit element value is Minutes then set the pattern requirement",
|
729 | 699 | "if": {"properties": {"Time": {"properties": {"Unit": {"const": "Minutes"}}}}},
|
730 |
| - "then": {"properties": {"Time": {"properties": {"Minimum": {"pattern": "^[0-9][0-9](\\.[0-9]{3})?$"}, |
731 |
| - "Maximum": {"pattern": "^[0-9][0-9](\\.[0-9]{3})?$"}}}}} |
| 700 | + "then": {"properties": {"Time": {"properties": {"Minimum": {"pattern": "^[0-9][0-9](\\.[0-9]{5})?$"}, |
| 701 | + "Maximum": {"pattern": "^[0-9][0-9](\\.[0-9]{5})?$"}}}}} |
732 | 702 | },
|
733 | 703 |
|
734 | 704 |
|
735 | 705 | "DimensionScaleSecondsMinMaxPatternConditionTime": {
|
736 | 706 | "$comment": "Checks if the DimensionScale's Unit element value is Seconds then set the pattern requirement",
|
737 | 707 | "if": {"properties": {"Time": {"properties": {"Unit": {"const": "Seconds"}}}}},
|
738 |
| - "then": {"properties": {"Time": {"properties": {"Minimum": {"pattern": "^[0-9][0-9](\\.[0-9]{3})?$"}, |
739 |
| - "Maximum": {"pattern": "^[0-9][0-9](\\.[0-9]{3})?$"}}}}} |
| 708 | + "then": {"properties": {"Time": {"properties": {"Minimum": {"pattern": "^[0-9][0-9](\\.[0-9]{5})?$"}, |
| 709 | + "Maximum": {"pattern": "^[0-9][0-9](\\.[0-9]{5})?$"}}}}} |
740 | 710 | },
|
741 | 711 |
|
742 | 712 | "DimensionScaleDateMinMaxPatternConditionTime": {
|
|
763 | 733 | "DimensionScaleXUnitPatternDMS": {
|
764 | 734 | "$comment": "Checks the DimensionScale's Unit element values pattern for Degrees-Minutes-Seconds. The value's format ##-##-##.### and Milliseconds are optional.",
|
765 | 735 | "if": {"properties": {"X": {"properties": {"Unit": {"enum": ["Degrees-Minutes-Seconds"]}}}}},
|
766 |
| - "then": {"properties": {"X": {"properties": {"Minimum": {"pattern": "^[0-9]{2}-[0-9]{2}-[0-9]{2}(\\.[0-9]{3})?$"}, |
767 |
| - "Maximum": {"pattern": "^[0-9]{2}-[0-9]{2}-[0-9]{2}(\\.[0-9]{3})?$"}}}}} |
| 736 | + "then": {"properties": {"X": {"properties": {"Minimum": {"pattern": "^[0-9]{2}-[0-9]{2}-[0-9]{2}\\.?\\d*?$"}, |
| 737 | + "Maximum": {"pattern": "^[0-9]{2}-[0-9]{2}-[0-9]{2}\\.?\\d*?$"}}}}} |
768 | 738 | },
|
769 | 739 |
|
770 | 740 | "DimensionScaleYUnitPatternDMS": {
|
771 | 741 | "$comment": "Checks the DimensionScale's Unit element values pattern for Degrees-Minutes-Seconds. The value's format ##-##-##.### and Milliseconds are optional.",
|
772 | 742 | "if": {"properties": {"Y": {"properties": {"Unit": {"enum": ["Degrees-Minutes-Seconds"]}}}}},
|
773 |
| - "then": {"properties": {"Y": {"properties": {"Minimum": {"pattern": "^[0-9]{2}-[0-9]{2}-[0-9]{2}(\\.[0-9]{3})?$"}, |
774 |
| - "Maximum": {"pattern": "^[0-9]{2}-[0-9]{2}-[0-9]{2}(\\.[0-9]{3})?$"}}}}} |
| 743 | + "then": {"properties": {"Y": {"properties": {"Minimum": {"pattern": "^[0-9]{2}-[0-9]{2}-[0-9]{2}\\.?\\d*?$"}, |
| 744 | + "Maximum": {"pattern": "^[0-9]{2}-[0-9]{2}-[0-9]{2}\\.?\\d*?$"}}}}} |
775 | 745 | },
|
776 | 746 |
|
777 | 747 | "SpatialResolutionUnitPatternDMS": {
|
778 | 748 | "$comment": "Checks the SpatialResolution Unit element values pattern for Degrees-Minutes-Seconds. The value's format ##-##-##.### and Milliseconds are optional.",
|
779 | 749 | "if": {"properties": {"Unit": {"const": "Degrees-Minutes-Seconds"}}},
|
780 |
| - "then": {"properties": {"LongitudeResolution": {"pattern": "^[0-9]{2}-[0-9]{2}-[0-9]{2}(\\.[0-9]{3})?$"}, |
781 |
| - "LatitudeResolution": {"pattern": "^[0-9]{2}-[0-9]{2}-[0-9]{2}(\\.[0-9]{3})?$"}}} |
| 750 | + "then": {"properties": {"LongitudeResolution": {"pattern": "^[0-9]{2}-[0-9]{2}-[0-9]{2}\\.?\\d*?$"}, |
| 751 | + "LatitudeResolution": {"pattern": "^[0-9]{2}-[0-9]{2}-[0-9]{2}\\.?\\d*?$"}}} |
782 | 752 | },
|
783 | 753 |
|
784 | 754 | "SpatialResolutionUnitPatternMinute": {
|
785 | 755 | "$comment": "Checks the SpatialResolution Unit element values pattern for Minutes. The value's format ##-##.### and Milliseconds are optional.",
|
786 | 756 | "if": {"properties": {"Unit": {"const": "Minutes"}}},
|
787 |
| - "then": {"properties": {"LongitudeResolution": {"pattern": "^[0-9]{2}-[0-9]{2}(\\.[0-9]{3})?$"}, |
788 |
| - "LatitudeResolution": {"pattern": "^[0-9]{2}-[0-9]{2}(\\.[0-9]{3})?$"}}} |
| 757 | + "then": {"properties": {"LongitudeResolution": {"pattern": "^[0-9]{2}-[0-9]{2}\\.?\\d*?$"}, |
| 758 | + "LatitudeResolution": {"pattern": "^[0-9]{2}-[0-9]{2}\\.?\\d*?$"}}} |
789 | 759 | },
|
790 | 760 |
|
791 | 761 | "SpatialResolutionUnitPatternSecond": {
|
792 | 762 | "$comment": "Checks the SpatialResolution Unit element values pattern for Seconds. The value's format ##.### and Milliseconds are optional.",
|
793 | 763 | "if": {"properties": {"Unit": {"const": "Seconds"}}},
|
794 |
| - "then": {"properties": {"LongitudeResolution": {"pattern": "^[0-9]{2}(\\.[0-9]{3})?$"}, |
795 |
| - "LatitudeResolution": {"pattern": "^[0-9]{2}(\\.[0-9]{3})?$"}}} |
| 764 | + "then": {"properties": {"LongitudeResolution": {"pattern": "^[0-9]{2}\\.?\\d*?$"}, |
| 765 | + "LatitudeResolution": {"pattern": "^[0-9]{2}\\.?\\d*?$"}}} |
796 | 766 | },
|
797 | 767 |
|
798 | 768 | "SpatialResolutionUnitPatternDeg": {
|
799 | 769 | "$comment": "Checks the SpatialResolution Unit element values pattern for Degrees.",
|
800 | 770 | "if": {"properties": {"Unit": {"const": "Degree"}}},
|
801 |
| - "then": {"properties": {"LongitudeResolution": {"pattern": "^(360|3[0-5][0-9]|[12][0-9]{1,2}|[1-9][0-9]|[0-9])$"}, |
802 |
| - "LatitudeResolution": {"pattern": "^(180|1[0-7][0-9]|[1-9][0-9]|[0-9])$"}}} |
| 771 | + "then": {"properties": {"LongitudeResolution": {"pattern": "^(360|3[0-5][0-9]|[12][0-9]{1,2}|[1-9][0-9]|[0-9])\\.?\\d*?$"}, |
| 772 | + "LatitudeResolution": {"pattern": "^(180|1[0-7][0-9]|[1-9][0-9]|[0-9])\\.?\\d*?$"}}} |
803 | 773 | },
|
804 | 774 |
|
805 | 775 | "SpatialResolutionUnitPatternKM": {
|
806 | 776 | "$comment": "Checks the SpatialResolution Unit element values pattern for Kilometer.",
|
807 | 777 | "if": {"properties": {"Unit": {"const": "Kilometer"}}},
|
808 |
| - "then": {"properties": {"LongitudeResolution": {"pattern": "^[0-9]{1,}(\\.[0-9]{3})?$"}, |
809 |
| - "LatitudeResolution": {"pattern": "^[0-9]{1,}(\\.[0-9]{3})?$"}}} |
| 778 | + "then": {"properties": {"LongitudeResolution": {"pattern": "^[0-9]{1,}\\.?\\d*?$"}, |
| 779 | + "LatitudeResolution": {"pattern": "^[0-9]{1,}\\.?\\d*?$"}}} |
810 | 780 | },
|
811 | 781 |
|
812 | 782 | "SpatialResolutionUnitPatternMeter": {
|
813 | 783 | "$comment": "Checks the SpatialResolution Unit element values pattern for Meter.",
|
814 | 784 | "if": {"properties": {"Unit": {"const": "Meter"}}},
|
815 |
| - "then": {"properties": {"LongitudeResolution": {"pattern": "^[0-9]{1,}$"}, |
816 |
| - "LatitudeResolution": {"pattern": "^[0-9]{1,}$"}}} |
| 785 | + "then": {"properties": {"LongitudeResolution": {"pattern": "^[0-9]{1,}\\.?\\d*?$"}, |
| 786 | + "LatitudeResolution": {"pattern": "^[0-9]{1,}\\.?\\d*?$"}}} |
817 | 787 | },
|
818 | 788 |
|
819 | 789 | "ScaleDegreesMinutesSecondsCondition": {
|
|
0 commit comments