U.S. flag

An official website of the United States government

Official websites use .gov
A .gov website belongs to an official government organization in the United States.

Secure .gov websites use HTTPS
A lock ( ) or https:// means you’ve safely connected to the .gov website. Share sensitive information only on official, secure websites.

Untitled Document
Planetary SDI
Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Back to homepage


This section contains more technical content, with example metadata as well as links to sample data, metadata, and data creation tutorials to support the creation of Lunar SDI-compliant ARD. This is a living, non-exhaustive list of examples. We would appreciate any feedback, requests for additional examples, or contributions to help the community of data producers and data providers.

Map Projections

Map projections can be specified using Well Known Text (WKT) projection strings,proj:json strings, and/or PROJ defined projection shortcodes such as IAU:2015:30130 or IAU_2015:30130. The options for communicating the data projection are provided in order of preference, with WKT projection strings offering the highest interoperability across tools and projection shortcodes offering good, but not universal interoperability[^1]. To find WKT projection strings that reflect IAU WGCCRE recommendations see here. An example of one such string follows:

PROJCRS["Moon (2015) - Sphere / Ocentric/ North Polar",
    BASEGEOGCRS["Moon (2015) - Sphere / Ocentric",
        DATUM["Moon (2015) - Sphere",
    	ELLIPSOID["Moon (2015) - Sphere", 1737400, 0,
		LENGTHUNIT["metre", 1, ID["EPSG", 9001]]]],
    	PRIMEM["Reference Meridian", 0,
            ANGLEUNIT["degree", 0.0174532925199433, ID["EPSG", 9122]]],
        ID["IAU", 30100, 2015]],
    CONVERSION["North Polar",
        METHOD["Polar Stereographic (variant A)",
            ID["EPSG", 9810]],
        PARAMETER["Latitude of natural origin", 90,
            ANGLEUNIT["degree",0.0174532925199433,ID["EPSG", 9122]],
            ID["EPSG", 8801]],
		PARAMETER["Longitude of natural origin", 0,
            ANGLEUNIT["degree",0.0174532925199433,ID["EPSG", 9122]],
            ID["EPSG", 8802]],
		PARAMETER["Scale factor at natural origin", 1,
            SCALEUNIT["unity",1,ID["EPSG", 9201]],
            ID["EPSG", 8805]],
		PARAMETER["False easting", 0,
            LENGTHUNIT["metre",1,ID["EPSG", 9001]],
            ID["EPSG", 8806]],
		PARAMETER["False northing", 0,
            LENGTHUNIT["metre",1,ID["EPSG", 9001]],
            ID["EPSG", 8807]]],
    CS[Cartesian, 2],
        AXIS["Easting (E)", east,
            LENGTHUNIT["metre", 1]],
        AXIS["Northing (N)", north,
            LENGTHUNIT["metre", 1]],
    ID["IAU", 30130, 2015]]

This WKT string is complex and encodes a lot of information. The horizontal datum being used, radii, map projection and map projection parameters, and units (x,y and degrees) are all specified. When questions arise, data producers are encouraged to work with data providers, who have expertise with these projection strings.

Data providers can choose to provide data with a WKT string outside those available here. Why might one do this? With high-resolution data, for example, at a landing site, it is often preferable to use locally centered projections (with different center latitude, and center longitude parameters which are not defaults provided at the aforementioned link). When providing data this way data providers are cautioned to be careful to specify a valid WKT string. One can run projinfo as a tool for starting to validate a custom WKT projection definition.

For providers wishing to use proj:json, the same projinfo command can be used to perform a conversion.

Conversion from proj:json to WKT (and back).

PROJJSON is simply a JSON wrapper around a WKT2 projection string. A PROJJSON string and a WKT2 string contain the same information encoded differently. Therefore conversion from one format to another can be accomplished using existing tools.

The projinfo command, that ships with the PROJ library (a dependency of GDAL, among many other spatial libraries) can perform format conversion. for example, the WKT example above can be converted to PROJJSON using: projinfo IAU_2015:30130 -o projjson.

Why not use just PROJ shortcodes or simple PROJ strings?

PROJ short codes (e.g., IAU_2015:30100) are not interoperable when a client does not have access to a PROJ database with that shortcode. For example, the use of a short code will fail for most, if not all, web clients because they do not have the PROJ database (PROJSON is preferred). Likewise, older ArcGIS or QGIS installations are not guaranteed to have up-to-date PROJ databases.

Simple PROJ strings (e.g., +proj=latlong +R=1737400) are concise and usable in many applications. While portable and relatively easy to remember, these strings are lossy. They do not encode the same information (such as horizontal or vertical datum) as a WKT or PROJJSON string. Therefore, the use of these strings to describe Lunar SDI-endorsed data is discouraged.

Human Readable Metadata

Examples of human-readable, lunar-focused metadata are available here. The data documentation has been written targeting new data users with some background in planetary science, but no previous knowledge of this particular data set. All processing applied is described in plain language (see below for provenance or reproducibility examples), quantitative issues with the data are described, and when possible screen captures or GIFs are provided illustrating what these issues look like, and qualitative issues are discussed under the general usability heading. This format is one example of how a data provider can document their data and illustrates the style of documentation the Lunar SDI is promoting.

Machine Readable Metadata

Examples of STAC metadata, with support for planetary spatial data, are available via the USGS STAC API. One such example is here. More tutorials on creating STAC metadata will be forthcoming.

Creating GeoPackage Vector Data Sets

GeoPackage data sets can be created natively in QGIS and ArcGIS. Alternatively, command line tools can be used to convert legacy shapefiles to the more modern GeoPackage format.


Provenance files will vary by data product. Here are a few examples that are attempting to be closer to plain text scripts that users can simply run, to reproduce the processing that has been applied.

  • Kaguya Terrain Camera Raw to ARD
  • Controlled Galileo SSI: Note that this provenance starts from the photogrammetrically controlled product. This is because the documentation describes the control that was applied (and that control is not easily reproduced). We hope that the source ISIS cube files will be archived somewhere, and these ARD, like all ARD, are derived from those archived data.


[^1: IAU shortcodes require the PROJ shipped database which is available for local installs (e.g., with GDAL, ArcGIS, QGIS, etc). The PROJ database is not available for most javascript clients. Therefore, WKT strings offer higher interoperability than shortcodes.