Skip to content

identification module

This is the identification module.

This module contains geographic metadata structures regarding identification information codelists and common base classes derived from the ISO 19115-1:2014 international standard.

AssociatedResource

Bases: ABC

Associated resource information.

NOTE: An associated resource is a dataset composed of a collection of datasets.

Source code in opengis/metadata/identification.py
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
class AssociatedResource(ABC):
    """
    Associated resource information.

    NOTE: An associated resource is a dataset composed of a collection
    of datasets.
    """

    @property
    @abstractmethod
    def name(self) -> Optional[Citation]:
        """
        Citation information about the associated resource.

        MANDATORY: if `metadata_reference` not documented.
        """

    @property
    @abstractmethod
    def association_type(self) -> AssociationTypeCode:
        """Type of relation between the resources."""

    @property
    @abstractmethod
    def initiative_type(self) -> Optional[InitiativeTypeCode]:
        """
        Type of initiative under which the associated resource was produced.

        NOTE: the activity that resulted in the associated resource.
        """

    @property
    @abstractmethod
    def metadata_reference(self) -> Optional[Citation]:
        """
        Reference to the metadata of the associated resource.

        MANDATORY: if `name` not documented.
        """

association_type: AssociationTypeCode abstractmethod property

Type of relation between the resources.

initiative_type: Optional[InitiativeTypeCode] abstractmethod property

Type of initiative under which the associated resource was produced.

NOTE: the activity that resulted in the associated resource.

metadata_reference: Optional[Citation] abstractmethod property

Reference to the metadata of the associated resource.

MANDATORY: if name not documented.

name: Optional[Citation] abstractmethod property

Citation information about the associated resource.

MANDATORY: if metadata_reference not documented.

AssociationTypeCode

Bases: Enum

Justification for the correlation of two resources.

Source code in opengis/metadata/identification.py
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
class AssociationTypeCode(Enum):
    """Justification for the correlation of two resources."""

    CROSS_REFERENCE = "crossReference"
    """Reference from one resource to another."""

    LARGER_WORK_CITATION = "largerWorkCitation"
    """Reference to a master resource of which this one is a part."""

    PART_OF_SEAMLESS_DATABASE = "partOfSeamlessDatabase"
    """Part of same structured set of data held in a computer."""

    # deprecated Removed in ISO 19115:2014.
    # SOURCE = "source"
    # """
    # Mapping and charting information from which the dataset content
    # originates.
    # """

    STEREO_MATE = "stereoMate"
    """
    Part of a set of imagery that when used together, provides
    three-dimensional images.
    """

    IS_COMPOSED_OF = "isComposedOf"
    """Reference to resources that are parts of this resource."""

    COLLECTIVE_TITLE = "collectiveTitle"
    """
    Common title for a collection of resources.

    NOTE: Title identifies elements of a series collectively, combined with
    information about what volumes are available at the source cite.
    """

    SERIES = "series"
    """
    Associated through a common heritage such as produced to a common product
    specification.
    """

    DEPENDENCY = "dependency"
    """Associated through a dependency."""

    REVISION_OF = "revisionOf"
    """Resource is a revision of associated resource."""

COLLECTIVE_TITLE = 'collectiveTitle' class-attribute instance-attribute

Common title for a collection of resources.

NOTE: Title identifies elements of a series collectively, combined with information about what volumes are available at the source cite.

CROSS_REFERENCE = 'crossReference' class-attribute instance-attribute

Reference from one resource to another.

DEPENDENCY = 'dependency' class-attribute instance-attribute

Associated through a dependency.

IS_COMPOSED_OF = 'isComposedOf' class-attribute instance-attribute

Reference to resources that are parts of this resource.

LARGER_WORK_CITATION = 'largerWorkCitation' class-attribute instance-attribute

Reference to a master resource of which this one is a part.

PART_OF_SEAMLESS_DATABASE = 'partOfSeamlessDatabase' class-attribute instance-attribute

Part of same structured set of data held in a computer.

REVISION_OF = 'revisionOf' class-attribute instance-attribute

Resource is a revision of associated resource.

SERIES = 'series' class-attribute instance-attribute

Associated through a common heritage such as produced to a common product specification.

STEREO_MATE = 'stereoMate' class-attribute instance-attribute

Part of a set of imagery that when used together, provides three-dimensional images.

BrowseGraphic

Bases: ABC

Graphic that provides an illustration of a resource/dataset

NOTE: should include a legend for the graphic, if applicable.

Example: A dataset, an organisation logo, security constraint, or citation graphic.

Source code in opengis/metadata/identification.py
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
class BrowseGraphic(ABC):
    """
    Graphic that provides an illustration of a resource/dataset

    NOTE: should include a legend for the graphic, if applicable.

    Example: A dataset, an organisation logo, security constraint, or citation
    graphic.
    """

    @property
    @abstractmethod
    def file_name(self) -> str:
        """
        Name of the file that contains a graphic that provides an illustration
        of the resource/dataset.
        """

    @property
    @abstractmethod
    def file_description(self) -> Optional[str]:
        """Text description of the illustration."""

    @property
    @abstractmethod
    def file_type(self) -> Optional[str]:
        """
        Format in which the illustration is encoded.

        Example: EPS, GIF, JPEG, PBM, PS, TIFF, PDF.
        """

    @property
    @abstractmethod
    def image_constraints(self) -> Optional[Sequence[Constraints]]:
        """Restriction on access and/or use of browse graphic."""

    @property
    @abstractmethod
    def linkage(self) -> Optional[Sequence[OnlineResource]]:
        """Link to browse graphic."""

