Skip to content

Settings hierarchy

Introduction

GeoNetwork stores configuration settings in the Settings table. The settings are organized into a 'tree' structure where the leaf nodes of the tree are key/value pairs.

A key is limited to 64 characters whilst a value is effectively unlimited in most databases supported by GeoNetwork.

The root of the tree contains two nodes:

  • system: contains nodes that describe system configuration settings
  • harvesting: contains nodes that describe the settings used by harvesters

In the following sections:

  • the indentation is used to show hierarchy
  • names in bold represent keys
  • the datatype of the value is shown in parenthesis after the key.

    • an italic font is used to indicate types: string, integer, boolean, enumerated (values separated by a '|' represent the set of allowed values).
    • a missing datatype means that the value of the node is not used.
  • square brackets indicate cardinality. If they are missing, a cardinality of [1..1] should be inferred.

System node

Some examples of system configuration settings nodes contained in the system node are shown in the hierarchy below.

  • system: information on system configuration settings

    • site: Contains information about the site

    • name (string): Name used to present this site to other sites. Used to fill comboboxes or lists.

    • organisation (string): Name of the organization/company/institute that is running GeoNetwork
    • siteId (string): A UUID that uniquely identifies the site. It is generated by the installer.

    • platform: Contains information about the current software version

    • version (string): GeoNetwork's version in the X.Y.Z format

    • subVersion (string): A small extra description about the version, like 'alpha-1', 'beta' etc...

    • server: Used when it is necessary to build absolute URLs to the GeoNetwork server. This is the case, for example, when creating links inside a metadata record or when providing CSW capabilities.

    • host (string): HTTP server address

    • port (integer): HTTP server port (can be empty which means port 80)

    • Intranet: specify the network address details of the Intranet

    • network (string): Intranet address

    • netmask (string): Intranet netmask

    • z3950: A container for Z39.50 server parameters

    • enable (boolean): If true, GeoNetwork will start the Z30.50 server

    • port (integer): The port opened by GeoNetwork to listen to Z39.50 requests. Usually 2100.

    • proxy: This container specifies the proxy configuration for GeoNetwork to use when making outgoing connections

    • use (boolean): If true, GeoNetwork will use the given proxy for outgoing connections

    • host (string): Proxy host name
    • port (integer): Proxy host port
    • username (string): Proxy credentials.
    • password (string): Proxy credentials.

    • feedback: email messages sent via web feedback form or when downloading a resource.

    • email (string): email address of person who will receive feedback

    • mailServer: This container configures the mail server that will be used to send email

      • host (string): Address of the SMTP server to use
      • port (string): SMTP port on server to use
    • removedMetadata: This container contains settings about removed metadata.

    • dir: This folder will contain removed metadata in MEF format. It gets populated when the user deletes a metadata using the web interface.

    • LDAP: Parameters for LDAP authentication by GeoNetwork

    • use (boolean): If true, GeoNetwork will use LDAP authentication for usernames and passwords

    • host (string): LDAP host
    • port (integer): Port number on LDAP host
    • defaultProfile (string): Default GeoNetwork profile to use when the profile user attribute does not exist in the LDAP attributes.
    • login - optional credentials used to obtain access to the LDAP service
      • userDN (string)
      • password (string)
    • distinguishedNames - optional LDAP info used by GeoNetwork to locate user credentials
      • base (string)
      • users (string)
    • userAttribs: A container for user attributes present into the LDAP directory that must be retrieved and used to create the user in GeoNetwork.
      • name (string)
      • password (string)
      • profile (string)

Harvesting nodes

All harvesters share a common set of nodes, which are retrieved by the harvesting engine for all harvesters. These common nodes are described in the hierarchy below.

  • harvesting

    • node [0..n] (geonetwork|csw|arcsde|filesystem|geonetwork20|oaipmh| ogcwxs|thredds|webdav|wfsfeatures|z3950|z3950Config|geoPREST): Type of harvesting node
    • site: A container for site information.
      • name (string): Name of harvest instance (shown in the harvester user interface).
      • uuid (string): A unique identifier assigned by the system when the harvesting node is created.
      • useAccount (boolean): Indicates if the harvester has to authenticate to access the data.
        • username (string): credentials to be used for authentication
        • password (string): credentials to be used for authentication
    • options:
      • every (string): Harvesting schedule - similar to the Unix CRON format
      • oneRunOnly (boolean): If true, the harvester will harvest just once and then it will set the status to inactive.
      • status (active|inactive): Indicates if the harvesting from this node is stopped (inactive) or if the harvester is waiting for the next scheduled harvest (active).
    • content: A container for options relating to processing content after harvesting but before storage in the GeoNetwork database
      • importxslt (string): Name of XSLT to apply to metadata records before being stored and indexed in GeoNetwork (note: not every harvester supports this option - see notes section for each harvester in the harvester settings descriptions below). A list of the possible XSLTs that can be used for this parameter can be obtained from the xml.harvesting.info service - see xml_harvesting_info&type=importStylesheets.
      • validate (boolean): If true, the harvester will validate the metadata record against the matching metadata schema in GeoNetwork. (note: not every harvester supports this option - see notes section for each harvester in the harvester settings descriptions below)
    • privileges [0..1]: This is a container for privileges to assign to each harvested metadata record.
      • group (integer) [0..n]: A local group. The value is the local identifier of the group. There can be several group nodes each with its own set of privileges.
        • operation (integer) [0..n]: Privilege to assign to the group. The value is the numeric id of the operation like 0=view, 1=download, 2=edit etc...
    • categories [0..1]: This is a container for categories to assign to each harvested metadata record.
      • category (integer) [0..n]: A local category. The value is the local identifier of the category.
    • info: Container for status information about harvesting from this node.
      • lastRun (string): When the harvester was last run. The value is the current time in milliseconds since 1 January, 1970. If empty then the harvester has not yet been run.

