wiki:proposals/relatedResource

Version 7 (modified by fxp, 11 years ago) ( diff )

--

Editing metadata related resources

Date 2013-01-02
Contact(s) Francois Prunayre
Status Being discussed, in progress, initial implementation in progress
Assigned to release 2.9.x
Resources Available (funding Ifremer)
Ticket # #XYZ
Github dev branch https://github.com/fxprunayre/core-geonetwork/tree/improvement/relations

Overview

This proposal aims to improve the way a resource is linked to a metadata in editing mode. Indeed, GeoNetwork provides multiples ways of adding link to external or internal resources in different places of the editor. We could list:

  • in the editor using the binocular to search for a record to link (eg. parentIdentifier, sources, featureCatalog, operatesOn, aggregates)
  • file upload for thumbnail or online sources
  • custom UI for service/dataset link

This proposal provide a main component to view, add or remove the related resources.

A related resource could be:

  • A thumbnail (URL or file to upload)
  • A parent metadata record (UUID to the metadata)
  • A service metadata record
  • A dataset metadata record
  • A online source (URL or file to upload)
  • A feature catalog (UUID to the metadata in ISO19110 format)
  • A sibling (See http://trac.osgeo.org/geonetwork/wiki/MetadataSiblings)

This component is only available for ISO19139 records (or ISO19139 profiles) but when related resources are metadata records, those records could be in any of the catalog supported standards (eg. ISO19110 for feature catalog).

Proposal Type

  • Type: GUI Change
  • App: GeoNetwork
  • Module: Widgets
  • Documents:

Voting History

  • Vote not yet proposed.

Motivations

Make relation management easier.

Proposal

This related resource panel rely on:

  • the relation services (to retrieve current relation for a record)
  • XSL processing to add or remove a relation

Add a thumbnail

Two types of thumbnails could be linked to a metadata record:

  • an image linked using its URL (the image needs to be published online)
  • an image uploaded in the record data directory. After upload a small thumbnail could be created if requested.

The thumbnail upload form provide a simple way to add thumbnails:

The relation panel allows to quickly remove a thumbnail.

When the image is uploaded, the XML snippet corresponding to the image is the following:

<gmd:graphicOverview>
	<gmd:MD_BrowseGraphic>
		<gmd:fileName>
			<gco:CharacterString>http://www.cyber-heritage.co.uk/maps/map3.jpg</gco:CharacterString>
		</gmd:fileName>
	</gmd:MD_BrowseGraphic>
</gmd:graphicOverview>
<gmd:graphicOverview xmlns:srv="http://www.isotc211.org/2005/srv">
	<gmd:MD_BrowseGraphic>
		<gmd:fileName>
			<gco:CharacterString>http://localhost:8080/geonetwork/srv/eng/resources.get?uuid=7e512c38-f916-43ba-8367-85f17dcadca1&amp;fname=thumbnail.jpg</gco:CharacterString>
		</gmd:fileName>
		<gmd:fileDescription>
			<gco:CharacterString>large_thumbnail</gco:CharacterString>
		</gmd:fileDescription>
		<gmd:fileType>
			<gco:CharacterString>jpg</gco:CharacterString>
		</gmd:fileType>
	</gmd:MD_BrowseGraphic>
</gmd:graphicOverview>

When linking using a URL, the following XML snippet is inserted

<gmd:graphicOverview>
	<gmd:MD_BrowseGraphic>
		<gmd:fileName>
			<gco:CharacterString>http://organization.org/images/thumbnail.jpg</gco:CharacterString>
		</gmd:fileName>
	</gmd:MD_BrowseGraphic>
</gmd:graphicOverview>

In both cases, the information could be improved or updated using the editor from the advanced view > identification section.

Add an online source

The relation manager allows to add a simple online resource element defining URL, name, description and protocol.

Link dataset and service metadata records

Add a parent metadata record

In order to add a link to a parent metadata record, search for the target record in the popup and select the parent metadata to link to the current in editing.

Once added, the following XML is inserted in the metadata record:

<gmd:parentIdentifier>
    <gco:CharacterString>SDN:PRODUCT:1850:Time Series Tributyltin (TBT) in Sediment</gco:CharacterString>
</gmd:parentIdentifier>

In the editor, the relation could be updated in the metadata section:

Add a sibling

ISO Metadata records can be related to one another in different ways. The elements in the ISO standard that support sibling relationships are the aggregationInfo element. Sibling relationships types can be specified using an extendible codelist. See http://trac.osgeo.org/geonetwork/wiki/MetadataSiblings for more details.

In order to add a sibling link:

  • choose a type of association
  • choose a type of initiative
  • and search for the record to link

Multiple sibling could be linked to the record in one time defining for each element the association type and initiative type to use:

The type of sibling is displayed in the relation manager which allows to quickly remove the relation if needed:

Once added, the following XML is inserted in the metadata record:

<gmd:aggregationInfo>
        <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:aggregationInfo>

Relation manager widget advanced configuration

Backwards Compatibility Issues

None.

New libraries added

None.

Risks

Everything involves some element of risk....

Participants

  • Francois Prunayre
  • Ifremer
  • Camptocamp
  • Others?

Attachments (12)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.