file_description: Optional[str] abstractmethod property

Text description of the illustration.

file_name: str abstractmethod property

Name of the file that contains a graphic that provides an illustration of the resource/dataset.

file_type: Optional[str] abstractmethod property

Format in which the illustration is encoded.

Example: EPS, GIF, JPEG, PBM, PS, TIFF, PDF.

image_constraints: Optional[Sequence[Constraints]] abstractmethod property

Restriction on access and/or use of browse graphic.

linkage: Optional[Sequence[OnlineResource]] abstractmethod property

Link to browse graphic.

DataIdentification

Bases: Identification

Information required to identify a resource.

Source code in opengis/metadata/identification.py
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
class DataIdentification(Identification):
    """Information required to identify a resource."""

    @property
    @abstractmethod
    def default_locale(self) -> Optional[str]:
        """
        Language and character set used within the resource. A string
        conforming to IETF BCP 47.

        MANDATORY: if a language is used in the resource.
        """

    @property
    @abstractmethod
    def other_locale(self) -> Optional[Sequence[str]]:
        """
        Alternate localised language(s) and character set(s) used within
        the resource. A string conforming to IETF BCP 47.
        """

    @property
    @abstractmethod
    def environment_description(self) -> Optional[str]:
        """
        Description of the resource in the producer's processing environment,
        including items such as the software, the computer operating system,
        file name, and the dataset size.
        """

    @property
    @abstractmethod
    def supplemental_information(self) -> Optional[str]:
        """Any other descriptive information about the resource."""

default_locale: Optional[str] abstractmethod property

Language and character set used within the resource. A string conforming to IETF BCP 47.

MANDATORY: if a language is used in the resource.

environment_description: Optional[str] abstractmethod property

Description of the resource in the producer's processing environment, including items such as the software, the computer operating system, file name, and the dataset size.

other_locale: Optional[Sequence[str]] abstractmethod property

Alternate localised language(s) and character set(s) used within the resource. A string conforming to IETF BCP 47.

supplemental_information: Optional[str] abstractmethod property

Any other descriptive information about the resource.

Identification

Bases: ABC

Basic information required to uniquely identify a resource or resources.

Source code in opengis/metadata/identification.py
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
class Identification(ABC):
    """
    Basic information required to uniquely identify a resource or resources.
    """

    @property
    @abstractmethod
    def citation(self) -> Citation:
        """Citation for the resource(s)."""

    @property
    @abstractmethod
    def abstract(self) -> str:
        """Brief narrative summary of the content of the resource(s)."""

    @abstractmethod
    def purpose(self) -> Optional[str]:
        """
        Summary of the intentions with which the resource(s) was developed.
        """

    @property
    @abstractmethod
    def credit(self) -> Optional[Sequence[str]]:
        """Recognition of those who contributed to the resource(s)."""

    @property
    @abstractmethod
    def status(self) -> Optional[Sequence[ProgressCode]]:
        """Status of the resource(s)."""

    @property
    @abstractmethod
    def point_of_contact(self) -> Optional[Sequence[Responsibility]]:
        """
        Identification of, and means of communication with, person(s) and
        organisation(s) associated with the resource(s).
        """

    @property
    @abstractmethod
    def spatial_representation_type(self) -> Optional[Sequence[
        SpatialRepresentationTypeCode
    ]]:
        """Method used to spatially represent geographic information."""

    @property
    @abstractmethod
    def spatial_resolution(self) -> Optional[Sequence[Resolution]]:
        """
        Factor which provides a general understanding of the density of
        spatial data in the resource.
        """

    @property
    @abstractmethod
    def temporal_resolution(self) -> Optional[Sequence[timedelta]]:
        """Smallest resolvable temporal period in a resource."""

    @property
    @abstractmethod
    def topic_category(self) -> Optional[Sequence[TopicCategoryCode]]:
        """
        Main theme(s) of the resource.

        MANDATORY: if `Metadata.metadata_scope.resource_scope` == 'dataset'
            OR `Metadata.metadata_scope.resource_scope` == 'series'.
        """

    @property
    @abstractmethod
    def extent(self) -> Optional[Sequence[Extent]]:
        """
        Spatial and temporal extent of the resource.

        MANDATORY: if `Metadata.metadata_scope.resource_scope` == 'dataset'
            then `extent.geographic_element.GeographicBoundingBox`
            or  `extent.geographic_element.Geographicdescription` is required.
        """

    @property
    @abstractmethod
    def additional_documentation(self) -> Optional[Sequence[Citation]]:
        """
        Other documentation associated with the resource, e.g.,
        Related articles, publications, user guides, data dictionaries.
        """

    @property
    @abstractmethod
    def processing_level(self) -> Optional[Identifier]:
        """
        Code that identifies the level of processing in the producers coding
        system of a resource, e.g., NOAA level 1B.
        """

    @property
    @abstractmethod
    def resource_maintenance(self) -> Optional[Sequence[
        MaintenanceInformation
    ]]:
        """
        Information about the frequency of resource updates and the scope of
        those updates.
        """

    @property
    @abstractmethod
    def graphic_overview(self) -> Optional[Sequence[BrowseGraphic]]:
        """
        Graphic that illustrates the resource (should include a legend for
        the graphic).
        """

    @property
    @abstractmethod
    def resource_format(self) -> Optional[Sequence[Format]]:
        """Description of the format of the resource."""

    @property
    @abstractmethod
    def descriptive_keywords(self) -> Optional[Sequence[Keywords]]:
        """Category keywords, their type, and reference source."""

    @property
    @abstractmethod
    def resource_specific_usage(self) -> Optional[Sequence[Usage]]:
        """
        Basic information about specific application(s) for which the resource
        has been or is being used by different users.
        """

    @property
    @abstractmethod
    def resource_constraints(self) -> Optional[Sequence[Constraints]]:
        """Information about constraints which apply to the resource."""

    @property
    @abstractmethod
    def associated_resource(self) -> Optional[Sequence[AssociatedResource]]:
        """Associated resource information."""