Settings for each of the different harvesters that show the additional elements specific to those harvesters are in the following sections.

Harvesting node geonetwork

This is the native harvesting supported by GeoNetwork 2.1 and above.

  • node (string): geonetwork
    • site: Contains host and account information
      • host (string) eg. http://localhost:8080/geonetwork
      • createRemoteCategory (boolean) True: If local category exists with same name as the remote category, then assign harvested metadata to that category. False: Ignore categories.
      • mefFormatFull (boolean) True: harvest remote metadata as a full MEF file. ie. metadata plus thumbnails and data files uploaded with metadata.
      • importXslt (string) Name and parameters of a metadata processing XSLT - see Metadata Processing services for more details.
    • search [0..n]: Contains the search parameters. If this element is missing, an unconstrained search will be performed.
      • freeText (string) - free text search on remote instance
      • title (string) - search title on remote instance
      • abstract (string) - search abstract on remote instance
      • keywords (string) - search keywords on remote instance
      • digital (boolean) - search for records marked 'digital' on remote instance
      • hardcopy (boolean) - search for records marked 'hardcopy' on remote instance
      • sourceUuid (string) - search for records that come from source with this uuid on the remote instance
      • sourceName (string) - search for records that come from source with this name on the remote instance
    • groupsCopyPolicy [0..n]: Represents a copy policy for a remote group. It is used to maintain remote privileges on harvested metadata.
      • name (string): Internal name (not localised) of a remote group.
      • policy (string): Copy policy. For the group all, policies are: copy, copyToIntranet. For all other groups, policies are: copy, createAndCopy. The Intranet group is not considered.

XML Example

Harvester settings in XML are used by the harvester services - see Harvesting services.

Example of GeoNetwork harvester settings in XML::

<node id="954" type="geonetwork">
 <site>
   <name>test</name>
   <uuid>683bfc02-73e2-4100-a601-369936b6f82a</uuid>
   <account>
     <use>true</use>
     <username>admin</username>
     <password>admin</password>
   </account>
   <host>http://localhost:8080/geonetwork</host>
   <createRemoteCategory>true</createRemoteCategory>
   <mefFormatFull>true</mefFormatFull>
   <xslfilter />
 </site>
 <content>
   <validate>true</validate>
   <importxslt>none</importxslt>
 </content>
 <options>
   <every>0 0 0/3 ? * *</every>
   <oneRunOnly>false</oneRunOnly>
   <status>inactive</status>
 </options>
 <searches>
   <search>
     <freeText>Maps</freeText>
     <title></title>
     <abstract></abstract>
     <keywords></keywords>
     <digital>false</digital>
     <hardcopy>true</hardcopy>
     <source>
       <uuid>b7ce20f2-888a-4139-8802-916730c4be06</uuid>
       <name>My GeoNetwork catalogue</name>
     </source>
   </search>
 </searches>
 <categories>
   <category id="5" />
 </categories>
 <groupsCopyPolicy />
 <info>
   <lastRun />
   <running>false</running>
 </info> 
</node>

Notes

  • this harvester does not use the content/importXslt setting - instead a more sophisticated approach using the metadata processing services can be applied through the importXslt setting - for more details and an example see Metadata Processing services for more details.

Harvesting node webdav

This harvester type is capable of connecting to a web server which is WebDAV enabled (WebDAV is WEB Distributed Authoring and Versioning) or WAF (Web Accessible Folder) enabled.

-    **node** (*string*): webdav
 -   **site**: Contains the URL to connect to and account information
     -   **url** (*string*): URL to connect to. Must be well formed, starting with `http://`, `file://` or a supported protocol.
     -   **icon** (*string*): This is the icon that will be used as the metadata source logo. The image is taken from the `images/harvesting` folder and copied to the `images/logos` folder. A list of the possible values that can be used for this parameter can be obtained from the `xml.harvesting.info` service - see `xml_harvesting_info&type=icons`{.interpreted-text role="ref"}.
 -   **options**
     -   **recurse** (*boolean*): Indicates if the remote folder must be recursively scanned for metadata.
     -   **validate** (*boolean*): If set, the harvester will validate the metadata against its schema and the metadata will be harvested only if it is valid.
     -   **subtype** (*waf|webdav*): Indicates the type of server being harvested

XML Example

Harvester settings in XML are used by the harvester services - see Harvesting services.

Example of WEBDAV/WAF harvester settings in XML::

