[OSGeo-Standards] Re: Metadata Standards and ISO 19139

Volker Mische volker.mische at gmail.com
Mon Nov 16 16:16:38 EST 2009


Hi Landon,

I can't reply to the original mail, as I've just subscribed to the
mailing list.

Do you also edit the text files manually or do you plan to write a tool
for it?

I've an answer for both cases:
1. You plan to write a tool to edit the metadata.
You still like to keep it simple and easy to read. I'm not sure how easy
JSON [1] is to read for non-programmers, but I think reading it is ok,
and the generation of it with a (web)tool is pretty easy as there are
plenty of JSON libraries (to read and write) out there.

And if you would use JSON files for now, and you need a database some
time in the future, you don't need to use a relational one necessarily.
You could use CouchDB [2] for it. It's an non-relational, but
document-oriented database. That's exactly what you want, you don't have
the hassle with tables, SQL etc. (but to be fair, you might run into
other hassles with CouchDB, though)

I've attached a JSON file how it could look like
(Simple_Metadata_file.json).

2. You want to write your metadata files manually.
Then JSON has way to many braces and quotation marks, but you might like
to use YAML [3], which almost the same as your current format is. I've
attached an valid YAML file, too (Simple_Metadata_file.yaml).

I've you like to use YAML, you don't have to say goodbye to CouchDB. You
could easily convert it. I've also attached an sample conversion from
this YAML file to JSON with the "Online YAML Parser" [4]
(Simple_Metadata_file_yaml.json). Note that the ordering in that JSON
file is a bit screwed up, but it isn't meant for a human anyway.

I hope it helps :)

Anyway, I think that you should have a look at ISO 19139 (I guess it
would be more like ISO 19115) and might change some of your contents to
match this standard, so that you could (potentially) switch to this
standard in the future. I don't say you need to use XML (I actually
don't like the verboseness of the ISO 19139), but keep ISO 19115 in mind
when you design you own file format.

[1] http://json.org/
[2] http://couchdb.apache.org/
[3] http://yaml.org/
[4] http://yaml-online-parser.appspot.com/

Cheers,
  Volker
-------------- next part --------------
{
    "file format version": "00.10.00",
    "feature": {
        "version": 1.0,
        "id": "A13 T1S R7E",
        "type": "Public Land Survey System Corner",
        "geometry type": "Point",
        "creation": {
            "date": "2009-11-05 09:32:00",
            "geometry source": {
                "primary": "Feature Geometry from the United States of America Bureau of Land Management Geogrpahic Coordinate Database Public Land Survey System Sections (Or \"alt_first\") GIS data layer"
            },
            "geometry creation": {
                "process": "Geometry Created From Other Feature Geometry",
                "comments": " The feature geometry for this PLSS corner was created based on the location of nodes in the polygon representing the boundaries of PLSS sections in the primary geometry source listed above. Note: The polygon representing the boundaries of PLSS sections may have been corrected or modified as part of the cleaning/data quality improvement process performed as part of the California Central Valley Chapter PLSS Maintenance and Improvement Program. These changes to the PLSS Sections GIS data layer may impact the location of feature geometries representing PLSS corners."
            },
            "attribute value source": [
                {
                    "name": "oic",
                    "source": {
                        "primary": "CLSA Cvc PLSS MIP Volunteer"
                    },
                    "creation": {
                        "process": "Human Data Entry"
                    }
                }, {
                    "name": "fic",
                    "source": {
                        "primary": "CLSA Cvc PLSS MIP Volunteer"
                    },
                    "creation": {
                        "process": "Human Data Entry"
                    }
                }, {
                    "name": "ftc",
                    "source": {
                        "primary": "CLSA Cvc PLSS MIP Volunteer"
                    },
                    "creation": {
                        "process": "Human Data Entry"
                    }
                }, {
                    "name": "ts",
                    "source": {
                        "primary": "BLM/GLO Township Plat",
                        "alternate": "Filed Survey Maps in San Joaquin County"
                    },
                    "creation": {
                        "process": "Human Data Entry"
                    }
                }, {
                    "name": "tn",
                    "source": {
                        "primary": "BLM/GLO Township Plat",
                        "alternate": "Filed Survey Maps in San Joaquin County"
                    },
                    "creation": {
                        "process": "Human Data Entry"
                    }
                }, {
                    "name": "rs",
                    "source": {
                        "primary": "BLM/GLO Township Plat",
                        "alternate": "Filed Survey Maps in San Joaquin County"
                    },
                    "creation": {
                        "process": "Human Data Entry"
                    }
                }, {
                    "name": "ip",
                    "source": {
                        "primary": "CLSA CVc PLSS MIP Volunteer"
                    },
                    "creation": {
                        "process": "Human Data Entry"
                    }
                }, {
                    "name": "fn",
                    "source": {
                        "primary": "Other Feature Attribute Values"
                    },
                    "creation": {
                        "process": "Calculated From Other Feature Attribute Values"
                    }
                }
            ],
            "comments": {}
        },
        "history": [
            {
                "metadata entry type": "Geometry Edit",
                "geometry edit type": "Point Position Modified",
                "purpose": "Data Quality Improvement",
                "comments": "Since this feature represents a 1/4 section corner, it was moved to the actual mid point of the section line. The original polygons representing the boundaries of the PLSS sections which this quarter section control had a node that was not at the true mid-point but near the north lines of the sections."
            }, {
                "metadata entry type": "Attribute Value Edit",
                "attribute name": "fic",
                "attribute value edit type": "Value Change",
                "purpose": "The value of the fic attribute was changed from false to true after the field inspection had been completed by CLSA CVC PLSS MIP volunteers.",
	        "comments": "The field inspection for this PLSS corner was completed on Thursday, November 5, 2009."
            }
        ]
    }
}            
-------------- next part --------------
File Format Version: 00.10.00