abstract: str abstractmethod property

Brief narrative summary of the content of the resource(s).

additional_documentation: Optional[Sequence[Citation]] abstractmethod property

Other documentation associated with the resource, e.g., Related articles, publications, user guides, data dictionaries.

associated_resource: Optional[Sequence[AssociatedResource]] abstractmethod property

Associated resource information.

citation: Citation abstractmethod property

Citation for the resource(s).

credit: Optional[Sequence[str]] abstractmethod property

Recognition of those who contributed to the resource(s).

descriptive_keywords: Optional[Sequence[Keywords]] abstractmethod property

Category keywords, their type, and reference source.

extent: Optional[Sequence[Extent]] abstractmethod property

Spatial and temporal extent of the resource.

if Metadata.metadata_scope.resource_scope == 'dataset'

then extent.geographic_element.GeographicBoundingBox or extent.geographic_element.Geographicdescription is required.

graphic_overview: Optional[Sequence[BrowseGraphic]] abstractmethod property

Graphic that illustrates the resource (should include a legend for the graphic).

point_of_contact: Optional[Sequence[Responsibility]] abstractmethod property

Identification of, and means of communication with, person(s) and organisation(s) associated with the resource(s).

processing_level: Optional[Identifier] abstractmethod property

Code that identifies the level of processing in the producers coding system of a resource, e.g., NOAA level 1B.

resource_constraints: Optional[Sequence[Constraints]] abstractmethod property

Information about constraints which apply to the resource.

resource_format: Optional[Sequence[Format]] abstractmethod property

Description of the format of the resource.

resource_maintenance: Optional[Sequence[MaintenanceInformation]] abstractmethod property

Information about the frequency of resource updates and the scope of those updates.

resource_specific_usage: Optional[Sequence[Usage]] abstractmethod property

Basic information about specific application(s) for which the resource has been or is being used by different users.

spatial_representation_type: Optional[Sequence[SpatialRepresentationTypeCode]] abstractmethod property

Method used to spatially represent geographic information.

spatial_resolution: Optional[Sequence[Resolution]] abstractmethod property

Factor which provides a general understanding of the density of spatial data in the resource.

status: Optional[Sequence[ProgressCode]] abstractmethod property

Status of the resource(s).

temporal_resolution: Optional[Sequence[timedelta]] abstractmethod property

Smallest resolvable temporal period in a resource.

topic_category: Optional[Sequence[TopicCategoryCode]] abstractmethod property

Main theme(s) of the resource.

if Metadata.metadata_scope.resource_scope == 'dataset'

OR Metadata.metadata_scope.resource_scope == 'series'.

purpose() abstractmethod

Summary of the intentions with which the resource(s) was developed.

Source code in opengis/metadata/identification.py
776
777
778
779
780
@abstractmethod
def purpose(self) -> Optional[str]:
    """
    Summary of the intentions with which the resource(s) was developed.
    """

InitiativeTypeCode

Bases: Enum

Type of aggregation activity in which resources are related.

Source code in opengis/metadata/identification.py
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
class InitiativeTypeCode(Enum):
    """Type of aggregation activity in which resources are related."""

    CAMPAIGN = "campaign"
    """Series of organized planned actions."""

    COLLECTION = "collection"
    """Accumulation of resources assembled for a specific purpose."""

    EXERCISE = "exercise"
    """Specific performance of a function or group of functions."""

    EXPERIMENT = "experiment"
    """Process designed to find if something is effective or valid."""

    INVESTIGATION = "investigation"
    """Search or systematic inquiry."""

    MISSION = "mission"
    """Specific operation of a data collection system."""

    SENSOR = "sensor"
    """Device or piece of equipment which detects or records."""

    OPERATION = "operation"
    """Action that is part of a series of actions."""

    PLATFORM = "platform"
    """Vehicle or other support base that holds a sensor."""

    PROCESS = "process"
    """Method of doing something involving a number of steps."""

    PROGRAM = "program"
    """Specific planned activity."""

    PROJECT = "project"
    """Organized undertaking, research, or development."""

    STUDY = "study"
    """Examination or investigation."""

    TASK = "task"
    """Piece of work."""

    TRIAL = "trial"
    """Process of testing to discover or demonstrate something."""

CAMPAIGN = 'campaign' class-attribute instance-attribute

Series of organized planned actions.

COLLECTION = 'collection' class-attribute instance-attribute

Accumulation of resources assembled for a specific purpose.

EXERCISE = 'exercise' class-attribute instance-attribute

Specific performance of a function or group of functions.

EXPERIMENT = 'experiment' class-attribute instance-attribute

Process designed to find if something is effective or valid.

INVESTIGATION = 'investigation' class-attribute instance-attribute

Search or systematic inquiry.

MISSION = 'mission' class-attribute instance-attribute

Specific operation of a data collection system.

OPERATION = 'operation' class-attribute instance-attribute

Action that is part of a series of actions.

PLATFORM = 'platform' class-attribute instance-attribute

