-
Notifications
You must be signed in to change notification settings - Fork 1
Facet Grouping
This proposal adds facet grouping support to the GeoNetwork search API.
The user can select a set of metadata records and define the replacements to apply from a predefined list of fields classified in sections:
Index term uri's in lucene index using existing indexing functionality
e.g.
http://vocab.aodn.org.au/aodn/def/Platform/Instance/65
<def>
...
<hierarchical>
<dimension name="Platform" max="10" depth="2" format="DIMENSION"/>
<dimension name="Parameter" max="10" format="DIMENSION"/>
<dimension name="Organisation" sortBy="count" max="10" format="DIMENSION"/>
</hierarchical>
</def>
<dimensions>
<dimension name="platform" indexKey="platform" classifier="au.org.emii.geonetwork.classifier.Platform">
<param name="thesaurusManager" type="org.fao.geonet.kernel.ThesaurusManager"/>
<param name="conceptSchema" type="java.lang.String" value="http://environment.data.gov.au/aodn/def/Platform"/>
<param name="classificationSchema" type="java.lang.String" value="http://vocab.aodn.org.au/PlatformClassificationScheme/SchemeNumber1"/>
</dimension>
<dimension name="parameter" indexKey="parameter" classifier="org.fao.geonet.kernel.search.classifier.BroaderTerm">
<param name="thesaurusManager" type="org.fao.geonet.kernel.ThesaurusManager"/>
<param name="conceptSchema" type="java.lang.String" value="http://environment.data.gov.au/aodn/def/Parameter"/>
</dimension>
<dimension name="organisation" indexKey="organisation"/>
</dimensions>
Add support for looking up broader terms (ThesaurusManager/SKOS schema/Concept abstraction)
Index term classifications as lucene catageories when indexing term (SearchManager)
Return included subtree results in response as requested (LuceneSearcher)
Make use of drilldown parameters in search request to do drilldowns (LuceneSearcher)
Write required classifiers
Configure indexing of classifications and returned summary
As per current functionality
http://catalogue-rc.aodn.org.au/geonetwork/srv/eng/q?fast=index&title=SOOP&facet.q=Platform/Ship%26Parameter/Biotic%20taxonomic%20identification
Need to escape any embedded '/' in classification
<?xml version="1.0" encoding="UTF-8"?>
<response from="1" to="7" selected="0">
<summary count="7" type="local">
<dimension count="7" name="Platform">
<category count="7" name="Ship">
<category count="3" name="L'Astrolabe"/>
<category count="4" name="Aurora Australis"/>
</category>
</dimension>
<dimension count="3" name="Parameter">
<category count="3" name="Biotic taxonomic identification" />
<category count="3" name="Abundance of biota" />
<category count="1" name="Total alkalinity per unit mass of the water body" />
<category count="1" name="Concentration of ammonium {NH4} per unit volume of the water body" />
<category count="1" name="Concentration of phosphate {PO4} per unit volume of the water body" />
<category count="1" name="Concentration of nitrate {NO3} per unit volume of the water body" />
<category count="1" name="Concentration of silicate {SiO4} per unit volume of the water body" />
<category count="1" name="Concentration of suspended particulate material (inorganic) per unit volume of the water body" />
<category count="1" name="Concentration of suspended particulate material (organic) per unit volume of the water body" />
<category count="1" name="Concentration of suspended particulate material per unit volume of the water body" />
<category count="1" name="Dry weight biomass per unit volume of the water body" />
<category count="1" name="Concentration of chlorophyll per unit volume of the water body" />
<category count="1" name="Concentration of oxygen {O2} per unit volume of the water body" />
<category count="1" name="Practical salinity of the water body" />
</dimension>
<dimension count="5" name="Organisation">
<category count="5" name="CSIRO Division of Marine and Atmospheric Research - Hobart" />
<category count="2" name="CSIRO Division of Marine and Atmospheric Research - Dutton Park" />
</dimension>
</summary>
<metadata>
<title>IMOS National Reference Station (NRS) - Picoplankton flow cytometry</title>
<popularity>12</popularity>
<source>2e5b03a0-fbd5-4215-a650-7d121ffb6635</source>
<owner>340</owner>
<responsibleParty>pointOfContact|resource|CSIRO Division of Marine and Atmospheric Research - Hobart|</responsibleParty>
<responsibleParty>distributor|metadata|CSIRO Marine Data Centre|</responsibleParty>
...
</metadata>
<metadata>
<title>IMOS National Reference Station (NRS) - Phytoplankton Abundance and Biovolume</title>
<popularity>8</popularity>
<source>2e5b03a0-fbd5-4215-a650-7d121ffb6635</source>
<owner>340</owner>
<responsibleParty>pointOfContact|resource|CSIRO Division of Marine and Atmospheric Research - Hobart|</responsibleParty>
<responsibleParty>distributor|metadata|CSIRO Marine Data Centre|</responsibleParty>
...
</metadata>
...
</response>
Multi-lingual support - GeoNetwork, iso19115/iso19139 and skos rdf support labelling in different languages (actually this is probably pretty easy - e.g. language -> classifier parameter)
CSW support -> no idea whether this can be fitted to csw - a geonetwork extension perhaps
GeoNetwork Client interface - hierarchical facets should be supported in GeoNetwork UI as well
Forward fit to GeoNetwork development branch