wiki:MetadataSiblings

Version 5 (modified by simonp, 12 years ago) ( diff )

--

Metadata Record Sibling Relationships

Date 2012/09/20
Contact(s) Simon Pigot
Last edited 2012-09-20
Status complete, being discussed
Assigned to release 2.9.0
Resources Available
Ticket # #XYZ

Overview

ISO Metadata records can be related to one another in different ways. The mechanisms for handling these relationships are most often part of the standard in the form of specific elements eg. parent-child relationships are handled through the parentIdentifier element and the datasets that a service delivers are handled through the operatesOn element. GeoNetwork:

  • can index these relationships to support search
  • has services for retrieving a specific set of related records or the entire collection of related records

This proposal adds sibling relationships between metadata records to GeoNetwork. The elements in the ISO standard that support sibling relationships are the aggregatedInformation element. Sibling relationships types can be specified using an extendible codelist. Sibling records would be displayed under the relationship type. An example of how sibling relations are displayed in the classic interface and the new ExtJS interface is shown below.

Proposal Type

  • Type: GUI Change, Core Change, Module Change, Guideline and project governance procedures, ...
  • App: GeoNetwork or !Intermap
  • Module: eg. Harvester, Kernel, Data Manager, Metadata Import, Lucene Index, Search Interface ...
  • Documents:
  • Email discussions:
  • Other wiki discussions:

Voting History

  • Vote proposed by X on Y, result was +/-n (m non-voting members).

Motivations

There is a need to describe named sibling relationships between metadata records.

Proposal

Aggregate Information in a record that has a related sibling record looks something like the following:

    <gmd:aggregateInformation>
        <gmd:MD_AggregateInformation>
            <gmd:aggregateDataSetIdentifier>
                <gmd:MD_Identifier>
                    <!-- optional gmd:authority here: could have details of a register describing the some details of the sibling record -->
                    <!-- code is UUID/urn of the sibling record, could be a gmx:Anchor -->
                    <gmd:code>
                        <gco:CharacterString>urn:marine.csiro.au:project:1532</gco:CharacterString>
                    </gmd:code>
                </gmd:MD_Identifier>
            </gmd:aggregateDataSetIdentifier>
            <gmd:associationType>
                <gmd:DS_AssociationTypeCode codeList="http://...#DS_AssociationTypeCode" 
                                            codeListValue="crossReference">crossReference</gmd:DS_AssociationTypeCode>
            </gmd:associationType>
            <!-- initiative type describes the type of sibling relationship - in this case the code is a project 
                 related to the record that contains this aggregateInformation -->
            <gmd:initiativeType>
                <gmd:DS_InitiativeTypeCode codeList="http://...#DS_InitiativeTypeCode" 
                                           codeListValue="project">project</gmd:DS_InitiativeTypeCode>
            </gmd:initiativeType>
        </gmd:MD_AggregateInformation>
    </gmd:aggregateInformation>

Backwards Compatibility Issues

New libraries added

Explain which and why new libraries are required for that proposal ...

Risks

Participants

  • List of participants and role (if necessary) in current GIP

Attachments (4)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.