Vehicle or other support base that holds a sensor.

PROCESS = 'process' class-attribute instance-attribute

Method of doing something involving a number of steps.

PROGRAM = 'program' class-attribute instance-attribute

Specific planned activity.

PROJECT = 'project' class-attribute instance-attribute

Organized undertaking, research, or development.

SENSOR = 'sensor' class-attribute instance-attribute

Device or piece of equipment which detects or records.

STUDY = 'study' class-attribute instance-attribute

Examination or investigation.

TASK = 'task' class-attribute instance-attribute

Piece of work.

TRIAL = 'trial' class-attribute instance-attribute

Process of testing to discover or demonstrate something.

KeywordClass

Bases: ABC

Specification of a class to categorize keywords in a domain-specific vocabulary that has a binding to a formal ontology.

Source code in opengis/metadata/identification.py
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
class KeywordClass(ABC):
    """
    Specification of a class to categorize keywords in a domain-specific
    vocabulary that has a binding to a formal ontology.
    """

    @property
    @abstractmethod
    def class_name(self) -> str:
        """
        Character string to label the keyword category in natural language.
        """

    @property
    @abstractmethod
    def concept_identifier(self) -> Optional[str]:
        """
        URI (as a string) of concept in ontology specified by the ontology
        attribute; this concept is labeled by the className:
        CharacterString.
        """

    @property
    @abstractmethod
    def ontology(self) -> Citation:
        """
        A reference that binds the keyword class to a formal conceptualization
        of a knowledge domain for use in semantic processing NOTE: Keywords in
        the associated `Keywords` keyword list must be within the scope of
        this ontology.
        """

class_name: str abstractmethod property

Character string to label the keyword category in natural language.

concept_identifier: Optional[str] abstractmethod property

URI (as a string) of concept in ontology specified by the ontology attribute; this concept is labeled by the className: CharacterString.

ontology: Citation abstractmethod property

A reference that binds the keyword class to a formal conceptualization of a knowledge domain for use in semantic processing NOTE: Keywords in the associated Keywords keyword list must be within the scope of this ontology.

KeywordTypeCode

Bases: Enum

Methods used to group similar keywords.

Source code in opengis/metadata/identification.py
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
class KeywordTypeCode(Enum):
    """Methods used to group similar keywords."""

    DISCIPLINE = "discipline"
    """Keyword identifies a branch of instruction or specialized learning."""

    PLACE = "place"
    """Keyword identifies a location."""

    STRATUM = "stratum"
    """
    Keyword identifies the layer(s) of any deposited substance or levels
    within an ordered system.
    """

    TEMPORAL = "temporal"
    """Keyword identifies a time period related to the resource."""

    THEME = "theme"
    """Keyword identifies a particular subject or topic."""

    DATA_CENTRE = "dataCentre"
    """
    Keyword identifies a repository or archive that manages and
    distributes data.
    """

    FEATURE_TYPE = "featureType"
    """
    Keyword identifies a resource containing or about a collection of feature
    instances with common characteristics.
    """

    INSTRUMENT = "instrument"
    """
    Keyword identifies a device used to measure or compare physical properties.
    """

    PLATFORM = "platform"
    """Keyword identifies a structure upon which an instrument is mounted."""

    PROCESS = "process"
    """Keyword identifies a series of actions or natural occurrences."""

    PROJECT = "project"
    """
    Keyword identifies an endeavour undertaken to create or modify a product
    or service.
    """

    SERVICE = "service"
    """
    Keyword identifies an activity carried out by one party for the benefit
    of another.
    """

    PRODUCT = "product"
    """Keyword identifies a type of product."""

    SUB_TOPIC_CATEGORY = "subTopicCategory"
    """
    Refinement of a topic category for the purpose of geographic
    data classification.
    """

    TAXON = "taxon"
    """Keyword identifies a taxonomy of the resource."""

DATA_CENTRE = 'dataCentre' class-attribute instance-attribute

Keyword identifies a repository or archive that manages and distributes data.

DISCIPLINE = 'discipline' class-attribute instance-attribute

Keyword identifies a branch of instruction or specialized learning.

FEATURE_TYPE = 'featureType' class-attribute instance-attribute

Keyword identifies a resource containing or about a collection of feature instances with common characteristics.

INSTRUMENT = 'instrument' class-attribute instance-attribute

Keyword identifies a device used to measure or compare physical properties.

PLACE = 'place' class-attribute instance-attribute

Keyword identifies a location.

PLATFORM = 'platform' class-attribute instance-attribute

Keyword identifies a structure upon which an instrument is mounted.

PROCESS = 'process' class-attribute instance-attribute

Keyword identifies a series of actions or natural occurrences.

PRODUCT = 'product' class-attribute instance-attribute

Keyword identifies a type of product.

PROJECT = 'project' class-attribute instance-attribute

Keyword identifies an endeavour undertaken to create or modify a product or service.

SERVICE = 'service' class-attribute instance-attribute

Keyword identifies an activity carried out by one party for the benefit of another.

STRATUM = 'stratum' class-attribute instance-attribute

Keyword identifies the layer(s) of any deposited substance or levels within an ordered system.

SUB_TOPIC_CATEGORY = 'subTopicCategory' class-attribute instance-attribute

Refinement of a topic category for the purpose of geographic data classification.

TAXON = 'taxon' class-attribute instance-attribute

Keyword identifies a taxonomy of the resource.

TEMPORAL = 'temporal' class-attribute instance-attribute

Keyword identifies a time period related to the resource.

