This topic describes the manner in which ArcGIS Desktop supports the ISO TC 211 standards associated with geospatial metadata. Whether you are new to metadata, new to ISO metadata standards, or experienced with ISO metadata, this topic will help you understand how ArcGIS Desktop produces valid ISO metadata XML documents.
ISO metadata standards
ISO metadata is not a single standard. It is a constellation of standards, each covering different aspects of metadata content and the manner in which that information is stored. Before discussing the level of support provided in ArcGIS Desktop for these standards, it is essential to be clear about the names and numbers of the different standards and the aspect of an item's metadata they control.
Content standards
Some ISO standards are content standards in the same manner that the FGDC's Content Standard for Digital Geospatial Metadata (CSDGM) is a content standard. A content standard determines what information should be provided in an item's metadata. They indicate, for example, that you can provide a title and date, if the title or date are mandatory, and if conditions will change what content is required. Content standards may also be referred to as definitional standards.
Geospatial metadata standards cover many concepts. Experts in specific areas work together to define a way to articulate those concepts. The result is that many ISO metadata standards are created that support the work of other groups. The two most important supporting standards are listed below, but several others provide the framework for describing spatial data and its temporal properties. All ISO metadata standards are developed and maintained independently.
- ISO
19110:2005 Geographic Information -- Methodology for
feature cataloguing and ISO 19110:2011 Amendment 1
Defines a way of classifying geographic feature types. Information about a feature's type, its attributes, and its associations is collected into a feature catalogue and recorded as a dataset or a textual document. This information is essential to understanding and using the feature data.
- ISO
19157:2013 Geographic Information -- Data quality
Defines general procedures for evaluating the quality of geospatial data and communicating the result. For example, one way to assess quality is based on a data product specification. This revised standard supercedes the set of prior data quality standards that contributed to ISO 19115:2003, which are listed as follows:
- ISO 19113:2002 Geographic Information -- Quality principles
- ISO 19114:2003 Geographic Information -- Quality evaluation procedures
- ISO 19138:2006 Geographic Information -- Data quality measures
The primary ISO metadata standards are listed as follows:
- ISO
19115:2003 Geographic Information -- Metadata and
ISO 19115:2006 Technical Corrigendum 1
Provides a structure for describing and discovering geospatial data, including when and where it's located, an overview of its content, its properties, quality, appropriate uses, distribution mechanism, points of contact for information, and so on. It can be used to describe all types of geospatial resources including textual documents and non-geographic information. This standard includes the content defined in the data quality standards ISO 19113:2002, ISO 19114:2003, and ISO 19138:2006. This standard is only capable of referencing an external ISO 19110:2005 document that describes feature attributes. This standard is superceded by ISO 19115-1:2014.
- ISO
19119:2005 Geographic Information -- Services and
ISO 19119:2008 Amendment 1
Provides a means of describing services to support discovery when the information is made available to a catalog. Also defines concepts to specify the relationships between services, their interfaces and operations, and how they can be combined to achieve larger tasks. The metadata content portion of this standard is superceded by ISO 19115-1:2014.
- ISO
19115-2:2009 Geographic Information -- Metadata --
Part 2: Extensions for imagery and gridded data
Extends ISO 19115:2003 by adding concepts needed to describe the sensors used to collect geospatial data, and the data they collect, including the means for transforming the raw data.
- ISO
19115-1:2014 Geographic Information -- Metadata --
Part 1: Fundamentals
A revision of ISO 19115:2003 that includes metadata concepts for describing services as defined in ISO 19119:2005. Some new elements were added and many codelists were extended; the new codelist values include those defined in the North American Profile of ISO 19115:2003.
Concepts for describing data quality have moved to ISO 19157:2013; however, this standard supports including those concepts in an ISO 19115-1 metadata document. This standard also supports including the feature catalog concepts defined in ISO 19110 in an ISO 19115-1 metadata document. ISO 19115-1:2014 is backwards-compatible with ISO 19115:2003. Metadata created with the earlier version of the standard can remains as-is, and new metadata can be created with the updated specification.
Implementation specifications
The format in which metadata content is exchanged is determined by an implementation specification. This can also be referred to as an encoding standard or a serialization format.
Each ISO metadata content standard is associated with an implementation specification—a document and a set of XML Schemas that describe the XML format of the content. XML is the only supported format. Some implementation specifications are published as separate standards with their own number; others are provided as an appendix to the content standard and share the same number.
The content standards described above are associated with the following implementation specifications as illustrated in the diagrams below:
- ISO 19136:2007 Geographic Information -- Geography Markup Language (GML)
Defines how concepts associated with many supporting ISO metadata content standards, including those listed below, are specified in XML format. As the framework for describing basic geospatial concepts, this standard is leveraged by most other implementation specifications.
- ISO 19103:2005 Geographic Information -- Conceptual Schema Language: Defines units of measure and basic data types
- ISO 19107:2003 Geographic Information -- Spatial schema: Defines spatial geometry and topology content
- ISO 19108:2002 Geographic Information -- Temporal schema: Defines temporal geometry, topology, and reference systems
- ISO 19109:2005 Geographic Information -- Rules for application schema: Defines how features are specified
- ISO 19111:2007 Geographic Information -- Spatial referencing by coordinates: Defines how to document coordinate reference systems
- ISO 19123:2005 Geographic Information -- Schema for coverage geometry and functions: Defines how to document raster data
- ISO 19139:2007 Geographic Information -- Metadata -- XML Schema implementation
Amends some of the content and defines the XML format for ISO 19115:2003 and 19115:2006 Technical Corrigendum 1. This standard also defines general rules for creating XML Schemas from the UML diagrams provided by content standards. The portion of this standard that provides the implementation specification for ISO 19115:2003 will be superceded by ISO 19115-3.
- OpenGIS Catalogue Service
Implementation Specification
Defines the XML format for ISO 19119:2008 Amendment 1. While ISO 19119 is an ISO metadata content standard and XML Schema to implement that standard were developed, the schemas were only published as part of the OGC Catalogue Service for the Web (CSW) specification. They were not published through any of the ISO XML Schema repositories. Because ISO 19115-1:2014 includes content defined by ISO 19119:2008, the portion of this standard that provides the implementation specification for ISO 19119 will be superceded by ISO 19115-3.
- ISO 19139-2:2012 Geographic Information -- Metadata -- XML Schema implementation -- Part 2: Extensions for imagery and gridded data
Defines the XML format for ISO 19115-2:2009. The XML Schemas it provides were created from the ISO 19115-2 UML models using the encoding rules defined in ISO 19139. While this specification requires the use of data type definitions provided by ISO 19139:2007, a metadata document based on ISO 19139-2 is not compatible with an ISO 19139 metadata document.
- ISO 19110:2011 Geographic Information -- Methodology for feature cataloguing Amendment 1, Annex E
Defines the XML format for ISO 19110:2005. When ISO 19110 was revised, the XML Schemas were included as an appendix to the original standard. While some content defined by ISO 19110:2005 is formatted based on the ISO 19139:2007 and ISO 19136:2007 specifications, this does not mean the ISO 19119:2005 content can be directly included in an ISO 19139:2007 XML document.
Because these standards are created and revised independently, problems occur when the primary metadata implementation specifications include the specifications for supporting standards. If information in a supporting standard is directly included in another standard, a revision made to the supporting standard doesn't automatically update the other standard—the other standard must be revised independently to include the same changes, but this change will happen on a separate time line. For example, metadata created according to ISO 19139:2007 will always represent data quality information in the manner described by ISO 19115:2003 when the data quality information model is revised in a new version of the data quality standards and specifications.
If one implementation specification leverages the data types defined in another implementation specification, this is a one-way flow of information. For example, ISO 19115-2:2009 extends ISO 19115:2003. However, the implementation specification for ISO 19139-2:2012 incorporates the data types from ISO 19139:2007 in a manner that makes documents associated with the two different XML formats incompatible with each other.
When developing recent implementation specifications, efforts have been made to make them more compatible with each other and limit the disruption when standards and specifications are revised in the future.
Relationship between CSDGM and ISO content standards
If you are new to ISO metadata standards, but familiar with the FGDC CSDGM standard, here is how the above ISO metadata content standards relate to the different sections of the CSDGM. Most of the content defined in the CSDGM directly corresponds with the content defined in the ISO 19115:2003 standard, though the CSDGM Entity and Attribute section corresponds with the ISO 19110:2005 standard.
The North American Profile of ISO 19115:2003 is a regional profile that modifies ISO 19115:2003. One of its roles is to add values to ISO 19115:2003 codelists that correspond with element values defined in the CSDGM. The CSDGM is based on typing content into a textual document, and suggests standardized values in some elements such as audio when describing a resource's format—possibly for a recording of wildlife sounds. ISO 19115:2003 incorporates the idea of controlled vocabularies, where a value must be selected from a predefined codelist. The ISO metadata codelist for describing an item's format doesn't have a value for audio resources. The North American Profile adds values to various ISO codelists to ease the transition between the two content standards, including adding values to the format codelist for audio resources.
The content adjustments defined in the North American Profile were typically incorporated when the standard was revised as ISO 19115-1:2014. As a result, the CSDGM corresponds better with ISO 19115-1:2014.
For FGDC CSDGM metadata, the metadata parser utility, mp, defines the implementation specifications for the standard. Three serialization formats are accepted as inputs to the mp utility: XML, SGML, and structured text. These three formats are also produced as output by the utility along with two different HTML formats.
If you consider only the XML format for CSDGM metadata, there are three separate specifications. In addition to the mp utility, an XML DTD and an XML Schema are available on the website. While generally the same, there are subtle differences between each specification.
Each ISO metadata content standard is associated with only one implementation specification and one serialization format.
What's next for ISO metadata standards
ISO metadata standards are revised periodically to ensure they remain viable. When revisions are completed for a content standard, its associated implementation specification must be updated accordingly. The following metadata content standards and implementation specifications are currently being revised or developed:
- ISO 19115-3 Geographic Information -- Metadata -- Part 3: XML Schema implementation of metadata fundamentals
Will define the XML format for ISO 19115-1:2014. ISO 19115-3 will not provide the specification for the content standards that support ISO 19115-1:2014. Instead, ISO 19115-3 provides a means to include content formatted according to other implementation specifications as appropriate. In this way, an item's metadata can include data quality information and feature catalog information even though the specifications for those concepts are provided separately. The supporting content standards can be revised independently without affecting ISO 19115-3. Basic geospatial concepts are serialized based on the data types defined in ISO 19136:2007.
This standard will supercede the portion of ISO 19139:2007 that provides the implementation specification for ISO 19115:2003, as well as the portion of the OGC CSW specification that provides the implementation specification for ISO 19119:2005. This specification will be finalized soon.
- ISO 19157-2 Geographic Information -- Data quality -- Part 2: XML Schema Implementation
Will define the XML format for ISO 19157:2013. Some concepts in ISO 19157:2013 are described based on the concepts provided in ISO 19115-1:2003, for example, how points of contact are defined and how resources are cited. The implementation specification for these data types will be provided in ISO 19115-3.
- ISO 19139-1 Geographic Information -- Metadata -- XML Schema implementation
ISO 19139:2007 will be revised such that it only defines the rules for generating XML schemas from the UML models provided by metadata content standards.
-
ISO 19110 Geographic Information -- Methodology for feature cataloguing
The existing feature cataloging standard is under review as part of normal maintenance. Once the content standard has been revised, the implementation specification must also be updated. Because they are both provided in the same document, they may be updated at the same time, or the implementation specification may be moved to a separate document under a different number.
- ISO
19115-2 Geographic Information -- Metadata --
Part 2: Extensions for imagery and gridded data
This standard is under revision as part of normal maintenance. It will be updated, along with its implementation specification, in accordance with ISO 19115-1:2014 and ISO 19115-3.
Standards supported by ArcGIS Desktop
The metadata created and exported when you use the ISO 19139 Metadata Implementation Specification metadata style in ArcGIS Desktop is valid according to the content standard ISO 19115:2003 with the 2006 Technical Corrigendum and the implementation specification ISO 19139:2007.
When you use the INSPIRE Metadata Directive metadata style or the North American Profile of ISO19115 2003 metadata style in ArcGIS Desktop, the metadata created is valid according to the content standard ISO 19115:2003 with the 2006 Technical Corrigendum. For the INSPIRE style, the metadata content is also valid according to the European community's INSPIRE Metadata Implementing Rules: Technical Guidelines based on EN ISO 19115 and EN ISO 19119 v1.2. For the North American Profile style, the metadata content is also valid according to the North American Profile of ISO 19115:2003 - Geographic information - Metadata (NAP - Metadata, version 1.2).
When you use the INSPIRE Metadata Directive metadata style or the North American Profile of ISO19115 2003 metadata style and metadata describing data is exported, the resulting XML file is valid according to the implementation specification ISO 19139:2007. When metadata describing a service is exported, it is valid according to the implementation specification OGC Catalogue Service for the Web (CSW); this specification includes XML schemas that can validate an ISO 19139 metadata document that includes service metadata descriptions.
The practice used by ArcGIS Desktop to store metadata content in the internal ArcGIS metadata format and export that content to the appropriate XML format for the current ArcGIS metadata style is a flexible one that can readily adapt as new metadata standards become available. As the metadata content standards change, new metadata elements and pages for editing can be added to the ArcGIS metadata editor to collect more content. New metadata styles can leverage the new pages and use new XSLT transformations to produce XML files that satisfy the new implementation specifications.
Esri personnel have participated in revisions to the ISO metadata standards described above and are closely monitoring changes to them. When a new metadata style is available, you can set ArcGIS Desktop to use this new style; your existing ArcGIS metadata content remains the same.
Validating ISO metadata documents
Unfortunately, the mere existence of an implementation specification as a standard does not mean it is straightforward to validate XML documents that correspond to those specifications. This section examines some of the anatomy of an XML document, how to validate an XML file, how the XML Schemas are published, and what it means to validate ISO metadata XML documents.
XML introduction
Extensible markup language (XML) was designed to be a flexible mechanism for storing and transporting data. In contrast, HTML was designed to display data. Neither XML nor HTML do anything. XML merely wraps data in tags. HTML wraps data in a set of predefined tags that browsers know how to display. An extensible stylesheet language transformations (XSLT) stylesheet provides instructions for transforming the data in an XML document into something else such as an HTML document that can be displayed by a browser.
All XML documents must follow a basic set of rules—they must be well-formed. A well-formed XML document has correct XML syntax. For example, an XML document must have a root element, tags must be closed and properly nested, and attribute values must be quoted.
An XML document can optionally be valid. A valid XML document is a well-formed XML document that also conforms to the rules of a schema. A schema defines the structure of an XML document. For example, it can specify which elements are permitted to exist in the document, which elements can contain which other elements, which elements contain what type of data, which elements are mandatory, and the order in which elements must appear. An XML schema may be an XML Document Type Definition (DTD) or an XML Schema (XSD). An ISO metadata implementation specification provides a set of XML Schema (XSD) documents.
Some characters have special meaning in an XML document. For example, the greater-than (>) and less-than (<) characters are used to place tags around some text and create an XML element. If an element's text includes the plain greater-than character, this causes an error because this is interpreted as the start of a new XML element's tag. The presence of an ampersand (&) in an element's text also causes an error because the ampersand is used to denote special character references. All of the special characters described here, including the apostrophe (') and quotation mark ("), should be replaced by the appropriate entity reference: > for greater-than, < for less-than, & for an ampersand, ' for an apostrophe, and " for a quotation mark. Note that many entity references supported in HTML documents are not supported in XML documents.
An XML document may have an XML declaration in the first line that defines the version of XML and the encoding used in the document. If a declaration is not present, the default XML version is 1.0. If an encoding isn't specified, it is assumed to be UTF-8 or UTF-16 as determined by the XML document's byte order mark. The ArcGIS Desktop metadata editor and the metadata geoprocessing tools always produce a UTF-8-encoded XML document.
To learn more about XML and the syntax of an XML document, see https://www.w3schools.com/xml.
XML namespaces
Two XML Schemas can define elements with the same name but a different meaning. XML namespaces are used to avoid element naming conflicts when elements from different XML Schemas appear in the same XML document, where a different namespace is associated with each XML Schema.
A namespace is a prefix to an XML element's name, separated from the name by a colon such as <prefix:name>. A namespace is defined by providing an xmlns attribute and associating a uniform resource identifier (URI) with a string that will be used as the prefix such as xmlns:prefix=URI. Namespaces must be declared in the opening tag of an XML element where the prefix will be used. However, all namespaces used in a document are typically declared in the opening tag for the root element of the document. In the following example, two namespaces, a and b, are defined to distinguish between internal and external information:
<a:order xmlns:a="http://store.com/inventory" xmlns:b="http://store.com/customers">
<a:name>patio table</a:name>
<a:cost>650.00</a:cost>
<a:email>shipping@store.com</a:email>
<b:name>Jane Smith</b:name>
<b:email>customer@gmail.com</b:email>
</a:order>
A namespace's URI is not expected to be a valid Internet location. Even if a URI looks like a uniform resource locator (URL), its only purpose is to identify a set of XML element names.
If there is one namespace that is used more than other namespaces, you can specify a default namespace for an XML document such as xmlns=URI. Specifying a default saves you from having to provide the same prefix for all elements associated with that namespace. Any XML element in the document that does not have a prefix is a member of the default namespace. The previous example is repeated below, but this time with the URI for namespace "a" assigned as the default namespace:
<order xmlns="http://store.com/inventory" xmlns:b="http://store.com/customers">
<name>patio table</name>
<cost>650.00</cost>
<email>shipping@store.com</email>
<b:name>Jane Smith</b:name>
<b:email>customer@gmail.com</b:email>
</order>
In both examples, the XML element cost is associated with the namespace URI http://store.com/inventory. If you have an XSLT stylesheet that transforms orders specified in this format into a document that can be printed, the same XSLT would process both of the above examples in the same manner and produce the same result. If the XML Schemas that define both sets of elements are identified, the above XML document examples could be validated—both of the above examples would be considered valid.
In the ISO metadata implementation specifications, each set of XML Schemas is associated with a three-letter string and a specific namespace URI. By convention, the three-letter string is always used as the prefix for XML elements defined in the associated XML Schemas. For example, most of the metadata elements defined in ISO 19115 are associated with the namespace URI http://www.isotc211.org/2005/gmd, as specified in the ISO 19139 document; these elements would use the prefix gmd if a default namespace is not specified in an XML document for this URI.
ISO metadata implementation specifications provide many XML Schemas and, therefore, define many namespaces and prefixes that could be used in an XML document. It is only necessary to include namespace and prefix declarations for elements that actually appear in an XML document.
Validating an XML document
An XML document must be well-formed. An XML document can optionally be valid. A valid XML document is a well-formed XML document that also conforms to the rules of a schema. A schema reference must be added to an XML document to validate it.
A reference to an XML DTD can be added following the XML declaration as illustrated below:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE order SYSTEM "http://store.com/order-format.dtd">
<order xmlns="http://store.com/inventory" xmlns:b="http://store.com/customers">
…
</order>
The XML document's root element is declared, followed by the location where the DTD is stored.
An XML Schema reference is added using attributes in the opening tag for the root element of the document, as illustrated below:
<?xml version="1.0" encoding="UTF-8"?>
<order xmlns="http://store.com/inventory" xmlns:b="http://store.com/customers"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://store.com/order-format.xsd">
…
</order>
First, the XMLSchema-instance namespace is declared. Then, the schemaLocation attribute specifies where the XML Schema is stored.
Various software tools are required to process XML documents. An XSLT engine or processor is required to perform the transformation defined in an XSLT stylesheet. An XML parser is used to add, delete, read elements and attributes and their values, and perform various other operations on the structure of an XML document. A non-validating XML parser can check to make sure an XML document is well-formed. In addition to the other operations, a validating XML parser can also use a referenced XML schema to determine if the XML document is valid according to the rules specified in that schema.
Once an XML schema reference has been included in an XML document, a validating XML parser can check to see if the document is valid.
XML Schemas can be written to account for the majority of the rules defined in metadata content standards. However, they are not capable of assessing all of the rules defined in the ISO metadata content standard UML models. For example, with an XML Schema, an element's value can't be controlled by a sibling element's value.
Schematron is a rule-based language that can be used to assess an XML document using XPath queries and present plain-language errors if problems are found. Schematron can be used to complement XML schema validation to determine if rules defined in a content standard, but cannot be assessed by the schema, have been followed in an XML document. Because Schematrons are XML documents, they are typically transformed into an XSLT transformation; the resulting XSLT can then be used to validate an XML document using an XSLT processor. ISO 19115-3 will provide Schematrons and XML Schemas for validation.
ArcGIS Desktop uses the Microsoft .NET Framework XML parser and XSLT processor to handle metadata. This technology exclusively supports XSLT 1.0. Therefore, only XSLT stylesheets based on XSLT 1.0 can be run using ArcGIS Desktopsoftware. Schematrons created based on XSLT 2.0 cannot be transformed into an XSLT stylesheet that will run in ArcGIS Desktop.
Validating metadata using ArcGIS Desktop
The ArcGIS Desktop metadata editor validates metadata internally by testing the metadata content managed by a specific page. The tests are based on the rules specified by the content standard and implementation specification associated with the current ArcGIS metadata style. All of the content standard's rules are accounted for, even the rules beyond those that can be tested in the implementation specification's XML Schema. The metadata editor's table of contents quickly illustrates which pages have content that would be considered invalid for the metadata style.
It takes time to author good metadata content. The ArcGIS metadata editor allows you to save your content as is and come back later to finish it, even if your metadata is considered invalid at the time you need to stop working on it.
ArcGIS Desktop supports a wide range of customers with different requirements. Most organizations prefer to create metadata following a community standard. However, some organizations have different internal requirements. and their metadata documents would be considered invalid according to a metadata standard's XML schema. ArcGIS allows these organizations to produce metadata according to their own requirements. As a result, when an item's metadata content is exported to a standard's XML format, the XML file produced will not include an XML schema reference.
When an item's metadata content is complete, you can optionally test to see if it is valid according to the XML schema for the metadata standard associated with the metadata style. This can be accomplished using the Validate button on the Description tab, which runs the Validate Metadata geoprocessing tool. The tool parameters are set appropriately for the current metadata style when its dialog box opens. The settings associated with the ISO 19139 metadata style are illustrated in the following screen capture:
This tool first exports the item's ArcGIS metadata content to a metadata standard's XML format—in this example, the ISO 19139 XML format. Then an XML schema reference is inserted into the exported XML document based on the information provided in the tool's parameters. The following example shows how the xsi:schemaLocation attribute is produced based on the information provided in the previous example:
<?xml version="1.0" encoding="UTF-8"?>
<MD_Metadata xmlns="http://www.isotc211.org/2005/gmd"
xmlns:gco="http://www.isotc211.org/2005/gco"
xmlns:gts="http://www.isotc211.org/2005/gts"
xmlns:srv="http://www.isotc211.org/2005/srv"
xmlns:gml="http://www.opengis.net/gml"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.isotc211.org/2005/gmd
http://www.isotc211.org/schemas/2005/metadataEntity.xsd">
…
</MD_Metadata>
If appropriate, the target namespace must be declared in the xsi:schemaLocation attribute to correspond with the XML Schema's target namespace. The target namespace indicates which elements in the XML document conform to the specified XML Schema and will be validated. Other XML Schemas, such as the FGDC CSDGM schemas, may not require a target namespace to be specified.
Finally, the exported XML file with the xsi:schemaLocation attribute is validated using the .NET Framework XML parser. Any warning or error messages provided by the .NET Framework are reported in the tool's messages. ArcGIS Desktop reports the error messages exactly as they are produced.
ISO metadata XML Schema repositories
There are many official locations or repositories where different ISO metadata implementation specification XML schemas have been published. All specifications have not been published in all places. This makes it difficult to determine which schemas should be used to validate an XML document that is said to comply with a specific standard. This dilemma is described in the INSPIRE Metadata Implementing Rules v1.2 document in section 2.1.2, "ISO Schemas Location".
During the time line over which different implementation specifications have been developed, GML has evolved from an OGC standard to an ISO standard. GML content is only used in ISO metadata XML documents to record times and geometric shapes as needed. The older version of GML was originally used in ISO metadata XML Schemas, and one namespace was used in the GML and ISO metadata XML Schemas for this version. The newer version of GML has a different namespace.
While the changes to the GML standard make little or no difference in the metadata XML documents produced according to ISO metadata content standards, the change to the GML namespace complicates the manner in which these XML documents are validated. An XML Schema specifies the target namespaces that will be validated. If an XML document uses namespace G1 and an XML Schema targets namespace G1 for validation, the document will validate if its content and structure are correct. If the XML document uses namespace G1 and an XML Schema targets namespace G2, the document will not validate even if the content and structure of the document are correct. Typically, if the XML document's namespace is altered from G1 to G2, the document will then validate successfully as long as it uses content that is the same in both G1 and G2.
The different ISO metadata XML Schemas published in different locations all reference different versions of the GML XML Schemas and, therefore, target different GML namespaces. When considering which XML Schemas to use for validation, an important factor is which GML namespace that XML Schema targets. The following is a list of the different repositories where ISO metadata XML Schemas can be found; the GML namespace they use is also indicated.
- https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_19139_Schemas/
This is the schema location provided in the ISO 19139:2007 standard document as the official set of XML Schemas. These schemas were updated to use the new GML 3.2.1 namespace: http://www.opengis.net/gml/3.2. They refer directly to the ISO 19136 version of the GML 3.2.1 schemas available from this same ISO schema repository at https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_19136_Schemas/.
This location does not include XML Schemas for other published ISO metadata standards such as ISO 19119, ISO 19110, or ISO 19139-2. The only other TC 211 XML Schemas published to this location are for ISO 19135-2 Geographic information - Procedures for item registration -- Part 2 XML schema implementation. Only geospatial metadata XML documents based on ISO 19115:2003 that use the new GML namespace can be validated with these XML Schemas.
https://standards.iso.org/ittf/PubliclyAvailableStandards/is an official ISO repository for publicly available standards. While the ISO 19135-2, ISO 19136, and ISO 19139 XML Schemas continue to be available at this location, they no longer appear in the list of standards provided by this repository.
- http://schemas.opengis.net/iso/19139/20070417/
This is one of the locations where the ISO 19139 schemas are available from the official OGC Schema repository. These were updated to use the new GML 3.2.1 namespace. These are the same XML Schemas that are published to repository #1; however, they refer directly to the GML 3.2.1 schemas available from this same OGC schema repository instead of those available from repository #1.
This location does not include XML schemas for any other published ISO metadata standards such as ISO 19119, ISO 19110, or ISO 19139-2. Therefore, only an XML document that includes ISO 19115 metadata content and uses the new GML namespace can be validated with these XML Schemas.
- http://schemas.opengis.net/iso/19139/20060504/
This is another location where the ISO 19139 schemas are available from the official OGC Schema repository. These schemas use the older GML 3.2.0 namespace: http://www.opengis.net/gml. These are the same XML Schemas published to repositories #4 and #5. These schemas reference a copy of the older GML XML Schemas that are provided in this same location.
This location also includes XML Schemas for ISO 19119. Therefore, XML documents containing ISO 19115 and ISO 19119 metadata content that use the older GML namespace can be validated with these XML Schemas.
- https://www.isotc211.org/2005/
This is the original location where the ISO 19139 XML Schemas were published before they were available from the official ISO repository described in #1. The HTML page provided at this location has links to ISO metadata XML Schemas that take you to repository #5 even though the XML Schemas are available in this same location.
While you do not see a directory of XML schemas at this location, the original XML schemas provided here remain available if you provide the full path to the XML Schema files. These schemas use the older GML 3.2.0 namespace. These are the same ISO 19139 schemas published to repositories #3 and #5. These schemas reference a copy of the older GML XML Schemas provided in this same location.
This location does not include XML schemas for any other published ISO metadata standards such as ISO 19119, ISO 19110, or ISO 19139-2. Therefore, only an XML document that includes ISO 19115 metadata content and uses the older GML namespace can be validated with these XML Schemas.
- http://www.isotc211.org/2005/
This is another location where the ISO metadata XML Schemas are available from the TC 211 committees. While repository #1 is the official repository, the HTML page available from the URL associated with repository #4 directs people to this location, instead.
The ISO 19139 XML Schemas were published in this location when it was thought to be a good idea to make the schemas available at the URL associated with the namespace URIs. The ISO 19139 XML schemas available here use the older GML 3.2.0 namespace. These are the same ISO 19139 schemas published to repositories #3 and #4. These schemas reference a copy of the older GML XML Schemas that are provided in this same location.
This location was used as a repository for XML Schemas that were works in progress for various implementation specifications. Consequently, it provides XML Schemas for other ISO metadata standards, including: two different versions of the ISO 19110 XML Schemas, and XML schemas for ISO 19135-2, ISO 19139-2, and ISO 19145 Geographic information -- Registry of representations of geographic point location. XML Schemas to support ISO 19119 are not provided.
Some of the XML Schemas in this location, such as ISO 19110, use the older GML namespace and reference the GML schemas in this location. Others, such as ISO 19139-2, reference the version of the ISO 19139 XML Schemas published in repository #1 and use the newer GML 3.2.1 namespace instead.
- https://github.com/ISO-TC211/XML
This is the new repository for XML Schemas that are works in progress for different TC 211 implementation specifications.
- https://standards.iso.org/iso
This is a new official ISO repository for publicly available standards. Several TC 211 implementation specifications are available in this location, including ISO 19110, ISO 19136, and ISO 19139; XML Schemas for ISO 19119 are not available. However, at this time, there are technical difficulties that prevent using at least some of the ISO 19139 XML Schemas, and possibly others as well.
Given the wide variety of choice, it is far from clear which official set of XML schemas should be used to validate metadata.
Many international ISO metadata profiles associate their content with different repositories listed above. The only real difference between them is the version of the GML namespace they use. The actual content of the schemas are identical in every other respect. The INSPIRE document suggests that you should validate your metadata using the set of schemas based on the specific version of GML appropriate for your situation. This holistic approach to metadata validation makes a lot of sense.
A TC 211 XML Management Committee has been trying to resolve the consistency problems with the different XML schema repositories outlined above. Hopefully, the new repository, #7, will successfully provide a consistent set of official XML Schemas for all ISO TC 211 standards in the future.
XML Schemas and ArcGIS Desktop
The ArcGIS Desktop metadata system was designed to validate metadata using official schemas hosted on the web by standards organizations, because those are the official schemas. Schemas are not packaged into and distributed with the software because they would not be the official schemas.
When the ISO 19139 Metadata Implementation Specification metadata style is used, ArcGIS Desktop uses the XML Schemas from repository #4 to validate ISO 19139 metadata documents. This repository was selected because it was the first to provided access to a stable set of official XML Schemas, it predated the repository described in #1, and because these schemas are associated with the CSW standard. Because ArcGIS Desktop has been using the XML schemas from repository #4 to validate metadata, ArcGIS Desktop customers have been able to create ISO 19139-compliant metadata in a stable environment. Metadata exported with this style uses the older GML 3.2.0 namespace—http://www.opengis.net/gml—and will validate successfully using any of the ISO 19139 XML Schemas that use the GML 3.2.0 namespace (#3, #4, and #5).
When the ISO 19139 Metadata Implementation Specification GML 3.2 metadata style is used, the XML Schemas from repository #1 are used to validate ISO 19139 metadata documents. Use this metadata style instead if it is important to export metadata that uses the GML 3.2 namespace, and validate metadata using this alternate set of XML Schemas. Metadata exported with this style uses the newer GML 3.2.1 namespace—http://www.opengis.net/gml/3.2— and will validate successfully using any of the ISO 19139 XML Schemas that use the GML 3.2.1 namespace (#1 and #2; and hopefully, #7 in the future).
When the Validate Metadata tool's dialog box opens, you can change the settings it uses to validate an item's metadata and use a different set of XML Schemas instead of the schemas that are associated with the current metadata style. You can also make this change permanent by creating a custom metadata style that always uses your preferred settings. For example, you could validate metadata using a set of XML Schemas that is available on your organization's internal network instead of the schemas provided on the internet by the TC 211 committee. Information about how to create a custom metadata style is provided with the ArcGIS Metadata Toolkit, which can be downloaded from the Esri support site.
If you choose to validate the XML documents exported by ArcGIS Desktop using the wrong set of ISO 19139 XML Schemas, validation will fail. If you change the GML namespace declaration in the exported XML documents by adding or removing /3.2 to or from the end of the declaration, the files will validate successfully with the other set of XML Schemas.
ArcGIS Desktop will be updated to export and validate ISO 19139 XML documents for a different repository of XML Schemas when the TC 211 XML Management Committee creates a new, stable repository.
A final word about XLinks
XLink is a W3C recommendation that supports querying and referencing portions of an XML document. The XLink XML Schemas have been incorporated into ISO TC 211 standards. However, they have never been widely adopted by the software community as a whole. Internet browsing applications do not support them natively. No XML software produced by Microsoft supports them except in the manner that it supports any XML Schema.
While XLinks are permitted by the ISO 19139 XML schemas, they are entirely optional. Therefore, there is no requirement to use XLinks in an ISO 19139-compliant XML file.
XLinks are valuable when people interact with an XML document because it is easy for people to interpret and understand the meaning of an association between two sections of an XML document. If you create XML documents from scratch by typing in XML data, XLinks can be very useful for saving time, improving maintenance costs, and preventing basic data entry errors.
ArcGIS Desktop uses a different method to resolve these same metadata maintenance problems. Sections of a metadata document that are reused many times are saved into a separate XML file. These XML fragments can be loaded into an item's metadata at a later time when they are needed. This capability effectively offers the same benefit as XLinks, though in a different manner.
When metadata is exported to the ISO 19139 format, a complete ISO 19139 document is always generated. This result is by design—it ensures that a complete metadata document is available and can be read and validated unambiguously outside of the organization without relying on any specialized software. The ISO 19139 metadata XML files exported from ArcGIS Desktop use XLinks sparingly, only when necessary, and when this is the best method for handling content.