Metadata Resources for Schema v1.1

In addition to template and sample files we also produce Project Open Data Metadata schema in JSON schema format. JSON schema describes a JSON data format. It can be used to automatically validate Data.json files and to generate forms for creating JSON.

Sample Data Files

Use Cases

Starting from a spreadsheet

Some agencies may initially build or maintain data catalogs through large spreadsheets. In order to then generate a data.json file from this, simply import the spreadsheet (in the form of a CSV file) into the CSV Converter, translate the metadata as needed, and then generate an appropriately formatted JSON file.

Utilizing CKAN

CKAN is a popular, open-source data catalog that can be installed independently or run as a service. Even if an agency hasn’t begun a data catalog, adopting CKAN can provide a robust and feature-rich solution with which to begin maintaining an internal or external catalog. In addition to providing an effective means of organizing the agency’s data catalog, CKAN provides several opportunities for generating the needed data.json file. See the ckanext-datajson and USMetadata extensions.

Using Socrata

Socrata is a popular, open data catalog that is run as a service. Agencies that have not adapted a data catalog yet, can use Socrata without having to install or setup any servers or software. In addition to providing rich visualizations and data management features, Socrata natively supports data.json so any datasets managed through Socrata will be automatically exposed correctly. Socrata also supports all the extended metadata fields through it’s extensible metadata features.

Manual translating a data file from another system

Agencies may also manage their data catalogs through various database solutions such as Access, an asset management system, document management system, geoportal, or assorted proprietary systems. Regardless of which system an agency employs, it should include a fundamental export option which allows the catalog to be exported as a CSV file, which can then be imported into the CSV Converter for conversation to an appropriately formatted JSON file. Depending on the solutions’ varied further functionality, some of them may also provide APIs which can then be configured to maintain the data.json file. If not, they may instead support XML and JSON exports, which can then be converted to the proper format.

Convert from CSV to JSON

In order to generate appropriately formatted JSON, simply import an appropriately formatted CSV into the CSV Converter, ensure that the metadata fields line up, and re-export the file.

Crosswalks for Geospatial Metadata

FGDC member agencies developed these crosswalks as a standardized resource for use by agencies in creating their Project Open Data metadata schema v1.1 (data.json) records. The crosswalks are intended as a reference model for the development of strategies and applications that support the conversion of existing geospatial metadata to the Project Open Data metadata schema v1.1.

The crosswalks will be periodically updated to address user comments and revisions to the source metadata standards. Users are asked to add their own information about strategies, applications, and other products generated using these crosswalks. Problems or suggestions can be submitted by creating a new issue or improvements can be proposed directly following the guidelines for contributing.

Since the Project Open Data Metadata Schema v1.1 is also a JSON and JSON-LD serialization of DCAT. Others working with transforms between ISO 19115 and DCAT may also be interested in this crosswalk.

If date lacks day (DD) values, eg. YYYYMM (201501), add a dash between the year and month (2015-01)

publisher>name

Publisher Name

required

No

publisher if null distributor name if null originator

metadata>idinfo>citation>citeinfo>pubinfo>publish if null then metadata>distinfo>distrib>cntinfo>cntorgp>cntorg & metadata>distinfo>distrib>cntinfo>cntorgp>cntper if null then metadata>distinfo>distrib>cntinfo>cntperp>cntorg & metadata>distinfo>distrib>cntinfo>cntperp>cntper if null then metadata>idinfo>citation>citeinfo>origin

If Distributor Contact used compile Organization Name and Person Name if both in CSDGM record, e.g. USGS, Mark Markson

contactPoint>fn

Contact Name

required

No

point of contact person name & organization name. if null, metadata contact person name and organization name

Insert value (hardcode) into POD record. If not feasible, add to Theme Keyword: 1) Locate program code in the Federal Program Inventory doc 2) Add Program Code, e.g. “015:001” as a Theme Keyword 3) List ‘Federal Program Inventory’ as associated Theme Keyword Thesaurus, include URL if wanted

spatial

Spatial

if applicable

No

bounding coordinates

metadata>idinfo>spdom>bounding>westbc, southbc, eastbc, northbc

Compile West, South, East, North values into single string, e.g. west coordinate, east coordinate, north coordinate, south coordinate

temporal

Temporal

if applicable

No

time period of content

metadata>idinfo>timeperd>timeinfo>title>rngdates>begdates/enddate if null then metadata>idinfo>timeperd>timeinfo>title>mdattim (lowest as start date/ highest as end date) if null then metadata>idinfo>timeperd>timeinfo>title>sngdate>caldate (repeat as start/end date)

1. “non-public” when a. //gmd:identificationInfo/gmd:MD_DataIdentification/gmd:resourceConstraints/gmd:MD_LegalConstraints/gmd:accessConstraints/gmd:MD_RestrictionCode == restricted b. //gmd:identificationInfo/gmd:MD_DataIdentification/gmd:resourceConstraints/gmd:MD_SecurityConstraints/gmd:classification/gmd:MD_ClassificationCode == restricted, confidential, secret, or topSecret 2. “restricted public” when //gmd:identificationInfo/gmd:MD_DataIdentification/gmd:resourceConstraints/gmd:MD_LegalConstraints/gmd:accessConstraints/gmd:MD_RestrictionCode == copyright, patent, patentPending, trademark, license, or intellectualPropertyRights 3. set value of POD json field to public if these values do not exist in metadata

bureauCode

Bureau Code

required

yes

insert value when uploaded to Agency Enterprise Inventory

–

–

programCode

Program Code

required

yes

Recommend hardcoding program information into the POD, if not feasible then add to keywords - locate program code in the Federal Program Inventory doc - add Program Code, e.g. "015:001" as a Theme Keyword - list ‘Federal Program Inventory’ as associated Theme Keyword Thesaurus

1. time period begin and end dates 2. time instant 3. min and max value of multiple date ranges

1. //gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:temporalElement/gmd:EX_TemporalExtent/gmd:extent/gml:TimePeriod/gml:beginPosition + //gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:temporalElement/gmd:EX_TemporalExtent/gmd:extent/gml:TimePeriod/gml:endPosition 2. if single date use this field to populate as both start/end date //gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:temporalElement/gmd:EX_TemporalExtent/gmd:extent/gml:TimeInstant/timePosition 3. if more than two instances of this field exist choose the earliest date value and latest date value to populate the range of dates //gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:temporalElement/gmd:EX_TemporalExtent/gmd:extent/gml:TimeInstant/timePosition

//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:languageConvert the value of this field based on the following mapping: eng; USA - en-USspa; USA - es-USeng; CAN - en-CAfre; CAN - fr-CAspa; MEX - es-MX

1. //gmd:distributionInfo/gmd:MD_Distribution/gmd:distributionFormat/gmd:MD_Format/gmd:specification IF content of gmd:specification begins with “http” 2. //gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/gmd:MD_Distributor/gmd:distributorFormat/gmd:MD_Format/gmd:specification IF content of gmd:specification begins with “http”