THEME = 'theme' class-attribute instance-attribute

Keyword identifies a particular subject or topic.

Keywords

Bases: ABC

Keywords, their type and reference source.

NOTE: When the resource

described is a service, one instance of Keyword shall refer to the service taxonomy defined in ISO 19119, 8.3).

Source code in opengis/metadata/identification.py
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
class Keywords(ABC):
    """
    Keywords, their type and reference source.

        NOTE: When the resource
    described is a service, one instance of `Keyword` shall refer to the
    service taxonomy defined in ISO 19119, 8.3).
    """

    @property
    @abstractmethod
    def keyword(self) -> Sequence[str]:
        """
        Commonly used word(s) or formalised word(s) or phrase(s) used to
        describe the subject.
        """

    @property
    @abstractmethod
    def type(self) -> Optional[KeywordTypeCode]:
        """Subject matter used to group similar keywords."""

    @property
    @abstractmethod
    def thesaurus_name(self) -> Optional[Citation]:
        """
        Name of the formally registered thesaurus or a similar authoritative
        source of keywords.
        """

    @property
    @abstractmethod
    def keyword_class(self) -> Optional[KeywordClass]:
        """
        Association of an `Keywords` instance with an `KeywordClass` to
        provide user-defined categorization of groups of keywords that extend
        or are orthogonal to the standardized KeywordTypeCodes and are
        associated with an ontology that allows additional semantic query
        processing.

        NOTE: The thesaurus citation specifies a collection of
        instances from some ontology, but is not an ontology. It might be a
        list of places that include rivers, mountains, counties and cities.
        There might be a Laconte County, the city Laconte, the Laconte River,
        and Mt. Laconte; when searching it is useful for the user to be able to
        restrict the search to rivers only.
        """

keyword: Sequence[str] abstractmethod property

Commonly used word(s) or formalised word(s) or phrase(s) used to describe the subject.

keyword_class: Optional[KeywordClass] abstractmethod property

Association of an Keywords instance with an KeywordClass to provide user-defined categorization of groups of keywords that extend or are orthogonal to the standardized KeywordTypeCodes and are associated with an ontology that allows additional semantic query processing.

NOTE: The thesaurus citation specifies a collection of instances from some ontology, but is not an ontology. It might be a list of places that include rivers, mountains, counties and cities. There might be a Laconte County, the city Laconte, the Laconte River, and Mt. Laconte; when searching it is useful for the user to be able to restrict the search to rivers only.

thesaurus_name: Optional[Citation] abstractmethod property

Name of the formally registered thesaurus or a similar authoritative source of keywords.

type: Optional[KeywordTypeCode] abstractmethod property

Subject matter used to group similar keywords.

ProgressCode

Bases: Enum

Status of the resource.

Source code in opengis/metadata/identification.py
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
class ProgressCode(Enum):
    """Status of the resource."""

    COMPLETED = "completed"
    """Has been completed."""

    HISTORICAL_ARCHIVE = "historicalArchive"
    """Stored in an offline storage facility."""

    OBSOLETE = "obsolete"
    """No longer relevant."""

    ON_GOING = "onGoing"
    """Continually being updated."""

    PLANNED = "planned"
    """
    Fixed date has been established upon or by which the resource will be
    created or updated.
    """

    REQUIRED = "required"
    """Needs to be generated or updated."""

    UNDER_DEVELOPMENT = "underDevelopment"
    """Currently in the process of being created."""

    FINAL = "final"
    """Progress concluded and no changes will be accepted."""

    PENDING = "pending"
    """Committed to, but not yet addressed."""

    RETIRED = "retired"
    """
    Item is no longer recommended for use. It has not been superseded
    by another item.
    """

    SUPERSEDED = "superseded"
    """Replaced by new."""

    TENTATIVE = "tentative"
    """Provisional changes likely before resource becomes final or complete."""

    VALID = "valid"
    """Acceptable under specific conditions."""

    ACCEPTED = "accepted"
    """Agreed to by sponsor."""

    NOT_ACCEPTED = "notAccepted"
    """Rejected by sponsor."""

    WITHDRAWN = "withdrawn"
    """Removed from consideration."""

    PROPOSED = "proposed"
    """Suggested that development needs to be undertaken."""

    DEPRECATED = "deprecated"
    """
    Resource superseded and will become obsolete, use only
    for historical purposes.
    """

ACCEPTED = 'accepted' class-attribute instance-attribute

Agreed to by sponsor.

COMPLETED = 'completed' class-attribute instance-attribute

Has been completed.

DEPRECATED = 'deprecated' class-attribute instance-attribute

Resource superseded and will become obsolete, use only for historical purposes.

FINAL = 'final' class-attribute instance-attribute

Progress concluded and no changes will be accepted.

HISTORICAL_ARCHIVE = 'historicalArchive' class-attribute instance-attribute

Stored in an offline storage facility.

NOT_ACCEPTED = 'notAccepted' class-attribute instance-attribute

Rejected by sponsor.

OBSOLETE = 'obsolete' class-attribute instance-attribute

No longer relevant.

ON_GOING = 'onGoing' class-attribute instance-attribute

Continually being updated.

PENDING = 'pending' class-attribute instance-attribute

Committed to, but not yet addressed.

PLANNED = 'planned' class-attribute instance-attribute

Fixed date has been established upon or by which the resource will be created or updated.

PROPOSED = 'proposed' class-attribute instance-attribute

Suggested that development needs to be undertaken.

REQUIRED = 'required' class-attribute instance-attribute