<node id="1039" type="webdav">
 <site>
   <name>burbble</name>
   <uuid>b64e006a-a26c-4268-85ec-0bf0450be966</uuid>
   <account>
     <use>true</use>
     <username>apples</username>
     <password>oranges</password>
   </account>
   <url>http://davtest.com/webdav</url>
   <icon>webdav.gif</icon>
 </site>
 <content>
   <validate>true</validate>
   <importxslt>none</importxslt>
 </content>
 <options>
   <every>0 0 0 ? * *</every>
   <oneRunOnly>false</oneRunOnly>
   <status>inactive</status>
   <validate>true</validate>
   <recurse>true</recurse>
   <subtype>webdav</subtype>
 </options>
 <privileges>
   <group id="1">
     <operation name="view" />
   </group>
 </privileges>
 <categories>
   <category id="2" />
 </categories>
 <info>
   <lastRun />
   <running>false</running>
 </info>
</node>

Notes

  • this harvester does not use the content/importXslt setting

Harvesting node csw

This harvester type is capable of querying an OGC Catalogue Services for the Web (CSW) server and harvesting metadata.

-    **node** (*string*): csw
 -   **site**
     -   **capabUrl** (*string*): URL of the GetCapabilities statement. This will be used to retrieve the operations and server address.
     -   **icon** (*string*): This is the icon that will be used as the metadata source logo. The image is taken from the `images/harvesting` folder and copied to the `images/logos` folder. A list of the possible values that can be used for this parameter can be obtained from the `xml.harvesting.info` service - see `xml_harvesting_info&type=icons`{.interpreted-text role="ref"}.
 -   **search** [0..n]: Contains search parameters. If this element is missing, an unconstrained search will be performed.
     -   **freeText** (*string*)
     -   **title** (*string*)
     -   **abstract** (*string*)
     -   **subject** (*string*)
     -   **minscale** (*integer*) - minimum scale denominator
     -   **maxscale** (*integer*) - maximum scale denominator

XML Example

Harvester settings in XML are used by the harvester services - see Harvesting services. Example of CSW harvester settings in XML::

<node id="1122" type="csw">
 <site>
   <name>blonks</name>
   <uuid>723953dc-1308-4905-abc0-9869f18af132</uuid>
   <account>
     <use>true</use>
     <username>frogmouth</username>
     <password>tawny</password>
   </account>
   <capabilitiesUrl>http://cswserver.com/services/csw?request=GetCapabilities&amp;service=CSW</capabilitiesUrl>
   <icon>csw.gif</icon>
 </site>
 <content>
   <validate>false</validate>
   <importxslt>none</importxslt>
 </content>
 <options>
   <every>0 0 0 ? * *</every>
   <oneRunOnly>false</oneRunOnly>
   <status>inactive</status>
 </options>
 <searches>
   <search>
     <freeText>cobblers</freeText>
     <title />
     <abstract />
     <subject />
     <minscale>25000</minscale>
     <maxscale>400000</maxscale>
   </search>
 </searches>
 <privileges>
   <group id="1">
     <operation name="view" />
   </group>
 </privileges>
 <categories>
   <category id="2" />
 </categories>
 <info>
   <lastRun />
   <running>false</running>
 </info>
</node>

Notes

  • this harvester does not use the content/importXslt setting

Harvesting node z3950

This harvester type is capable of querying one or more Z3950 servers and harvesting metadata.

-    **node** (*string*): z3950
 -   **site**
     -   **query** (*string*): Z3950 query in Prefix Query Format (mandatory). See the discussion on PQF in the Z3950 Harvester section of the Users Manual and/or <http://www.indexdata.com/yaz/doc/tools.html#PQF>.
     -   **icon** (*string*): This is the icon that will be used as the metadata source logo. The image is taken from the `images/harvesting` folder and copied to the `images/logos` folder. A list of the possible values that can be used for this parameter can be obtained from the `xml.harvesting.info` service - see `xml_harvesting_info&type=icons`{.interpreted-text role="ref"}.
     -   **repositories**
         -   **repository** [0..n]: Contains the Z3950 repository ids that will be harvested. Z3950 repository ids in GeoNetwork can be obtained through the `xml.info`{.interpreted-text role="ref"} service.

XML Example

Harvester settings in XML are used by the harvester services - see Harvesting services. Example of Z3950 harvester settings in XML::

<node id="1090" type="z3950">
 <site>
   <name>testz3950</name>
   <uuid>8554ec2b-2b80-4f9e-9d9d-028e2407ee89</uuid>
   <account>
     <use>true</use>
     <username />
     <password />
   </account>
   <query>@attrset geo @attr 1=1016 @attr 4=6 @attr 2=3 "water"</query>
   <icon>Z3950.gif</icon>
   <repositories>
     <repository id="act" />
     <repository id="geonetwork-auscope" />
     <repository id="product" />
     <repository id="publication" />
     <repository id="source" />
     <repository id="geonetwork-aims" />
   </repositories>
 </site>
 <content>
   <validate>false</validate>
   <importxslt>none</importxslt>
 </content>
 <options>
   <every>0 0 0 ? * *</every>
   <oneRunOnly>false</oneRunOnly>
   <status>inactive</status>
 </options>
 <privileges>
   <group id="1">
     <operation name="view" />
     <operation name="dynamic" />
     <operation name="featured" />
   </group>
 </privileges>
 <categories>
   <category id="2" />
 </categories>
 <info>
   <lastRun />
   <running>false</running>
 </info>