Feature Metadata:
    Version: 1.0
    Primary Identifier: A13 T1S R7E
    Feature Type: Public Land Survey System Corner
    Geometry Type: Point

    Feature Creation:
        Date and Time Created: 2009-11-05 09:32:00
        Primary Geometry Source:
            Feature Geometry from the United States of America Bureau of Land Management 
            Geogrpahic Coordinate Database Public Land Survey System Sections (Or "alt_first") GIS data layer.
        Geometry Creation Process: Geometry Created From Other Feature Geometry
        Geometry Creation Comments: "The feature geometry for this PLSS corner was created based on the location
            of nodes in the polygon representing the boundaries of PLSS sections in the primary geometry source
            listed above. Note: The polygon representing the boundaries of PLSS sections may have been corrected
            or modified as part of the cleaning/data quality improvement process performed as part of the California
            Central Valley Chapter PLSS Maintenance and Improvement Program. These changes to the PLSS Sections
            GIS data layer may impact the location of feature geometries representing PLSS corners."

        Attribute Value Sources:
            -
                Attribute Name: oic
                Attribute Primary Source: CLSA Cvc PLSS MIP Volunteer
                Attribute Creation Process: Human Data Entry
                Attribute Creation Comments: None
            -
                Attribute Name: fic
                Attribute Primary Source: CLSA CVc PLSS MIP Volunteer
                Attribute Creation Process: Human Data Entry
                Attribute Creation Comments: None
            -
                Attribute Name: ftc
                Attribute Primary Source: CLSA CVc PLSS MIP Volunteer
                Attribute Creation Process: Human Data Entry
                Attribute Creation Comments: None
            -
                Attribute Name: ts
                Attribute Primary Source: BLM/GLO Township Plat
                Attribute Alternate Source: Filed Survey Maps in San Joaquin County
                Attribute Creation Process: Human Data Entry
                Attribute Creation Comments: None
            -
                Attribute Name: tn
                Attribute Primary Source: BLM/GLO Township Plat
                Attribute Alternate Source: Filed Survey Maps in San Joaquin County
                Attribute Creation Process: Human Data Entry
                Attribute Creation Comments: None
            -
                Attribute Name: rs
                Attribute Primary Source: BLM/GLO Township Plat
                Attribute Alternate Source: Filed Survey Maps in San Joaquin County
                Attribute Creation Process: Human Data Entry
                Attribute Creation Comments: None
            -
                Attribute Name: ip
                Attribute Primary Source: CLSA CVc PLSS MIP Volunteer
                Attribute Creation Process: Human Data Entry
                Attribute Creation Comments: None
            -
                Attribute Name: fn
                Attribute Primary Source: Other Feature Attribute Values
                Attribute Creation Process: Calculated From Other Feature Attribute Values
                Attribute Creation Comments: None


    Feature History:
        Metadata Entry:
            -
                Metadata Entry Type: Geometry Edit
                Geometry Edit Type: Point Position Modified
                Purpose: Data Quality Improvement
                Metadata Entry Comments:
                    Since this feature represents a 1/4 section corner, it was
                    moved to the actual mid point of the section line. The original polygons representing
                    the boundaries of the PLSS sections which this quarter section control had a node 
                    that was not at the true mid-point but near the north lines of the sections.
            -
                Metadata Entry Type: Attribute Value Edit
                Attribute Name: fic
                Attribute Value Edit Type: Value Change
                Purpose:
                    The value of the fic attribute was changed from false to true after the field
                    inspection had been completed by CLSA CVC PLSS MIP volunteers.
                Metadata Entry Comments:
                    The field inspection for this PLSS corner was completed
                    on Thursday, November 5, 2009.