Needs to be generated or updated.

RETIRED = 'retired' class-attribute instance-attribute

Item is no longer recommended for use. It has not been superseded by another item.

SUPERSEDED = 'superseded' class-attribute instance-attribute

Replaced by new.

TENTATIVE = 'tentative' class-attribute instance-attribute

Provisional changes likely before resource becomes final or complete.

UNDER_DEVELOPMENT = 'underDevelopment' class-attribute instance-attribute

Currently in the process of being created.

VALID = 'valid' class-attribute instance-attribute

Acceptable under specific conditions.

WITHDRAWN = 'withdrawn' class-attribute instance-attribute

Removed from consideration.

RepresentativeFraction

Bases: ABC

Derived from ISO 19103 Scale where denominator = 1 / Scale.measure and Scale.target_units = Scale.source_units.

Source code in opengis/metadata/identification.py
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
class RepresentativeFraction(ABC):
    """
    Derived from ISO 19103 Scale where
    `denominator` = 1 / `Scale.measure`
    and `Scale.target_units` = `Scale.source_units`.
    """

    @property
    @abstractmethod
    def denominator(self) -> int:
        """
        The number below the line in a vulgar fraction.

        Domain: > 0
        """

denominator: int abstractmethod property

The number below the line in a vulgar fraction.

Domain: > 0

Resolution

Bases: ABC

Level of detail expressed as a scale factor, a distance or an angle.

Source code in opengis/metadata/identification.py
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
class Resolution(ABC):
    """Level of detail expressed as a scale factor, a distance or an angle."""

    @property
    @abstractmethod
    def equivalent_scale(self) -> Optional[RepresentativeFraction]:
        """
        Level of detail expressed as the scale of a comparable hardcopy map or
        chart.

        MANDATORY: if `distance`, `vertical`, `angular_distance`,
            or `level_of_detail` not documented.
        """

    @property
    @abstractmethod
    def distance(self) -> Optional[Distance]:
        """
        Horizontal ground sample distance.

        MANDATORY: if `equivalent_scale`, `vertical`, `angular_distance`,
            or `level_of_detail` not documented.
        """

    @property
    @abstractmethod
    def vertical(self) -> Optional[Distance]:
        """
        Vertical sampling distance.

        MANDATORY: if `equivalent_scale`, `distance`, `angular_distance`,
            or `level_of_detail` not documented.
        """

    @property
    @abstractmethod
    def angular_distance(self) -> Optional[Angle]:
        """
        Angular sampling measure.

        MANDATORY: if `equivalent_scale`, `distance`, `vertical`,
            or `level_of_detail` not documented.
        """

    @property
    @abstractmethod
    def level_of_detail(self) -> Optional[str]:
        """
        Brief textual description of the spatial resolution of the resource.

        MANDATORY: if `equivalent_scale`, `distance`, `vertical`,
            or `angular_distance` not documented.
        """

angular_distance: Optional[Angle] abstractmethod property

Angular sampling measure.

if equivalent_scale, distance, vertical,

or level_of_detail not documented.

distance: Optional[Distance] abstractmethod property

Horizontal ground sample distance.

if equivalent_scale, vertical, angular_distance,

or level_of_detail not documented.

equivalent_scale: Optional[RepresentativeFraction] abstractmethod property

Level of detail expressed as the scale of a comparable hardcopy map or chart.

if distance, vertical, angular_distance,

or level_of_detail not documented.

level_of_detail: Optional[str] abstractmethod property

Brief textual description of the spatial resolution of the resource.

if equivalent_scale, distance, vertical,

or angular_distance not documented.

vertical: Optional[Distance] abstractmethod property

Vertical sampling distance.

if equivalent_scale, distance, angular_distance,

or level_of_detail not documented.

TopicCategoryCode

Bases: Enum

High-level geographic data thematic classification to assist in the grouping and search of available geographic datasets.

NOTE 1: Can be used to group keywords as well. Listed examples are not exhaustive.

NOTE 2: Is is understto there are overlaps between general categories and the user is encouraged to select the one most appropriate.