</node>

Harvesting node oaipmh

This harvester type is capable of querying an OAIPMH (Open Archives Initiative Protocol for Metadata Harvesting version 2.0) server and harvesting metadata.

-    **node** (*string*): oaipmh
 -   **site**
     -   **url** (*string*): OAIPMH server URL
     -   **icon** (*string*): This is the icon that will be used as the metadata source logo. The image is taken from the `images/harvesting` folder and copied to the `images/logos` folder. A list of the possible values that can be used for this parameter can be obtained from the `xml.harvesting.info` service - see `xml_harvesting_info&type=icons`{.interpreted-text role="ref"}.
 -   **options**
     -   **validate** (*boolean*): Validate metadata before saving to database. This option will be deprecated in favour of content/validate.
 -   **search** [0..n]: Contains search parameters which because they are constrained to follow the OAIPMH version 2.0 standard, are curiously limited to a date range, prefix and metadata set name. If this element is missing, an unconstrained search will be performed.
     -   **from** (*string*) from date search
     -   **until** (*string*) to date search
     -   **set** (*string*) metadata set name on OAIPMH server (possible values can be retrieved using <http://your_oaipmhservername?verb=ListSets>)
     -   **prefix** (*string*) metadata prefix name on OAIPMH server (possible values can be retrieved using <http://your_oaipmhservername?verb=ListMetadataFormats>)

XML Example

Harvester settings in XML are used by the harvester services - see Harvesting services. Example of OAIPMH harvester settings in XML::

<node id="1152" type="oaipmh">
 <site>
   <name>oaitest</name>
   <uuid>0a3e4a4a-4c4c-4f82-860f-551b6cf12341</uuid>
   <account>
     <use>true</use>
     <username />
     <password />
   </account>
   <url>http://localhost:6060/joai</url>
   <icon>oai-mhp.gif</icon>
 </site>
 <content>
   <validate>false</validate>
   <importxslt>{IMPORTXSLT}</importxslt>
 </content>
 <options>
   <every>0 0 0 ? * *</every>
   <oneRunOnly>false</oneRunOnly>
   <status>inactive</status>
   <validate>false</validate>
 </options>
 <searches>
   <search>
     <from>2013-01-08</from>
     <until>2013-01-30</until>
     <set>iso19139</set>
     <prefix>gmd</prefix>
     <stylesheet />
   </search>
 </searches>
 <privileges>
   <group id="1">
     <operation name="view" />
   </group>
 </privileges>
 <categories>
   <category id="2" />
 </categories>
 <info>
   <lastRun />
   <running>false</running>
 </info>
</node>

Notes

  • this harvester does not use the content/importXslt setting
  • this harvester does not use the content/validate setting - this will change

Harvesting node thredds

This harvester type is capable of harvesting metadata from a THREDDS (Thematic Real-time Environmental Data Directory Service). The metadata fragments are:

  • transformed into ISO19115/19139 (or profile) metadata fragments
  • copied or linked into an ISO19115/19139 (or profile) template

The harvester supports metadata fragments following the Unidata Data Discovery Conventions (http://www.unidata.ucar.edu/software/netcdf-java/formats/DataDiscoveryAttConvention.html) from two types of THREDDS datasets:

  • collections: essentially datasets that contain other datasets (like directories in a filesystem tree)
  • atomics: datasets that do not contain other datasets (like files in a filesystem tree)

The settings for a THREDDS harvester type are:

-    **node** (*string*): thredds
 -   **site**
     -   **url** (*string*): THREDDS catalog server URL - should always be the URL of an XML THREDDS catalog eg. <http://motherlode.ucar.edu:8080/thredds/catalog/satellite/3.9/WEST-CONUS_4km/catalog.xml> - HTML URLs will **not** work!
     -   **icon** (*string*): This is the icon that will be used as the metadata source logo. The image is taken from the `images/harvesting` folder and copied to the `images/logos` folder. A list of the possible values that can be used for this parameter can be obtained from the `xml.harvesting.info` service - see `xml_harvesting_info&type=icons`{.interpreted-text role="ref"}.
 -   **options**
     -   **lang** (*string*) - three letter language code describing language of metadata being harvested (almost always **eng**) - this value is used to set the metadata language in the records harvested from THREDDS
     -   **topic** (*string*) - ISO topic category describing the harvested metadata
     -   **createThumbnails** (*boolean*) - If true and the THREDDS catalog delivers WMS images for a dataset whose metadata is being harvested then a thumbnail will be created from the WMS for the harvested metadata
     -   **createServiceMd** (*boolean*) - If true then a skeleton ISO19119 service metadata record will be created for the services specified in the THREDDS catalog.
     -   **createCollectionDatasetMd** (*boolean*) - If true then metadata records will be created using harvested metadata fragments from collection datasets in the THREDDS catalog.
     -   **collectionGeneration** (*fragments|default*) - Use *fragments*. *default* refers to DIF metadata extraction which will be deprecated.
     -   **outputSchemaOnCollectionsFragments** (*string*) Metadata schema of ISO records that will be created from THREDDS catalog collection metadata. A list of possible values for this parameter can be obtained from the `xml.harvesting.info` service, see `xml_harvesting_info&type=threddsFragmentSchemas`{.interpreted-text role="ref"}.
     -   **collectionMetadataTemplate** (*integer*) Template record that harvested fragments will copied or linked into to create metadata records. Use <http://your_geonetwork/geonetwork/srv/eng/xml.info?type=templates> to get a list of template metadata record ids that can be used for this setting.
     -   **createCollectionSubtemplates** (*boolean*) - If true then subtemplates are created from the metadata fragments harvested from the THREDDS catalog datasets. The subtemplates are stored in the GeoNetwork database and linked into the **collectionMetadataTemplate** template record to create the harvested metadata records. If false, then subtemplates are not created, instead the harvested fragments are copied into the **collectionMetadataTemplate** record to create normal metadata records.
     -   **collectionFragmentStylesheet** (*string*) Stylesheet that turns collection metadata fragments in the THREDDS catalog into ISO metadata fragments. A list of possible values for this parameter can be obtained from the `xml.harvesting.info` service, see `xml_harvesting_info&type=threddsFragmentStylesheets`{.interpreted-text role="ref"}.
     -   **createAtomicDatasetMd** (*boolean*) - If true then metadata records will be created using harvested metadata fragments from atom datasets in the THREDDS catalog.
     -   **atomicGeneration** (*fragments|default*) - Use *fragments*. *default* refers to DIF metadata extraction which will be deprecated.
     -   **outputSchemaOnAtomicFragments** (*string*) Metadata schema of ISO records that will be created from THREDDS catalog atomic metadata. A list of possible values for this parameter can be obtained from the `xml.harvesting.info` service, see `xml_harvesting_info&type=threddsFragmentSchemas`{.interpreted-text role="ref"}.
     -   **atomicMetadataTemplate** (*integer*) Template record that harvested fragments will copied or linked into to create metadata records. Use <http://your_geonetwork/geonetwork/srv/eng/xml.info?type=templates> to get a list of template metadata record ids that can be used for this setting.
     -   **createAtomicSubtemplates** (*boolean*) - If true then subtemplates are created from the metadata fragments harvested from the THREDDS catalog atoms. The subtemplates are stored in the GeoNetwork database and linked into the **atomicMetadataTemplate** template record to create the harvested metadata records. If false, then subtemplates are not created, instead the harvested fragments are copied into the **atomicMetadataTemplate** record to create normal metadata records.
     -   **atomicFragmentStylesheet** (*string*) Stylesheet that turns atom metadata fragments in the THREDDS catalog into ISO metadata fragments. A list of possible values for this parameter can be obtained from the `xml.harvesting.info` service, see `xml_harvesting_info&type=threddsFragmentStylesheets`{.interpreted-text role="ref"}.

XML Example

Harvester settings in XML are used by the harvester services - see Harvesting services. Example of THREDDS harvester settings in XML:

<node id="977" type="thredds">
 <site>
   <name>test thredds with motherlode</name>
   <uuid>b3307257-6b2a-48e7-80f5-74acadeff66f</uuid>
   <account>
     <use>true</use>
     <username />
     <password />
   </account>
   <url>http://motherlode.ucar.edu:8080/thredds/catalog/satellite/3.9/WEST-CONUS_4km/catalog.xml</url>
   <icon>thredds.gif</icon>
 </site>
 <content>
   <validate>false</validate>
   <importxslt>{IMPORTXSLT}</importxslt>
 </content>
 <options>
   <every>0 0 0 ? * *</every>
   <oneRunOnly>false</oneRunOnly>
   <status>inactive</status>
   <lang>eng</lang>
   <topic>environment</topic>
   <createThumbnails>true</createThumbnails>
   <createServiceMd>true</createServiceMd>
   <createCollectionDatasetMd>true</createCollectionDatasetMd>
   <createAtomicDatasetMd>true</createAtomicDatasetMd>
   <ignoreHarvestOnAtomics>true</ignoreHarvestOnAtomics>
   <atomicGeneration>fragments</atomicGeneration>
   <modifiedOnly>true</modifiedOnly>
   <atomicFragmentStylesheet>thredds-metadata.xsl</atomicFragmentStylesheet>
   <atomicMetadataTemplate>7</atomicMetadataTemplate>
   <createAtomicSubtemplates>true</createAtomicSubtemplates>
   <outputSchemaOnAtomicsDIF />
   <outputSchemaOnAtomicsFragments>iso19139</outputSchemaOnAtomicsFragments>
   <ignoreHarvestOnCollections>true</ignoreHarvestOnCollections>
   <collectionGeneration>fragments</collectionGeneration>
   <collectionFragmentStylesheet>thredds-metadata.xsl</collectionFragmentStylesheet>
   <collectionMetadataTemplate>7</collectionMetadataTemplate>
   <createCollectionSubtemplates>true</createCollectionSubtemplates>
   <outputSchemaOnCollectionsDIF />
   <outputSchemaOnCollectionsFragments>iso19139</outputSchemaOnCollectionsFragments>
   <datasetCategory>2</datasetCategory>
 </options>
 <privileges>
   <group id="1">
     <operation name="view" />
   </group>
 </privileges>
 <categories>
   <category id="3" />
 </categories>
 <info>
   <lastRun />
   <running>false</running>
 </info>
</node>

Notes

  • this harvester does not use the content/importXslt setting
  • this harvester does not use the content/validate setting

Harvesting node wfsfeatures

This harvester type is capable of querying and harvesting metadata from the GetFeature response from an OGC Web Feature Service (WFS). The metadata fragments are:

  • transformed into ISO19115/19139 (or profile) metadata fragments
  • copied or linked into an ISO19115/19139 (or profile) template

The settings for a WFS Features harvester type are:

-    **node** (*string*): wfsfeatures
 -   **site**
     -   **url** (*string*): OGC WFS service URL. eg. <http://localhost:7070/deegree/services> - the harvester adds the necessary parameters to call the GetFeature service with the query provided from the **options**.
     -   **icon** (*string*): This is the icon that will be used as the metadata source logo. The image is taken from the `images/harvesting` folder and copied to the `images/logos` folder. A list of the possible values that can be used for this parameter can be obtained from the `xml.harvesting.info` service - see `xml_harvesting_info&type=icons`{.interpreted-text role="ref"}.
 -   **options**
     -   **lang** (*string*) - three letter language code describing language of metadata being harvested (almost always **eng**) - this value is used to set the metadata language in the records harvested from THREDDS
     -   **query** (*string*) - An OGC WFS GetFeature query
     -   **outputSchema** (*string*) Metadata schema of ISO records that will be created from WFS GetFeature harvester. A list of possible values for this parameter can be obtained from the `xml.harvesting.info` service, see `xml_harvesting_info&type=wfsFragmentSchemas`{.interpreted-text role="ref"}.
     -   **stylesheet** (*string*) Stylesheet that turns WFS Features into ISO metadata fragments. A list of possible values for this parameter can be obtained from the `xml.harvesting.info` service, see `xml_harvesting_info&type=wfsFragmentStylesheets`{.interpreted-text role="ref"}.
     -   **streamFeatures** (*boolean*) - If true then responses will be saved to disk and features will be extracted using the streaming XML parser. Use for large WFS GetFeatures responses.
     -   **createSubtemplates** (*boolean*) - If true then subtemplates are created from the metadata fragments harvested from the WFS GetFeatures response. The subtemplates are stored in the GeoNetwork database and linked into the **templateId** template record to create the harvested metadata records. If false, then subtemplates are not created, instead the harvested fragments are copied into the **templateId** record to create normal metadata records.
     -   **templateId** (*integer*) Template record that harvested fragments will copied or linked into to create metadata records. Use <http://your_geonetwork/geonetwork/srv/eng/xml.info?type=templates> to get a list of template metadata record ids that can be used for this setting.
     -   **recordsCategory** (*integer*) Category id of GeoNetwork category that will be assigned to the metadata records created by the harvester. Use <http://your_geonetwork/geonetwork/srv/eng/xml.info?type=categories> to get a list of category ids that can be used for this setting.

XML Example

Harvester settings in XML are used by the harvester services - see Harvesting services. Example of WFS Features harvester settings in XML:

<node id="1201" type="wfsfeatures">
 <site>
   <name>test wfs</name>
   <uuid>588ea4fa-a105-40fd-9697-8082d23cc967</uuid>
   <account>
     <use>true</use>
     <username />
     <password />
   </account>
   <url>http://localhost:6060/deegree/services</url>
   <icon>wfs.gif</icon>
 </site>
 <content>
   <validate>false</validate>
   <importxslt>{IMPORTXSLT}</importxslt>
 </content>
 <options>
   <every>0 0 0 ? * *</every>
   <oneRunOnly>false</oneRunOnly>
   <status>inactive</status>
   <lang>eng</lang>
   <query>&lt;wfs:GetFeature service="WFS" version="1.1.0"
       xmlns:wfs="http://www.opengis.net/wfs"&gt;
    &lt;wfs:Query typeName="gboundaries"/&gt;&lt;/wfs:GetFeature&gt;</query>
   <outputSchema>iso19139</outputSchema>
   <stylesheet>geoserver_boundary_fragments.xsl</stylesheet>
   <streamFeatures>false</streamFeatures>
   <createSubtemplates>true</createSubtemplates>
   <templateId>2</templateId>
   <recordsCategory>2</recordsCategory>
 </options>
 <privileges>
   <group id="1">
     <operation name="view" />
     <operation name="dynamic" />
     <operation name="featured" />
   </group>
 </privileges>
 <categories>
   <category id="2" />
 </categories>
 <info>
   <lastRun />
   <running>false</running>
 </info>
</node>

Notes

  • this harvester does not use the content/importXslt setting
  • this harvester does not use the content/validate setting

Harvesting node filesystem

This harvester type is capable of querying and harvesting metadata (filename *.xml) from a directory tree on a filesystem accessible to the GeoNetwork server.

The settings for the filesystem harvester type are:

-    **node** (*string*): filesystem
 -   **site**
     -   **directory** (*string*): This is the filesystem directory (on the server) from which metadata files (*.xml) will be harvested.
     -   **recurse** (*boolean*): If true, then any directories in the fileystem directory will be checked for *.xml files (and any directories in those directories etc etc).
     -   **nodelete** (*boolean*): If true, then metadata from previous executions of the filesystem harvester will be left in the catalog (ie. they will not be deleted)
     -   **icon** (*string*): This is the icon that will be used as the metadata source logo. The image is taken from the `images/harvesting` folder and copied to the `images/logos` folder. A list of the possible values that can be used for this parameter can be obtained from the `xml.harvesting.info` service - see `xml_harvesting_info&type=icons`{.interpreted-text role="ref"}.

XML Example

Harvester settings in XML are used by the harvester services - see Harvesting services. Example of Filesystem harvester settings in XML:

<node id="1234" type="filesystem">
 <site>
   <name>/Users filesystem harvester</name>
   <uuid>c7b7660a-337a-4aa1-843b-648280ad8d86</uuid>
   <account>
     <use>false</use>
     <username />
     <password />
   </account>
   <directory>/Users</directory>
   <recurse>true</recurse>
   <nodelete>true</nodelete>
   <icon>filesystem.gif</icon>
 </site>
 <content>
   <validate>true</validate>
   <importxslt>DIF-to-ISO19139.xsl</importxslt>
 </content>
 <options>
   <every>0 0 0 ? * *</every>
   <oneRunOnly>false</oneRunOnly>
   <status>inactive</status>
 </options>
 <searches />
 <privileges>
   <group id="1">
     <operation name="view" />
   </group>
 </privileges>
 <categories>
   <category id="2" />
 </categories>
 <info>
   <lastRun />
   <running>false</running>
 </info>
</node>

Harvesting node arcsde

This harvester type is capable of harvesting metadata from an arcsde server.

The settings for the arcsde harvester type are:

-    **node** (*string*): arcsde
 -   **site**
     -   **server** (*string*): This is the name of the arcde server.
     -   **port** (*integer*): Port number of arcsde server.
     -   **username** (*string*): arcsde username
     -   **password** (*string*): arcsde password
     -   **database** (*string*): Name of arcsde database
     -   **icon** (*string*): This is the icon that will be used as the metadata source logo. The image is taken from the `images/harvesting` folder and copied to the `images/logos` folder. A list of the possible values that can be used for this parameter can be obtained from the `xml.harvesting.info` service - see `xml_harvesting_info&type=icons`{.interpreted-text role="ref"}.

XML Example

Harvester settings in XML are used by the harvester services - see Harvesting services. Example of arcsde harvester settings in XML:

<node id="1259" type="arcsde">
 <site>
   <name>test arcsde harvester</name>
   <uuid>5b5070d3-464a-484e-941a-e56812e46431</uuid>
   <account>
     <use>false</use>
     <username />
     <password />
   </account>
   <server>arcsde_server.esri.com</server>
   <port>5151</port>
   <username>sde_user</username>
   <password>sde_password</password>
   <database>esri_sde</database>
   <icon>esri.gif</icon>
 </site>
 <content>
   <validate>true</validate>
   <importxslt>none</importxslt>
 </content>
 <options>
   <every>0 0 0 ? * *</every>
   <oneRunOnly>false</oneRunOnly>
   <status>inactive</status>
 </options>
 <searches />
 <categories>
   <category id="4" />
 </categories>
 <info>
   <lastRun />
   <running>false</running>
 </info>
</node>

Notes

  • this harvester does not use the content/importXslt setting
  • ArcSDE java API libraries need to be installed by the user in GeoNetwork (folder INSTALL_DIR/web/geonetwork/WEB-INF/lib), as these are proprietary libraries not distributed with GeoNetwork. The following jars are required:

  • jpe_sdk.jar

  • jsde_sdk.jar

Harvesting node ogcwxs

This harvester type is capable of harvesting metadata from the GetCapabilities response of OGC services.

The settings for an OGCWxS harvester type are:

-    **node** (*string*): ogcwxs
 -   **site**
     -   **url** (*string*): OGC WxS service URL entry point. eg. <http://localhost:7070/deegree/services> - the harvester adds the necessary parameters to call the GetCapabilities service.
     -   **ogctype** (*WMS1.0.0|WMS1.1.1|WMS1.3.0|WFS1.0.0|WFS1.1.0|* *|WCS1.0.0|WPS0.4.0|WPS1.0.0|CSW2.0.2|SOS1.0.0*): Type and version of OGC service being harvested.
     -   **icon** (*string*): This is the icon that will be used as the metadata source logo. The image is taken from the `images/harvesting` folder and copied to the `images/logos` folder. A list of the possible values that can be used for this parameter can be obtained from the `xml.harvesting.info` service - see `xml_harvesting_info&type=icons`{.interpreted-text role="ref"}.
 -   **options**
     -   **lang** (*string*) - three letter language code describing language of metadata being harvested - this value is used to set the metadata language in the records created by this harvester. Use <http://your_geonetwork/geonetwork/srv/eng/xml.info?type=isolanguages> to get a list of language codes that can be used for this setting.
     -   **topic** (*string*) - ISO Topic Category. List of values comes from codelist of ISO topic category element (gmd:topicCategory).
     -   **createThumbnails** (*boolean*) - if true and service is a WMS then thumbnails will be created for dataset metadata, if false then thumbnails will not be created
     -   **useLayer** (*boolean*) - Create metadata for layer elements using GetCapabilities information
     -   **useLayerMd** (*boolean*) - Create metadata for layer elements using remote metadata provided in the MetadataURL attribute (if the remote metadata doesn't exist/isn't recognized then GetCapabilities info will be used).
     -   **datasetCategory** - (*integer*) Category id of GeoNetwork category that will be assigned to the dataset metadata records created by the harvester. Use <http://your_geonetwork/geonetwork/srv/eng/xml.info?type=categories> to get a list of category ids that can be used for this setting.
     -   **outputSchema** (*string*) Metadata schema of ISO records that will be created from OGCWxS GetCapabilities harvester. A list of possible values for this parameter can be obtained from the `xml.harvesting.info` service, see `xml_harvesting_info&type=ogcwxsOutputSchemas`{.interpreted-text role="ref"}.

XML Example

Harvester settings in XML are used by the harvester services - see Harvesting services. Example of OGCWxS GetCapabilities harvester settings in XML:

<node id="1138" type="ogcwxs">
 <site>
   <name>test ogcwxs</name>
   <uuid>87852766-536a-40b7-875a-3ab5ff24fa78</uuid>
   <account>
     <use>false</use>
     <username />
     <password />
   </account>
   <url>http://localhost:6060/deegree2/services</url>
   <ogctype>WFS1.1.0</ogctype>
   <icon>default.gif</icon>
 </site>
 <content>
   <validate>false</validate>
   <importxslt>none</importxslt>
 </content>
 <options>
   <every>0 0 0 ? * *</every>
   <oneRunOnly>true</oneRunOnly>
   <status>inactive</status>
   <lang>eng</lang>
   <topic>elevation</topic>
   <createThumbnails>true</createThumbnails>
   <useLayer>true</useLayer>
   <useLayerMd>true</useLayerMd>
   <datasetCategory>2</datasetCategory>
   <outputSchema>iso19139</outputSchema>
 </options>
 <privileges>
   <group id="1">
     <operation name="view" />
     <operation name="dynamic" />
     <operation name="featured" />
   </group>
 </privileges>
 <categories>
   <category id="3" />
 </categories>
 <info>
   <lastRun />
   <running>false</running>
 </info>
</node>

Harvesting node geoPREST

This harvester type is capable of querying a GeoPortal 9.3.x site and harvesting metadata using the GeoPortal REST API.

-    **node** (*string*): geoPREST
 -   **site**
     -   **baseUrl** (*string*): Base URL of the GeoPortal server site. eg. <http://yoursite.com/geoportal>. REST URLs will be built from this URL.
     -   **icon** (*string*): This is the icon that will be used as the metadata source logo. The image is taken from the `images/harvesting` folder and copied to the `images/logos` folder. A list of the possible values that can be used for this parameter can be obtained from the `xml.harvesting.info` service - see `xml_harvesting_info&type=icons`{.interpreted-text role="ref"}.
 -   **search** [0..n]: Contains search parameters. If this element is missing, no results will be returned. You can use the Lucene query syntax documented at <http://webhelp.esri.com/geoportal_extension/9.3.1/index.htm#srch_lucene.htm>.
     -   **freeText** (*string*)

XML Example

Harvester settings in XML are used by the harvester services - see Harvesting services. Example of geoPREST harvester settings in XML::

<node id="978" type="geoPREST">
 <site>
   <name>qldtest</name>
   <uuid>4b9de966-1d5f-4133-97da-f4232fb7761a</uuid>
   <account>
     <use>true</use>
     <username />
     <password />
   </account>
   <baseUrl>http://qspatial.information.qld.gov.au/geoportal</baseUrl>
   <icon>default.gif</icon>
 </site>
 <content>
   <validate>false</validate>
   <importxslt>none</importxslt>
 </content>
 <options>
   <every>0 0 0 ? * *</every>
   <oneRunOnly>true</oneRunOnly>
   <status>inactive</status>
 </options>
 <searches>
   <search>
     <freeText>Barrier Reef</freeText>
   </search>
   <search>
     <freeText>Cadastral</freeText>
   </search>
 </searches>
 <privileges>
   <group id="1">
     <operation name="view" />
     <operation name="dynamic" />
     <operation name="featured" />
   </group>
 </privileges>
 <categories>
   <category id="2" />
 </categories>
 <info>
   <lastRun />
   <running>false</running>
   <result>
     <total>119</total>
     <added>87</added>
     <updated>32</updated>
     <unchanged>0</unchanged>
     <unknownSchema>0</unknownSchema>
     <removed>0</removed>
     <unretrievable>0</unretrievable>
     <badFormat>0</badFormat>
     <doesNotValidate>0</doesNotValidate>
   </result>
 </info>
</node>

Notes

  • this harvester uses two REST services from the GeoPortal API:

    • rest/find/document with searchText parameter to return an RSS listing of metadata records that meet the search criteria
    • rest/document with id parameter from each result returned in the RSS listing
  • this harvester has been tested with GeoPortal 9.3.x. It should be used for that version of GeoPortal in preference to the CSW harvester.