-------------- next part --------------
{
  "File Format Version": "00.10.00", 
  "Feature Metadata": {
    "Primary Identifier": "A13 T1S R7E", 
    "Feature Type": "Public Land Survey System Corner", 
    "Version": 1.0, 
    "Geometry Type": "Point", 
    "Feature History": {
      "Metadata Entry": [
        {
          "Metadata Entry Comments": "Since this feature represents a 1/4 section corner, it was moved to the actual mid point of the section line. The original polygons representing the boundaries of the PLSS sections which this quarter section control had a node that was not at the true mid-point but near the north lines of the sections.", 
          "Metadata Entry Type": "Geometry Edit", 
          "Purpose": "Data Quality Improvement", 
          "Geometry Edit Type": "Point Position Modified"
        }, 
        {
          "Metadata Entry Comments": "The field inspection for this PLSS corner was completed on Thursday, November 5, 2009.", 
          "Metadata Entry Type": "Attribute Value Edit", 
          "Purpose": "The value of the fic attribute was changed from false to true after the field inspection had been completed by CLSA CVC PLSS MIP volunteers.", 
          "Attribute Value Edit Type": "Value Change", 
          "Attribute Name": "fic"
        }
      ]
    }, 
    "Feature Creation": {
      "Geometry Creation Process": "Geometry Created From Other Feature Geometry", 
      "Primary Geometry Source": "Feature Geometry from the United States of America Bureau of Land Management Geogrpahic Coordinate Database Public Land Survey System Sections (Or \"alt_first\") GIS data layer.", 
      "Date and Time Created": "2009-11-05 09:32:00", 
      "Attribute Value Sources": [
        {
          "Attribute Creation Process": "Human Data Entry", 
          "Attribute Creation Comments": "None", 
          "Attribute Primary Source": "CLSA Cvc PLSS MIP Volunteer", 
          "Attribute Name": "oic"
        }, 
        {
          "Attribute Creation Process": "Human Data Entry", 
          "Attribute Creation Comments": "None", 
          "Attribute Primary Source": "CLSA CVc PLSS MIP Volunteer", 
          "Attribute Name": "fic"
        }, 
        {
          "Attribute Creation Process": "Human Data Entry", 
          "Attribute Creation Comments": "None", 
          "Attribute Primary Source": "CLSA CVc PLSS MIP Volunteer", 
          "Attribute Name": "ftc"
        }, 
        {
          "Attribute Creation Process": "Human Data Entry", 
          "Attribute Name": "ts", 
          "Attribute Creation Comments": "None", 
          "Attribute Primary Source": "BLM/GLO Township Plat", 
          "Attribute Alternate Source": "Filed Survey Maps in San Joaquin County"
        }, 
        {
          "Attribute Creation Process": "Human Data Entry", 
          "Attribute Name": "tn", 
          "Attribute Creation Comments": "None", 
          "Attribute Primary Source": "BLM/GLO Township Plat", 
          "Attribute Alternate Source": "Filed Survey Maps in San Joaquin County"
        }, 
        {
          "Attribute Creation Process": "Human Data Entry", 
          "Attribute Name": "rs", 
          "Attribute Creation Comments": "None", 
          "Attribute Primary Source": "BLM/GLO Township Plat", 
          "Attribute Alternate Source": "Filed Survey Maps in San Joaquin County"
        }, 
        {
          "Attribute Creation Process": "Human Data Entry", 
          "Attribute Creation Comments": "None", 
          "Attribute Primary Source": "CLSA CVc PLSS MIP Volunteer", 
          "Attribute Name": "ip"
        }, 
        {
          "Attribute Creation Process": "Calculated From Other Feature Attribute Values", 
          "Attribute Creation Comments": "None", 
          "Attribute Primary Source": "Other Feature Attribute Values", 
          "Attribute Name": "fn"
        }
      ], 
      "Geometry Creation Comments": "The feature geometry for this PLSS corner was created based on the location of nodes in the polygon representing the boundaries of PLSS sections in the primary geometry source listed above. Note: The polygon representing the boundaries of PLSS sections may have been corrected or modified as part of the cleaning/data quality improvement process performed as part of the California Central Valley Chapter PLSS Maintenance and Improvement Program. These changes to the PLSS Sections GIS data layer may impact the location of feature geometries representing PLSS corners."
    }
  }
}


More information about the Standards mailing list