Source code in opengis/metadata/identification.py
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
class TopicCategoryCode(Enum):
    """
    High-level geographic data thematic classification to assist in the
    grouping and search of available geographic datasets.

    NOTE 1: Can be used to group keywords as well. Listed examples are not
    exhaustive.

    NOTE 2: Is is understto there are overlaps between general categories and
    the user is encouraged to select the one most appropriate.
    """

    FARMING = "farming"
    """
    Rearing of animals and/or cultivation of plants.

    EXAMPLES: Agriculture, irrigation, aquaculture, plantations, herding,
    pests and diseases affecting crops and livestock.
    """

    BIOTA = "biota"
    """
    Flora and/or fauna in natural environment.

    EXAMPLES: Wildlife, vegetation, biological sciences, ecology, wilderness,
    sealife, wetlands, habitat.
    """

    BOUNDARIES = "boundaries"
    """
    Legal land descriptions, maritime boundaries.

    EXAMPLES: Political and administrative boundaries, territorial seas, EEZ,
    port security zones.
    """

    CLIMATOLOGY_METEOROLOGY_ATMOSPHERE = "climatologyMeteorologyAtmosphere"
    """
    Processes and phenomena of the atmosphere.

    EXAMPLES: Cloud cover, weather, climate, atmospheric conditions,
    climate change, precipitation.
    """

    ECONOMY = "economy"
    """
    Economic activities, conditions and employment.

    EXAMPLES: Production, labour, revenue, commerce, industry, tourism and
    ecotourism, forestry, fisheries, commercial or subsistence hunting,
    exploration and exploitation of resources such as minerals, oil and gas.
    """

    ELEVATION = "elevation"
    """
    Height above or below a vertical datum.

    EXAMPLES: Altitude, bathymetry, digital elevation models, slope,
    derived products.
    """

    ENVIRONMENT = "environment"
    """
    Environmental resources, protection and conservation.

    EXAMPLES: Environmental pollution, waste storage and treatment,
    environmental impact assessment, monitoring environmental risk,
    nature reserves, landscape.
    """

    GEOSCIENTIFIC_INFORMATION = "geoscientificInformation"
    """
    Information pertaining to earth sciences.

    EXAMPLES: Geophysical features and processes, geology, minerals,
    sciences dealing with the composition, structure and origin of the
    Earth's rocks, risks of earthquakes, volcanic activity, landslides,
    gravity information, soils, permafrost, hydrogeology, erosion.
    """

    HEALTH = "health"
    """
    Health, health services, human ecology, and safety.

    EXAMPLES: Disease and illness, factors affecting health, hygiene,
    substance abuse, mental and physical health, health services.
    """

    IMAGERY_BASE_MAPS_EARTH_COVER = "imageryBaseMapsEarthCover"
    """
    Base maps.

    EXAMPLES: Land cover, topographic maps, imagery, unclassified images,
    annotations.
    """

    INTELLIGENCE_MILITARY = "intelligenceMilitary"
    """
    Military bases, structures, activities.

    EXAMPLES: Barracks, training grounds, military transportation,
    information collection.
    """

    INLAND_WATERS = "inlandWaters"
    """
    Inland water features, drainage systems and their characteristics.

    EXAMPLES: Rivers and glaciers, salt lakes, water utilization plans, dams,
    currents, floods, water quality, hydrologic information.
    """

    LOCATION = "location"
    """
    Positional information and services.

    EXAMPLES: Addresses, geodetic networks, control points, postal zones and
    services, place names.
    """

    OCEANS = "oceans"
    """
    Features and characteristics of salt water bodies (excluding inland waters).

    EXAMPLES: Tides, tsunamis, coastal information, reefs.
    """

    PLANNING_CADASTRE = "planningCadastre"
    """
    Information used for appropriate actions for future use of the land.

    EXAMPLES: Land use maps, zoning maps, cadastral surveys, land ownership.
    """

    SOCIETY = "society"
    """
    Characteristics of society and cultures.

    EXAMPLES: Settlements, anthropology, archaeology, education,
    traditional beliefs, manners and customs, demographic data,
    recreational areas and activities, social impact assessments,
    crime and justice, census information.
    """

    STRUCTURE = "structure"
    """
    Man-made construction.

    EXAMPLES: Buildings, museums, churches, factories, housing, monuments,
    shops, towers.
    """

    TRANSPORTATION = "transportation"
    """
    Means and aids for conveying persons and/or goods.

    EXAMPLES: Roads, airports/airstrips, shipping routes, tunnels,
    nautical charts, vehicle or vessel location, aeronautical charts,
    railways.
    """

    UTILITIES_COMMUNICATION = "utilitiesCommunication"
    """
    Energy, water and waste systems and communications infrastructure
    and services.

    EXAMPLES: Hydroelectricity, geothermal, solar and nuclear sources
    of energy, water purification and distribution, sewage collection and
    disposal, electricity and gas distribution, data communication,
    telecommunication, radio, communication networks.
    """

    EXTRA_TERRESTRIAL = "extraTerrestrial"
    """Region more than 100 km above the surface of the Earth."""

    DISASTER = "disaster"
    """
    Information related to disasters.

    EXAMPLES: Site of the disaster, evacuation zone,
    disaster-prevention facility, disaster relief activities.
    """

BIOTA = 'biota' class-attribute instance-attribute

Flora and/or fauna in natural environment.

EXAMPLES: Wildlife, vegetation, biological sciences, ecology, wilderness, sealife, wetlands, habitat.

BOUNDARIES = 'boundaries' class-attribute instance-attribute

Legal land descriptions, maritime boundaries.

EXAMPLES: Political and administrative boundaries, territorial seas, EEZ, port security zones.

CLIMATOLOGY_METEOROLOGY_ATMOSPHERE = 'climatologyMeteorologyAtmosphere' class-attribute instance-attribute

Processes and phenomena of the atmosphere.

EXAMPLES: Cloud cover, weather, climate, atmospheric conditions, climate change, precipitation.

DISASTER = 'disaster' class-attribute instance-attribute

Information related to disasters.

EXAMPLES: Site of the disaster, evacuation zone, disaster-prevention facility, disaster relief activities.

ECONOMY = 'economy' class-attribute instance-attribute

Economic activities, conditions and employment.

EXAMPLES: Production, labour, revenue, commerce, industry, tourism and ecotourism, forestry, fisheries, commercial or subsistence hunting, exploration and exploitation of resources such as minerals, oil and gas.

ELEVATION = 'elevation' class-attribute instance-attribute

Height above or below a vertical datum.

EXAMPLES: Altitude, bathymetry, digital elevation models, slope, derived products.

ENVIRONMENT = 'environment' class-attribute instance-attribute

Environmental resources, protection and conservation.

EXAMPLES: Environmental pollution, waste storage and treatment, environmental impact assessment, monitoring environmental risk, nature reserves, landscape.

EXTRA_TERRESTRIAL = 'extraTerrestrial' class-attribute instance-attribute

Region more than 100 km above the surface of the Earth.

FARMING = 'farming' class-attribute instance-attribute

Rearing of animals and/or cultivation of plants.

EXAMPLES: Agriculture, irrigation, aquaculture, plantations, herding, pests and diseases affecting crops and livestock.

GEOSCIENTIFIC_INFORMATION = 'geoscientificInformation' class-attribute instance-attribute

Information pertaining to earth sciences.

EXAMPLES: Geophysical features and processes, geology, minerals, sciences dealing with the composition, structure and origin of the Earth's rocks, risks of earthquakes, volcanic activity, landslides, gravity information, soils, permafrost, hydrogeology, erosion.

HEALTH = 'health' class-attribute instance-attribute

Health, health services, human ecology, and safety.

EXAMPLES: Disease and illness, factors affecting health, hygiene, substance abuse, mental and physical health, health services.

IMAGERY_BASE_MAPS_EARTH_COVER = 'imageryBaseMapsEarthCover' class-attribute instance-attribute

Base maps.

EXAMPLES: Land cover, topographic maps, imagery, unclassified images, annotations.

INLAND_WATERS = 'inlandWaters' class-attribute instance-attribute

Inland water features, drainage systems and their characteristics.

EXAMPLES: Rivers and glaciers, salt lakes, water utilization plans, dams, currents, floods, water quality, hydrologic information.

INTELLIGENCE_MILITARY = 'intelligenceMilitary' class-attribute instance-attribute

Military bases, structures, activities.

EXAMPLES: Barracks, training grounds, military transportation, information collection.

LOCATION = 'location' class-attribute instance-attribute

Positional information and services.

EXAMPLES: Addresses, geodetic networks, control points, postal zones and services, place names.

OCEANS = 'oceans' class-attribute instance-attribute

Features and characteristics of salt water bodies (excluding inland waters).

EXAMPLES: Tides, tsunamis, coastal information, reefs.

PLANNING_CADASTRE = 'planningCadastre' class-attribute instance-attribute

Information used for appropriate actions for future use of the land.

EXAMPLES: Land use maps, zoning maps, cadastral surveys, land ownership.

SOCIETY = 'society' class-attribute instance-attribute

Characteristics of society and cultures.

EXAMPLES: Settlements, anthropology, archaeology, education, traditional beliefs, manners and customs, demographic data, recreational areas and activities, social impact assessments, crime and justice, census information.

STRUCTURE = 'structure' class-attribute instance-attribute

Man-made construction.

EXAMPLES: Buildings, museums, churches, factories, housing, monuments, shops, towers.

TRANSPORTATION = 'transportation' class-attribute instance-attribute

Means and aids for conveying persons and/or goods.

EXAMPLES: Roads, airports/airstrips, shipping routes, tunnels, nautical charts, vehicle or vessel location, aeronautical charts, railways.

UTILITIES_COMMUNICATION = 'utilitiesCommunication' class-attribute instance-attribute

Energy, water and waste systems and communications infrastructure and services.

EXAMPLES: Hydroelectricity, geothermal, solar and nuclear sources of energy, water purification and distribution, sewage collection and disposal, electricity and gas distribution, data communication, telecommunication, radio, communication networks.

Usage

Bases: ABC

Brief description of ways in which the resource(s) is/are currently or has been used.

Source code in opengis/metadata/identification.py
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
class Usage(ABC):
    """
    Brief description of ways in which the resource(s) is/are currently or has
    been used.
    """

    @property
    @abstractmethod
    def specific_usage(self) -> str:
        """Brief description of the resource and/or resource series usage."""

    @property
    @abstractmethod
    def usage_date_time(self) -> Optional[Sequence[datetime]]:
        """
        Date and time of the first use or range of uses of the resource and/or
        resource series.
        """

    @property
    @abstractmethod
    def user_determined_limitations(self) -> str:
        """
        Applications, determined by the user for which the resource and/or
        resource series is not suitable.
        """

    @property
    @abstractmethod
    def user_contact_info(self) -> Optional[Sequence[Responsibility]]:
        """
        Identification of and means of communicating with person(s) and
        organisation(s) using the resource(s).
        """

    @property
    @abstractmethod
    def response(self) -> Optional[Sequence[str]]:
        """
        Response to the user-determined limitations, e.g., 'This has been fixed
        in version x.'
        """

    @property
    @abstractmethod
    def additional_documentation(self) -> Optional[Sequence[Citation]]:
        """Publications that describe usage of data."""

    @property
    @abstractmethod
    def identified_issues(self) -> Optional[Sequence[Citation]]:
        """
        Citation of a description of known issues associated with the resource
        along with proposed solutions if available.
        """

additional_documentation: Optional[Sequence[Citation]] abstractmethod property

Publications that describe usage of data.

identified_issues: Optional[Sequence[Citation]] abstractmethod property

Citation of a description of known issues associated with the resource along with proposed solutions if available.

response: Optional[Sequence[str]] abstractmethod property

Response to the user-determined limitations, e.g., 'This has been fixed in version x.'

specific_usage: str abstractmethod property

Brief description of the resource and/or resource series usage.

usage_date_time: Optional[Sequence[datetime]] abstractmethod property

Date and time of the first use or range of uses of the resource and/or resource series.

user_contact_info: Optional[Sequence[Responsibility]] abstractmethod property

Identification of and means of communicating with person(s) and organisation(s) using the resource(s).

user_determined_limitations: str abstractmethod property

Applications, determined by the user for which the resource and/or resource series is not suitable.