DataONE Content Indexer Documentation

These documents are generated from the configuration information contained in the projects dataone-cn-solr amd d1_cn_index_processor which provide configuration for the solr index and metadata parsers respectively.

Date Generated Aug 07, 2020
Document Version 2.3.3
dataone-cn-solr version DATAONE-CN-SOLR_v2.3.5
d1_cn_index_processor version D1_CN_INDEX_PROCESSOR_v2.3.11

Index Configuration

Solr Index Fields

A list of the fields defined in the solr search index used by the Coordinating Nodes.

These fields are populated by the index processor using values drawn from Types.SystemMetadata, Science Metadata, and Resource Map documents.

Note

For Editors

Definitions are drawn from the solr configuration file and descriptions for each field are contained in a separate properties file (dataone-cn-solr/usr/share/dataone-cn-solr/debian/queryFieldDescriptions.properties). After editing descriptions, the document source must be regenerated and committed to GitHub for the public facing documentation to be updated.

Static Fields

Field Type MV Store Index Description
Index._root_
string False False True  
Index._version_
long False True True  
Index.abstract
text_general False True True The full text of the abstract as provided in the science metadata document.
Index.attribute
text_general True True True Multi-valued field containing the text from attributeName, attributeLabel, attributeDescription, attributeUnit fields into a single searchable text field.
Index.attributeDescription
text_general True True True Multi-valued field containing the attribute descriptive text.
Index.attributeLabel
string True True True Multi-valued field containing secondary attribute name information.
Index.attributeName
string True True True Multi-valued field containing the main attribute name information.
Index.attributeUnit
string True True True Multi-valued field containing the attribute unit information.
Index.author
string False True True Principle Investigator (PI) / Author as listed in the metadata document.
Index.authorGivenName
string False True True The given name of the primary author/PI.
Index.authorGivenNameSort
alphaOnlySort False True True The given name of the primary author/PI case normalized for sorting.
Index.authoritativeMN
string False True True The node Id of the authoritative Member Node for the object.
Index.authorLastName
string True True True The LAST name(s) of the author(s)
Index.authorSurName
string False True True The sur name of the primary author/PI.
Index.authorSurNameSort
alphaOnlySort False True True The sur name of the primary author/PI case normalized for sorting.
Index.awardNumber
string True True True  
Index.awardNumber
string True True True  
Index.awardTitle
string True True True  
Index.awardTitle
string True True True  
Index.beginDate
tdate False True True The starting date of the temporal range of the content described by the metadata document.
Index.blockedReplicationMN
string True True False A multi-valued field that contains the node Ids of member nodes that are blocked from holding replicas of this object.
Index.changePermission
string True True True List of subjects (groups and individuals) that have change permission on PID.
Index.checksum
string False True False The checksum for the object
Index.checksumAlgorithm
string False True False Algorithm used for generating the object checksum
Index.class
string True True True Taxonomic class name(s)
Index.contactOrganization
string True True True Name of the organization to contact for more information about the dataset
Index.contactOrganizationText
text_general True False True Copy from contactOrganization
Index.datasource
string False True True The node Id of the member node that originally contributed the content.
Index.dataUrl
string False True False The URL that can be used to resolve the location of the object given its PID.
Index.dateModified
tdate False True True The date and time when the object system metadata was last updated.
Index.datePublished
tdate False True True Publication date for the dataset (this may or may not be coincident with when the content is added to DataONE).
Index.dateUploaded
tdate False True True The date and time when the object was uploaded to the Member Node.
Index.decade
string False True True The latest decade that is covered by the dataset, expressed in the form “1999-2009”
Index.documents
string True True True Lists all PIDs that this object describes. Obtained by parsing all resource maps in which this object is referenced. Not set for data or resource map objects.
Index.eastBoundCoord
tfloat False True True Eastern most longitude of the spatial extent, in decimal degrees, WGS84
Index.edition
text_general False True True The version or edition number of the item described.
Index.endDate
tdate False True True The ending date of the temporal range of the content described by the metadata document.
Index.family
string True True True Taxonomic family name(s)
Index.fileID
string False True True Contains the CNRead.resolve URL for the object ONLY if the object is a science metadata object.
Index.fileName
string False True True The file name for the object, specified in system metadata field with the same name.
Index.formatId
string False True True The format identifier indicating the type of content this record refers to.
Index.formatType
string False True True The format type of the record - DATA, METADATA, RESOURCE.
Index.funderIdentifier
string True True True  
Index.funderIdentifier
string True True True  
Index.funderName
string True True True  
Index.funderName
string True True True  
Index.funding
string True True True  
Index.funding
string True True True  
Index.fundingText
text_general True False True  
Index.fundingText
text_general True False True  
Index.gcmdKeyword
text_general True True True Keywords drawn from the GCMD controlled vocabulary
Index.genus
string True True True Taxonomic genus name(s)
Index.geoform
string False True True The name of the general form in which the item’s geospatial data is presented
Index.geohash_1
text_general True True True An encoded string that represents the geographic coordinates of the centroid of a spatial extent. This can be used for searching and plotting.
Index.geohash_2
text_general True True True An encoded string that represents the geographic coordinates of the centroid of a spatial extent. This can be used for searching and plotting.
Index.geohash_3
text_general True True True An encoded string that represents the geographic coordinates of the centroid of a spatial extent. This can be used for searching and plotting.
Index.geohash_4
text_general True True True An encoded string that represents the geographic coordinates of the centroid of a spatial extent. This can be used for searching and plotting.
Index.geohash_5
text_general True True True An encoded string that represents the geographic coordinates of the centroid of a spatial extent. This can be used for searching and plotting.
Index.geohash_6
text_general True True True An encoded string that represents the geographic coordinates of the centroid of a spatial extent. This can be used for searching and plotting.
Index.geohash_7
text_general True True True An encoded string that represents the geographic coordinates of the centroid of a spatial extent. This can be used for searching and plotting.
Index.geohash_8
text_general True True True An encoded string that represents the geographic coordinates of the centroid of a spatial extent. This can be used for searching and plotting.
Index.geohash_9
text_general True True True An encoded string that represents the geographic coordinates of the centroid of a spatial extent. This can be used for searching and plotting.
Index.id
string False True True The identifier of the object being indexed.
Index.identifier
text_general False True True Copy id
Index.investigator
string True True True Name of the investigator(s) responsible for developing the dataset and associated content.
Index.investigatorText
text_general True False True Copy from investigator.
Index.isDocumentedBy
string True True True Lists all PIDs that describe this object. Obtained by parsing all resource maps in which this object is referenced.
Index.isPublic
boolean False True True Set to True if the DataONE public user is present in the list of subjects with readPermission on PID.
Index.isService
boolean False True True Set to true if document is a member node service description document. Use to filter search results for to exclude or include member node services.
Index.isSpatial
string False True True Set to “Y” for records that contain spatial information
Index.keyConcept
string True True True Terms drawn from a controlled vocabulary of concepts that are applicable to the content described by the metadata document.
Index.keywords
string True True True Keywords recorded in the science metadata document. These may be controlled by the generator of the metadata or by the metadata standard of the document, but are effectively uncontrolled within the DataONE context.
Index.keywordsText
text_general True False True Copy from keywords
Index.kingdom
string True True True Taxonomic kingdom(s)
Index.LTERSite
string False True True Data provider organization identifier, for sources within the LTER network.
Index.mediaType
string False True True The name attribute of the media type element in system metadata. Indicates media type of the object.
Index.mediaTypeProperty
string True True True A list of properties describing the media type in system metadata. The value is a concatenation of the property elements name attribute and the value of the property element.
Index.namedLocation
string True True True The name of the location(s) relevant to the content described by the metadata document.
Index.noBoundingBox
string False True True Set to “Y” if there is no bounding box information available (i.e., the east, west, north, south most coordinates)
Index.northBoundCoord
tfloat False True True Northern most latitude of the spatial extent, in decimal degrees, WGS84
Index.numberReplicas
int False True False Requested number of replicas for the object
Index.obsoletedBy
string False True True If set, indicates the object that replaces this record.
Index.obsoletes
string False True True If set, indicates the object that this record obsoletes.
Index.ogcUrl
text_general False True False URL for Open Geospatial Web service if available.
Index.order
string True True True Taxonomic order name(s)
Index.origin
string True True True Investigator or Investigator organization name.
Index.originator
string True True True Investigator or Investigator organization name. Derived by normalizing origin.
Index.originatorText
text_general True False True  
Index.originText
text_general True False True Copy from origin
Index.parameter
string True True True A characteristic, or variable, that is measured or derived as part of data-collection activities.
Index.parameterText
text_general True False True Copy from parameter
Index.phylum
string True True True Taxonomic phylum (or division) name(s)
Index.placeKey
text_general True True True A place name keyword, assigned by the metadata creator. It is one keyword from the thesaurus named in <placekt>
Index.preferredReplicationMN
string True True False A list of member node identifiers that are preferred replication targets for this object.
Index.presentationCat
string False True True Type of data being preserved (maps, text, etc.)
Index.project
string False True True The authorized name of a research effort for which data is collected. This name is often reduced to a convenient abbreviation or acronym. All investigators involved in a project should use a common, agreed-upon name.
Index.projectText
text_general False False True Copy from project
Index.prov_generated
string True True True A multi-valued field containing the identifiers of data objects that this program generated based on the PROV wasGeneratedBy, qualifiedAssociation, and hadPlan properties.
Index.prov_generatedByExecution
string True True True A multi-valued field containing the identifiers of the executions that this data object was generated by based on the PROV wasGeneratedBy property.
Index.prov_generatedByProgram
string True True True A multi-valued field containing the identifiers of the programs that this data object was generated by based on the PROV wasGeneratedBy, qualifiedAssociation, and hadPlan properties.
Index.prov_generatedByUser
string True True True A multi-valued field containing the identifiers of the users that this data object was generated by based on the PROV wasGeneratedBy, qualifiedAssociation, and agent properties.
Index.prov_hasDerivations
string True True True A multi-valued field containing the identifiers of the data objects that were derivations of the source data object described by this metadata object, based on the PROV wasDerivedBy property.
Index.prov_hasSources
string True True True A multi-valued field containing the identifiers of the data objects that were sources to the derived data object described by this metadata object, based on the PROV wasDerivedBy property.
Index.prov_instanceOfClass
string True True True A multi-valued field containing the identifiers of the semantic classes that this object is an instance of, based on the PROV, ProvONE, and other ontologies.
Index.prov_used
string True True True A multi-valued field containing the identifiers of data objects that this program used based on the PROV used, qualifiedAssociation, and hadPlan properties.
Index.prov_usedByExecution
string True True True A multi-valued field containing the identifiers of the executions that used this data object based on the PROV used property.
Index.prov_usedByProgram
string True True True A multi-valued field containing the identifiers of the programs that used this data object based on the PROV used, qualifiedAssociation, and hadPlan properties.
Index.prov_usedByUser
string True True True A multi-valued field containing the identifiers of the users that used this data object based on the PROV used, qualifiedAssociation, and agent properties.
Index.prov_wasDerivedFrom
string True True True A multi-valued field containing the identifiers of data objects that this data object was derived from based on the PROV wasDerivedBy property.
Index.prov_wasExecutedByExecution
string True True True A multi-valued field containing the identifiers of the executions that used this program based on the PROV qualifiedAssociation, and hadPlan properties.
Index.prov_wasExecutedByUser
string True True True A multi-valued field containing the identifiers of the users that executed this program based on the PROV qualifiedAssociation, hadPlan, and agent properties.
Index.prov_wasInformedBy
string True True True A multi-valued field containing the identifiers of executions that this execution was informed by based on the PROV wasInformedBy property.
Index.pubDate
tdate False True True Publication date for the dataset (this may or may not be coincident with when the content is added to DataONE).
Index.purpose
text_general False True True The “Purpose” describes the “why” aspects of the data set (For example, why was the data set created?).
Index.readPermission
string True True True List of subjects (groups and individuals) that have read permission on PID.
Index.relatedOrganizations
string True True True  
Index.replicaMN
string True True True One or more node Ids holding copies of the object.
Index.replicationAllowed
boolean False True False True if this object can be replicated.
Index.replicaVerifiedDate
tdate True True False  
Index.resourceMap
string True True True List of resource map PIDs that reference this PID.
Index.rightsHolder
string False True True The Subject that acts as the rights holder for the object.
Index.scientificName
string True True True Taxonomic scientific name(s) at the most precise level available for the organisms of relevance to the dataset
Index.sem_annotated_by
string True True True  
Index.sem_annotates
string True True True  
Index.sem_annotation
string True True True  
Index.sem_comment
string True True True  
Index.sensor
string True True True Also called “instrument.” A device that is used for collecting data for a data set.
Index.sensorText
text_general True False True Copy from sensor.
Index.seriesId
string False True True The seriesId is an optional, unique Unicode string that identifies an object revision chain.
Index.serviceCoupling
string False True True Either ‘tight’, ‘mixed’, or ‘loose’. Tight coupled service work only on the data described by this metadata document. Loose coupling means service works on any data. Mixed coupling means service works on data described by this metadata document but may work on other data.
Index.serviceDescription
text_general False True True A human readable description of the member node service to assist discovery and to evaluate applicability.
Index.serviceEndpoint
string True True True A URL that indicates how to access the member node service.
Index.serviceInput
string True True True Aspect of the service that accepts a digital entity. Either a list of DataONE formatIds Urls or pid RESOLVE Urls that the member node service operates on. A pid RESOLVE url indicates a ‘tight’ coupled service - while a list of formatIds indicates a loose coupled service.
Index.serviceOutput
string True True True Aspect of the service that provides a digital entity resulting from operation of the service. A listing of DataONE formatId which this member node service produces.
Index.serviceTitle
text_general False True True A brief, human readable descriptive title for the member node service.
Index.serviceType
string True True True The type of service being provided by the member node.
Index.site
string True True True The name or description of the physical location where the data were collected
Index.siteText
text_general True False True Copy from site.
Index.size
tlong False True True The size of the object, in bytes.
Index.source
string True True True Also called “platform.” The mechanism used to support the sensor or instrument that gathers data
Index.sourceText
text_general True False True Copy from source.
Index.southBoundCoord
tfloat False True True Southern most latitude of the spatial extent, in decimal degrees, WGS84
Index.species
string True True True Taxonomic species name(s)
Index.submitter
string False True True The Subject name of the original submitter of the content to DataONE.
Index.term
string True True True A secondary subject area within which parameters can be categorized. Approved terms include “agricultural chemicals” and “atmospheric chemistry,” among many others. When entering a term in the LandVal Metadata Editor, users should select a standard expression from the pick list for terms if at all possible.
Index.termText
text_general True False True Copy from term.
Index.text
text_en_splitting False True True Full text of the metadata record, used to support full text searches
Index.title
text_general False True True Title of the dataset as recorded in the science metadata.
Index.titlestr
string False False True Copy from title.
Index.topic
string True True True The most general subject area within which a parameter is categorized. Approved topics include “agriculture,” “atmosphere,” and “hydrosphere,” among others.
Index.topicText
text_general True False True Copy from topic.
Index.updateDate
tdate False True True Copy from dateuploaded.
Index.webUrl
string True True False Link to the investigator’s web-site.
Index.westBoundCoord
tfloat False True True Western most longitude of the spatial extent, in decimal degrees, WGS84
Index.writePermission
string True True True List of subjects (groups and individuals) that have write permission on PID.

Dynamic Fields

Field Type MV Store Index Description
*_b
boolean False True True  
*_bm
boolean True True True  
*_bs
boolean True True True  
*_c
currency False True True  
*_coordinate
tdouble False False True  
*_d
double False True True  
*_dm
tdouble True True True  
*_ds
double True True True  
*_dt
date False True True  
*_dtm
tdate True True True  
*_dts
date True True True  
*_en
text_en True True True  
*_f
float False True True  
*_fm
tfloat True True True  
*_fs
float True True True  
*_i
int False True True  
*_im
tint True True True  
*_is
int True True True  
*_l
long False True True  
*_lm
tlong True True True  
*_ls
long True True True  
*_p
location False True True  
*_s
string False True True  
*_sm
string True True True  
*_ss
string True True True  
*_t
text_general False True True  
*_td
tdouble False True True  
*_tdt
tdate False True True  
*_tf
tfloat False True True  
*_ti
tint False True True  
*_tl
tlong False True True  
*_tm
text_general True True True  
*_txt
text_general True True True  
attr_*
text_general True True True  
ignored_*
ignored True False False  
random_*
random False False False  

Index Processors

Field x FormatId Cross Reference

Index FormatId
1 eml://ecoinformatics.org/eml-2.0.0
2 eml://ecoinformatics.org/eml-2.0.1
3 eml://ecoinformatics.org/eml-2.1.0
4 eml://ecoinformatics.org/eml-2.1.1
5 https://eml.ecoinformatics.org/eml-2.2.0
6 http://www.openarchives.org/ore/terms
7 FGDC-STD-001-1998
8 FGDC-STD-001.1-1999
9 FGDC-STD-001.2-1999
10 http://www.esri.com/metadata/esriprof80.dtd
11 http://purl.org/ornl/schema/mercury/terms/v1.0
12 http://purl.org/dryad/terms/
13 http://datadryad.org/profile/v3.1
14 http://dublincore.org/schemas/xmls/qdc/2008/02/11/qualifieddc.xsd
15 http://ns.dataone.org/metadata/schema/onedcx/v1.0
16 http://datacite.org/schema/kernel-3.1
17 http://datacite.org/schema/kernel-3.0
18 http://www.w3.org/TR/rdf-syntax-grammar
19 http://docs.annotatorjs.org/en/v1.2.x/annotation-format.html
20 http://www.isotc211.org/2005/gmd
21 http://www.isotc211.org/2005/gmd-noaa
22 http://www.isotc211.org/2005/gmd-pangaea
23 http://www.openarchives.org/OAI/2.0/oai_dc/

The following table indicates which formatIds have processing rules defined to set index field values when processing metadata. In the table, an “S” means the property is set from system metadata, an “X” means there is a rule defined to set the value, and blank indicates no rules are setting the field value (though Solr copy fields are not considered here).

FormatId x Solr Field
Field FormatId 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
LTERSite                                              
abstract X X X X X   X X X X X X X X X X X     X X X X
attribute X X X X X   X X X X X                        
attributeDescription X X X X X   X X X X X                        
attributeLabel X X X X X   X X X X X                        
attributeName X X X X X   X X X X X                        
attributeUnit X X X X X   X X X X X                        
author X X X X X   X X X X X X X X X X X     X X X X
authorGivenName X X X X X             X X     X X            
authorGivenNameSort X X X X X             X X     X X            
authorLastName X X X X X                     X X            
authorSurName X X X X X   X X X X X X X X X X X     X X X X
authorSurNameSort X X X X X   X X X X X X X X X X X     X X X X
authoritativeMN S S S S S S S S S S S S S S S S S S S S S S S
awardNumber         X                                    
awardTitle         X                                    
beginDate X X X X X   X X X X X     X X X X     X X X  
blockedReplicationMN S S S S S S S S S S S S S S S S S S S S S S S
changePermission S S S S S S S S S S S S S S S S S S S S S S S
checksum S S S S S S S S S S S S S S S S S S S S S S S
checksumAlgorithm S S S S S S S S S S S S S S S S S S S S S S S
class X X X X X   X X X X X                        
contactOrganization X X X X X   X X X X X     X X X X     X X X X
contactOrganizationText                                              
dataUrl                                              
datasource S S S S S S S S S S S S S S S S S S S S S S S
dateModified S S S S S S S S S S S S S S S S S S S S S S S
datePublished                                              
dateUploaded S S S S S S S S S S S S S S S S S S S S S S S
decade                                              
documents                                              
eastBoundCoord X X X X X   X X X X X                 X X X  
edition             X X X X X                        
endDate X X X X X   X X X X X     X X X X     X X X  
family X X X X X   X X X X X                        
fileID S S S S S S S S S S S S S S S S S S S S S S S
fileName S S S S S S S S S S S S S S S S S S S S S S S
formatId S S S S S S S S S S S S S S S S S S S S S S S
formatType S S S S S S S S S S S S S S S S S S S S S S S
funderIdentifier         X                                    
funderName         X                                    
funding         X                                    
fundingText                                              
gcmdKeyword             X X X X X                        
genus X X X X X   X X X X X                        
geoform             X X X X X                        
geohash_1 X X X X X   X X X X X     X X         X X X  
geohash_2 X X X X X   X X X X X                 X X X  
geohash_3 X X X X X   X X X X X                 X X X  
geohash_4 X X X X X   X X X X X                 X X X  
geohash_5 X X X X X   X X X X X                 X X X  
geohash_6 X X X X X   X X X X X                 X X X  
geohash_7 X X X X X   X X X X X                 X X X  
geohash_8 X X X X X   X X X X X                 X X X  
geohash_9 X X X X X   X X X X X                 X X X  
id S S S S S S S S S S S S S S S S S S S S S S S
identifier                                              
investigator X X X X X   X X X X X X X X X X X     X X X X
investigatorText                                              
isDocumentedBy                                              
isPublic S S S S S S S S S S S S S S S S S S S S S S S
isService X X X X X                             X X X  
isSpatial                                              
keyConcept                                              
keywords X X X X X   X X X X X X X X X X X     X X X X
keywordsText                                              
kingdom X X X X X   X X X X X                        
mediaType S S S S S S S S S S S S S S S S S S S S S S S
mediaTypeProperty S S S S S S S S S S S S S S S S S S S S S S S
namedLocation                                              
noBoundingBox                                              
northBoundCoord X X X X X   X X X X X     X X         X X X  
numberReplicas S S S S S S S S S S S S S S S S S S S S S S S
obsoletedBy S S S S S S S S S S S S S S S S S S S S S S S
obsoletes S S S S S S S S S S S S S S S S S S S S S S S
ogcUrl                                              
order X X X X X   X X X X X                        
origin X X X X X   X X X X X X X X X X X     X X X X
originText                                              
originator                                             X
originatorText                                              
parameter                                              
parameterText                                              
phylum X X X X X   X X X X X                        
placeKey             X X X X X                        
preferredReplicationMN S S S S S S S S S S S S S S S S S S S S S S S
presentationCat             X X X X X                        
project X X X X X                                    
projectText                                              
prov_generated           X                       X          
prov_generatedByExecution           X                       X          
prov_generatedByProgram           X                       X          
prov_generatedByUser           X                       X          
prov_hasDerivations           X                       X          
prov_hasSources                                              
prov_instanceOfClass           X                       X          
prov_used           X                       X          
prov_usedByExecution           X                       X          
prov_usedByProgram           X                       X          
prov_usedByUser           X                       X          
prov_wasDerivedFrom           X                       X          
prov_wasExecutedByExecution           X                       X          
prov_wasExecutedByUser           X                       X          
prov_wasInformedBy           X                       X          
pubDate X X X X X   X X X X X X X X X X X     X X X X
purpose             X X X X X                        
readPermission S S S S S S S S S S S S S S S S S S S S S S S
relatedOrganizations                                              
replicaMN S S S S S S S S S S S S S S S S S S S S S S S
replicaVerifiedDate S S S S S S S S S S S S S S S S S S S S S S S
replicationAllowed S S S S S S S S S S S S S S S S S S S S S S S
resourceMap                                              
rightsHolder S S S S S S S S S S S S S S S S S S S S S S S
scientificName X X X X X   X X X X X X X                    
sem_annotated_by                                              
sem_annotates                                              
sem_annotation         X                           X        
sem_comment                                              
sensor                                              
sensorText                                              
seriesId S S S S S S S S S S S S S S S S S S S S S S S
serviceCoupling                                       X X X  
serviceDescription X X X X X                             X X X  
serviceEndpoint X X X X X                             X X X X
serviceInput                                       X X X  
serviceOutput                                       X X X  
serviceTitle X X X X X                             X X X  
serviceType                                       X X X  
site X X X X X   X X X X X X X X X X X            
siteText                                              
size S S S S S S S S S S S S S S S S S S S S S S S
source                                              
sourceText                                              
southBoundCoord X X X X X   X X X X X                 X X X  
species X X X X X   X X X X X                        
submitter S S S S S S S S S S S S S S S S S S S S S S S
term                                              
termText                                              
text X X X X X   X X X X X X X X X X X     X X X X
title X X X X X   X X X X X X X X X X X     X X X X
titlestr                                              
topic                                              
topicText                                              
updateDate                                              
webUrl             X X X X X                        
westBoundCoord X X X X X   X X X X X                 X X X  
writePermission S S S S S S S S S S S S S S S S S S S S S S S

System Metadata Parser

Fields

Solr Field Multi Dedupe XPath
Index.id False False
/d200:systemMetadata/identifier/text()
Processor: SolrField
Index.seriesId False False
/d200:systemMetadata/seriesId/text()
Index.fileName False False
/d200:systemMetadata/fileName/text()
Index.mediaType False False
/d200:systemMetadata/mediaType/@name
Index.mediaTypeProperty False  
/d200:systemMetadata/mediaType/property ->{{[
mediaTypePropertyName] [mediaTypePropertyValue]}};
mediaTypePropertyName = @name;
mediaTypePropertyValue = text()
Index.formatId False False
/d200:systemMetadata/formatId/text()
Index.formatType False False
/d200:systemMetadata/formatId/text()
Index.size False False
/d200:systemMetadata/size/text()
Processor: SolrField
Index.checksum False False
/d200:systemMetadata/checksum/text()
Index.submitter False False
/d200:systemMetadata/submitter/text()
Index.checksumAlgorithm False False
/d200:systemMetadata/checksum/@algorithm
Index.rightsHolder False False
/d200:systemMetadata/rightsHolder/text()
Index.replicationAllowed False False
/d200:systemMetadata/replicationPolicy/@replicationAllowed
Index.numberReplicas False False
/d200:systemMetadata/replicationPolicy/@numberReplicas
Index.preferredReplicationMN True False
/d200:systemMetadata/replicationPolicy/preferredMemberNode/
text()
Index.blockedReplicationMN True False
/d200:systemMetadata/replicationPolicy/blockedMemberNode/
text()
Index.obsoletes False False
/d200:systemMetadata/obsoletes/text()
Index.obsoletedBy False False
/d200:systemMetadata/obsoletedBy/text()
Index.dateUploaded False False
/d200:systemMetadata/dateUploaded/text()
Index.dateModified False False
/d200:systemMetadata/dateSysMetadataModified/text()
Index.datasource False False
/d200:systemMetadata/originMemberNode/text()
Index.authoritativeMN False False
/d200:systemMetadata/authoritativeMemberNode/text()
Index.replicaMN True False
/d200:systemMetadata/replica/replicaMemberNode/text()
Index.replicationStatus True False
/d200:systemMetadata/replica/replicationStatus/text()
Index.replicaVerifiedDate True False
/d200:systemMetadata/replica/replicaVerified/text()
Index.readPermission True True
/d200:systemMetadata/accessPolicy/allow[permission= 'read']/
subject/text()
Index.writePermission True True
/d200:systemMetadata/accessPolicy/allow[permission= 'write']
/subject/text()
Index.changePermission True True
/d200:systemMetadata/accessPolicy/allow[permission=
'changePermission']/subject/text()
Index.isPublic False False
(//accessPolicy/allow[permission= 'read']/subject[text()=
'public']/text() | //accessPolicy/allow[permission=
'write']/subject[text()='public']/text() | //
accessPolicy/allow[permission= 'changePermission']/
subject[text()='public']/text() | //rightsHolder[
text()='public']/text())[1]
Index.fileID    
Processor: ResolveSolrField
Converter:

Bean Configurations

systemMetadata200Subprocessor.id

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.SolrField">
                                     <constructor-arg name="name" value="id"/>
                                     <constructor-arg name="xpath" value="/d200:systemMetadata/identifier/text()"/>
                             </bean>

systemMetadata200Subprocessor.seriesId

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.SolrField">
                                     <constructor-arg name="name" value="seriesId"/>
                                     <constructor-arg name="xpath" value="/d200:systemMetadata/seriesId/text()"/>
                             </bean>

systemMetadata200Subprocessor.fileName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.SolrField">
                                     <constructor-arg name="name" value="fileName"/>
                                     <constructor-arg name="xpath" value="/d200:systemMetadata/fileName/text()"/>
                             </bean>

systemMetadata200Subprocessor.mediaType

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.SolrField">
                                     <constructor-arg name="name" value="mediaType"/>
                                     <constructor-arg name="xpath" value="/d200:systemMetadata/mediaType/@name"/>
                             </bean>

systemMetadata200Subprocessor.mediaTypeProperty

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="mediaTypePropertyListRoot">
                                             <constructor-arg name="name" value="mediaTypeProperty"/>
                             </bean>

systemMetadata200Subprocessor.formatId

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.SolrField">
                                     <constructor-arg name="name" value="formatId"/>
                                     <constructor-arg name="xpath" value="/d200:systemMetadata/formatId/text()"/>
                             </bean>

systemMetadata200Subprocessor.formatType

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.SolrField">
                                     <constructor-arg name="name" value="formatType"/>
                                     <constructor-arg name="xpath" value="/d200:systemMetadata/formatId/text()"/>
                                     <property name="converter" ref="formatIdToFormatTypeConverter"/>
                             </bean>

systemMetadata200Subprocessor.size

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.SolrField">
                                     <constructor-arg name="name" value="size"/>
                                     <constructor-arg name="xpath" value="/d200:systemMetadata/size/text()"/>
                             </bean>

systemMetadata200Subprocessor.checksum

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.SolrField">
                                     <constructor-arg name="name" value="checksum"/>
                                     <constructor-arg name="xpath" value="/d200:systemMetadata/checksum/text()"/>
                             </bean>

systemMetadata200Subprocessor.submitter

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.SolrField">
                                     <constructor-arg name="name" value="submitter"/>
                                     <constructor-arg name="xpath" value="/d200:systemMetadata/submitter/text()"/>
                             </bean>

systemMetadata200Subprocessor.checksumAlgorithm

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.SolrField">
                                     <constructor-arg name="name" value="checksumAlgorithm"/>
                                     <constructor-arg name="xpath" value="/d200:systemMetadata/checksum/@algorithm"/>
                             </bean>

systemMetadata200Subprocessor.rightsHolder

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.SolrField">
                                     <constructor-arg name="name" value="rightsHolder"/>
                                     <constructor-arg name="xpath" value="/d200:systemMetadata/rightsHolder/text()"/>
                             </bean>

systemMetadata200Subprocessor.replicationAllowed

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.SolrField">
                                     <constructor-arg name="name" value="replicationAllowed"/>
                                     <constructor-arg name="xpath" value="/d200:systemMetadata/replicationPolicy/@replicationAllowed"/>
                             </bean>

systemMetadata200Subprocessor.numberReplicas

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.SolrField">
                                     <constructor-arg name="name" value="numberReplicas"/>
                                     <constructor-arg name="xpath" value="/d200:systemMetadata/replicationPolicy/@numberReplicas"/>
                             </bean>

systemMetadata200Subprocessor.preferredReplicationMN

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.SolrField">
                                     <constructor-arg name="name" value="preferredReplicationMN"/>
                                     <constructor-arg name="xpath" value="/d200:systemMetadata/replicationPolicy/preferredMemberNode/text()"/>
                                     <property name="multivalue" value="true"/>
                             </bean>

systemMetadata200Subprocessor.blockedReplicationMN

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.SolrField">
                                     <constructor-arg name="name" value="blockedReplicationMN"/>
                                     <constructor-arg name="xpath" value="/d200:systemMetadata/replicationPolicy/blockedMemberNode/text()"/>
                                     <property name="multivalue" value="true"/>
                             </bean>

systemMetadata200Subprocessor.obsoletes

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.SolrField">
                                     <constructor-arg name="name" value="obsoletes"/>
                                     <constructor-arg name="xpath" value="/d200:systemMetadata/obsoletes/text()"/>
                             </bean>

systemMetadata200Subprocessor.obsoletedBy

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.SolrField">
                                     <constructor-arg name="name" value="obsoletedBy"/>
                                     <constructor-arg name="xpath" value="/d200:systemMetadata/obsoletedBy/text()"/>
                             </bean>

systemMetadata200Subprocessor.dateUploaded

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.SolrField">
                                     <constructor-arg name="name" value="dateUploaded"/>
                                     <constructor-arg name="xpath" value="/d200:systemMetadata/dateUploaded/text()"/>
                                     <property name="converter" ref="dateConverter"/>
                             </bean>

systemMetadata200Subprocessor.dateModified

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.SolrField">
                                     <constructor-arg name="name" value="dateModified"/>
                                     <constructor-arg name="xpath" value="/d200:systemMetadata/dateSysMetadataModified/text()"/>
                                     <property name="converter" ref="dateConverter"/>
                             </bean>

systemMetadata200Subprocessor.datasource

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.SolrField">
                                     <constructor-arg name="name" value="datasource"/>
                                     <constructor-arg name="xpath" value="/d200:systemMetadata/originMemberNode/text()"/>
                             </bean>

systemMetadata200Subprocessor.authoritativeMN

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.SolrField">
                                     <constructor-arg name="name" value="authoritativeMN"/>
                                     <constructor-arg name="xpath" value="/d200:systemMetadata/authoritativeMemberNode/text()"/>
                             </bean>

systemMetadata200Subprocessor.replicaMN

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.SolrField">
                                     <constructor-arg name="name" value="replicaMN"/>
                                     <constructor-arg name="xpath" value="/d200:systemMetadata/replica/replicaMemberNode/text()"/>
                                     <property name="multivalue" value="true"/>
                             </bean>

systemMetadata200Subprocessor.replicationStatus

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.SolrField">
                 <constructor-arg name="name" value="replicationStatus"/>
                 <constructor-arg name="xpath" value="/d200:systemMetadata/replica/replicationStatus/text()"/>
                 <property name="multivalue" value="true"/>
             </bean>

systemMetadata200Subprocessor.replicaVerifiedDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.SolrField">
                                     <constructor-arg name="name" value="replicaVerifiedDate"/>
                                     <constructor-arg name="xpath" value="/d200:systemMetadata/replica/replicaVerified/text()"/>
                                     <property name="multivalue" value="true"/>
                                     <property name="converter" ref="dateConverter"/>
                             </bean>

systemMetadata200Subprocessor.readPermission

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.SolrField">
                                     <constructor-arg name="name" value="readPermission"/>
                                     <constructor-arg name="xpath" value="/d200:systemMetadata/accessPolicy/allow[permission= 'read']/subject/text()"/>
                                     <property name="multivalue" value="true"/>
                                     <property name="dedupe" value="true"/>
                             </bean>

systemMetadata200Subprocessor.writePermission

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.SolrField">
                                     <constructor-arg name="name" value="writePermission"/>
                                     <constructor-arg name="xpath" value="/d200:systemMetadata/accessPolicy/allow[permission= 'write']/subject/text()"/>
                                     <property name="multivalue" value="true"/>
                                     <property name="dedupe" value="true"/>
                             </bean>

systemMetadata200Subprocessor.changePermission

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.SolrField">
                                     <constructor-arg name="name" value="changePermission"/>
                                     <constructor-arg name="xpath" value="/d200:systemMetadata/accessPolicy/allow[permission= 'changePermission']/subject/text()"/>
                                     <property name="multivalue" value="true"/>
                                     <property name="dedupe" value="true"/>
                             </bean>

systemMetadata200Subprocessor.isPublic

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.SolrField">
                                     <constructor-arg name="name" value="isPublic"/>
                                     <constructor-arg name="xpath" value="(//accessPolicy/allow[permission= 'read']/subject[text()='public']/text() | //accessPolicy/allow[permission= 'write']/subject[text()='public']/text() | //accessPolicy/allow[permission= 'changePermission']/subject[text()='public']/text() | //rightsHolder[text()='public']/text())[1]"/>
                                     <property name="converter" ref="booleanPublicConverter"/>
                             </bean>

systemMetadata200Subprocessor.fileID

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" class="org.dataone.cn.indexer.parser.ResolveSolrField">
                                     <constructor-arg name="name" value="dataUrl"/>
                     </bean>

Semantic Annotation from JSON

Describes parser configuration for: annotatorSubprocessor

Format IDs Processed

This parser processes the following DataONE format IDs:

  • AnnotatorJS 1.2.x Annotation model
    formatId: http://docs.annotatorjs.org/en/v1.2.x/annotation-format.html

A full list of DataONE format IDs can be found at https://cn.dataone.org/cn/v2/formats/

Fields

The following fields in the solr index are populated from values retrieved from this type of metadata document. Note that these are in addition to the information extracted from System Metadata Parser.

Solr Field Multi Dedupe Source
Index.sem_annotation False False
SELECT ?sem_annotation
WHERE {
                <$CONCEPT_URI> rdfs:subClassOf+ ?sem_annotation .
        }
Processor: SparqlField
Configuration: annotation.expansion
Index.sem_annotation_bioportal_sm False False
SELECT ?sem_annotation_bioportal_sm
WHERE {
                <$CONCEPT_URI> rdfs:subClassOf+ ?sem_annotation_bioportal_sm .
        }
Processor: SparqlField
Index.sem_annotation_esor_sm False False
SELECT ?sem_annotation_esor_sm
WHERE {
                <$CONCEPT_URI> rdfs:subClassOf+ ?sem_annotation_esor_sm .
        }
Processor: SparqlField
Index.sem_annotation_cosine_sm False False
SELECT ?sem_annotation_cosine_sm
WHERE {
                <$CONCEPT_URI> rdfs:subClassOf+ ?sem_annotation_cosine_sm .
        }
Processor: SparqlField

Bean Configurations

annotation.expansion

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" id="annotation.expansion" class="org.dataone.cn.indexer.annotation.SparqlField">
             <constructor-arg name="name" value="sem_annotation"/>
             <constructor-arg name="query">
                     <value>
                             <![CDATA[
                             PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
                             PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
                             PREFIX owl: <http://www.w3.org/2002/07/owl#>

                             SELECT ?sem_annotation
                             WHERE {
                                             <$CONCEPT_URI> rdfs:subClassOf+ ?sem_annotation .
                                     }
                              ]]>
                     </value>
             </constructor-arg>
             <!--property name="multivalue" value="false" /-->
     </bean>

annotation.bioportal.expansion

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" id="annotation.bioportal.expansion" class="org.dataone.cn.indexer.annotation.SparqlField">
             <constructor-arg name="name" value="sem_annotation_bioportal_sm"/>
             <constructor-arg name="query">
                     <value>
                             <![CDATA[
                             PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
                             PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
                             PREFIX owl: <http://www.w3.org/2002/07/owl#>

                             SELECT ?sem_annotation_bioportal_sm
                             WHERE {
                                             <$CONCEPT_URI> rdfs:subClassOf+ ?sem_annotation_bioportal_sm .
                                     }
                              ]]>
                     </value>
             </constructor-arg>
     </bean>

annotation.esor.expansion

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" id="annotation.esor.expansion" class="org.dataone.cn.indexer.annotation.SparqlField">
             <constructor-arg name="name" value="sem_annotation_esor_sm"/>
             <constructor-arg name="query">
                     <value>
                             <![CDATA[
                             PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
                             PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
                             PREFIX owl: <http://www.w3.org/2002/07/owl#>

                             SELECT ?sem_annotation_esor_sm
                             WHERE {
                                             <$CONCEPT_URI> rdfs:subClassOf+ ?sem_annotation_esor_sm .
                                     }
                              ]]>
                     </value>
             </constructor-arg>
     </bean>

annotation.cosine.expansion

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" id="annotation.cosine.expansion" class="org.dataone.cn.indexer.annotation.SparqlField">
             <constructor-arg name="name" value="sem_annotation_cosine_sm"/>
             <constructor-arg name="query">
                     <value>
                             <![CDATA[
                             PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
                             PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
                             PREFIX owl: <http://www.w3.org/2002/07/owl#>

                             SELECT ?sem_annotation_cosine_sm
                             WHERE {
                                             <$CONCEPT_URI> rdfs:subClassOf+ ?sem_annotation_cosine_sm .
                                     }
                              ]]>
                     </value>
             </constructor-arg>
     </bean>

DataCite 3

Describes parser configuration for: datacite3Subprocessor

Format IDs Processed

This parser processes the following DataONE format IDs:

  • DataCite Metadata Schema version 3.1
    formatId: http://datacite.org/schema/kernel-3.1
  • DataCite Metadata Schema version 3.0
    formatId: http://datacite.org/schema/kernel-3.0

A full list of DataONE format IDs can be found at https://cn.dataone.org/cn/v2/formats/

Fields

The following fields in the solr index are populated from values retrieved from this type of metadata document. Note that these are in addition to the information extracted from System Metadata Parser.

Solr Field Multi Dedupe Source
Index.author False False
(/datacite:resource/datacite:creators/datacite:creator[1]/
datacite:creatorName[1]/text())[1]
Processor: SolrField
Configuration: datacite.author
Index.authorLastName False False
(/datacite:resource/datacite:creators/datacite:creator[1]/
datacite:creatorName[1]/text())[1]
Processor: SolrField
Configuration: datacite.author_lname
Index.authorSurName False False
(/datacite:resource/datacite:creators/datacite:creator[1]/
datacite:creatorName[1]/text())[1]
Processor: SolrField
Configuration: datacite.authorSurName
Index.authorSurNameSort False False
(/datacite:resource/datacite:creators/datacite:creator[1]/
datacite:creatorName[1]/text())[1]
Processor: SolrField
Index.authorGivenName False False
(/datacite:resource/datacite:creators/datacite:creator[1]/
datacite:creatorName[1]/text())[1]
Processor: SolrField
Index.authorGivenNameSort False False
(/datacite:resource/datacite:creators/datacite:creator[1]/
datacite:creatorName[1]/text())[1]
Processor: SolrField
Index.abstract False False
(/datacite:resource/datacite:descriptions/
datacite:description[@descriptionType='Abstract'][1]
/text())[1]
Processor: SolrField
Configuration: datacite.abstract
Index.title False False
(/datacite:resource/datacite:titles/datacite:title[1]/text()
)[1]
Processor: SolrField
Configuration: datacite.title
Index.pubDate False False
(/datacite:resource/datacite:publicationYear[1]/text())[1]
Processor: SolrField
Configuration: datacite.pubDate
Index.keywords True True
/datacite:resource/datacite:subjects/datacite:subject/text()
Processor: SolrField
Configuration: datacite.keywords
Index.beginDate False False
(/datacite:resource/datacite:dates/datacite:date[@dateType=
'Collected'][1]/text())[1]
Processor: SolrField
Configuration: datacite.beginDate
Index.endDate False False
(/datacite:resource/datacite:dates/datacite:date[@dateType=
'Collected'][1]/text())[1]
Processor: SolrField
Configuration: datacite.endDate
Index.origin True True
/datacite:resource/datacite:creators/datacite:creator/
datacite:creatorName/text()
Processor: SolrField
Configuration: datacite.origin
Index.investigator True True
/datacite:resource/datacite:creators/datacite:creator/
datacite:creatorName/text() | /datacite:resource/
datacite:contributors/datacite:contributor[
@contributorType='DataCollector']/
datacite:contributorName/text()
Processor: SolrField
Configuration: datacite.investigator
Index.contactOrganization True True
/datacite:resource/datacite:contributors/
datacite:contributor[@contributorType=
'HostingInstitution']/datacite:contributorName/
text()
Processor: SolrField
Index.site True True
/datacite:resource/datacite:geoLocations/
datacite:geoLocation/datacite:geoLocationPlace/
text()
Processor: SolrField
Configuration: datacite.site
  False False
| Processor: `DataCiteSpatialBoxBoundingCoordinatesSolrField <https://repository.dataone.org/software/cicore/trunk/cn/d1_cn_index_processor/src/main/java/org/dataone/cn/indexer/parser/DataCiteSpatialBoxBoundingCoordinatesSolrField.java>`_
| Configuration: `datacite.boxSpatialBoundCoordinates`_
  False False
| Processor: `DataCiteSpatialBoxGeohashSolrField <https://repository.dataone.org/software/cicore/trunk/cn/d1_cn_index_processor/src/main/java/org/dataone/cn/indexer/parser/DataCiteSpatialBoxGeohashSolrField.java>`_
| Configuration: `datacite.boxSpatialGeohash`_
Index.fileID    
Processor: ResolveSolrField
Configuration: datacite.fileID
Notes: SolrField which configures the resolve url for the document being processed.
Converter:
Index.text False False
//*/text()
Configuration: datacite.fullText

Bean Configurations

datacite.author

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="datacite.author" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="author"/>
             <constructor-arg name="xpath" value="(/datacite:resource/datacite:creators/datacite:creator[1]/datacite:creatorName[1]/text())[1]"/>
     </bean>

datacite.author_lname

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="datacite.author_lname" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorLastName"/>
             <constructor-arg name="xpath" value="(/datacite:resource/datacite:creators/datacite:creator[1]/datacite:creatorName[1]/text())[1]"/>
             <property name="substringBefore" value="true"/>
             <property name="splitOnString" value=","/>
     </bean>

datacite.authorSurName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="datacite.authorSurName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurName"/>
             <constructor-arg name="xpath" value="(/datacite:resource/datacite:creators/datacite:creator[1]/datacite:creatorName[1]/text())[1]"/>
             <property name="substringBefore" value="true"/>
             <property name="splitOnString" value=","/>
     </bean>

datacite.authorSurNameSort

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="datacite.authorSurNameSort" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurNameSort"/>
             <constructor-arg name="xpath" value="(/datacite:resource/datacite:creators/datacite:creator[1]/datacite:creatorName[1]/text())[1]"/>
             <property name="substringBefore" value="true"/>
             <property name="splitOnString" value=","/>
     </bean>

datacite.authorGivenName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="datacite.authorGivenName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorGivenName"/>
             <constructor-arg name="xpath" value="(/datacite:resource/datacite:creators/datacite:creator[1]/datacite:creatorName[1]/text())[1]"/>
             <property name="substringAfter" value="true"/>
             <property name="splitOnString" value=","/>
     </bean>

datacite.authorGivenNameSort

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="datacite.authorGivenNameSort" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorGivenNameSort"/>
             <constructor-arg name="xpath" value="(/datacite:resource/datacite:creators/datacite:creator[1]/datacite:creatorName[1]/text())[1]"/>
             <property name="substringAfter" value="true"/>
             <property name="splitOnString" value=","/>
     </bean>

datacite.abstract

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="datacite.abstract" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="abstract"/>
             <constructor-arg name="xpath" value="(/datacite:resource/datacite:descriptions/datacite:description[@descriptionType='Abstract'][1]/text())[1]"/>
             <property name="multivalue" value="false"/>
             <property name="dedupe" value="false"/>
     </bean>

datacite.title

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="datacite.title" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="title"/>
             <constructor-arg name="xpath" value="(/datacite:resource/datacite:titles/datacite:title[1]/text())[1]"/>
     </bean>

datacite.pubDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="datacite.pubDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="pubDate"/>
             <constructor-arg name="xpath" value="(/datacite:resource/datacite:publicationYear[1]/text())[1]"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

datacite.keywords

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="datacite.keywords" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="keywords"/>
             <constructor-arg name="xpath" value="/datacite:resource/datacite:subjects/datacite:subject/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

datacite.beginDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="datacite.beginDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="beginDate"/>
             <constructor-arg name="xpath" value="(/datacite:resource/datacite:dates/datacite:date[@dateType='Collected'][1]/text())[1]"/>
             <property name="substringBefore" value="true"/>
             <property name="splitOnString" value="/"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

datacite.endDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="datacite.endDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="endDate"/>
             <constructor-arg name="xpath" value="(/datacite:resource/datacite:dates/datacite:date[@dateType='Collected'][1]/text())[1]"/>
             <property name="substringAfter" value="true"/>
             <property name="splitOnString" value="/"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

datacite.origin

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="datacite.origin" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="origin"/>
             <constructor-arg name="xpath" value="/datacite:resource/datacite:creators/datacite:creator/datacite:creatorName/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

datacite.investigator

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="datacite.investigator" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="investigator"/>
             <constructor-arg name="xpath" value="/datacite:resource/datacite:creators/datacite:creator/datacite:creatorName/text() | /datacite:resource/datacite:contributors/datacite:contributor[@contributorType='DataCollector']/datacite:contributorName/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

datacite.contactOrganization

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="datacite.contactOrganization" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="contactOrganization"/>
             <constructor-arg name="xpath" value="/datacite:resource/datacite:contributors/datacite:contributor[@contributorType='HostingInstitution']/datacite:contributorName/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

datacite.site

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="datacite.site" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="site"/>
             <constructor-arg name="xpath" value="/datacite:resource/datacite:geoLocations/datacite:geoLocation/datacite:geoLocationPlace/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

datacite.boxSpatialBoundCoordinates

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="datacite.boxSpatialBoundCoordinates" class="org.dataone.cn.indexer.parser.DataCiteSpatialBoxBoundingCoordinatesSolrField">
             <property name="pointXPath" value="(/datacite:resource/datacite:geoLocations/datacite:geoLocation/datacite:geoLocationPoint[1]/text())[1]"/>
             <property name="boxXPath" value="(/datacite:resource/datacite:geoLocations/datacite:geoLocation/datacite:geoLocationBox[1]/text())[1]"/>
     </bean>

datacite.boxSpatialGeohash

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="datacite.boxSpatialGeohash" class="org.dataone.cn.indexer.parser.DataCiteSpatialBoxGeohashSolrField">
             <property name="pointXPath" value="(/datacite:resource/datacite:geoLocations/datacite:geoLocation/datacite:geoLocationPoint[1]/text())[1]"/>
             <property name="boxXPath" value="(/datacite:resource/datacite:geoLocations/datacite:geoLocation/datacite:geoLocationBox[1]/text())[1]"/>
     </bean>

datacite.fileID

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="datacite.fileID" class="org.dataone.cn.indexer.parser.ResolveSolrField">
             <constructor-arg name="name" value="fileID"/>
     </bean>

datacite.fullText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="datacite.fullText" class="org.dataone.cn.indexer.parser.FullTextSolrField">
             <constructor-arg name="name" value="text"/>
             <constructor-arg name="xpath" value="//*/text()"/>
             <property name="combineNodes" value="true"/>
     </bean>

Dryad 3.0

Describes parser configuration for: dryad30Subprocessor

Format IDs Processed

This parser processes the following DataONE format IDs:

  • Dryad Metadata Application Profile Version 3.0
    formatId: http://purl.org/dryad/terms/

A full list of DataONE format IDs can be found at https://cn.dataone.org/cn/v2/formats/

Fields

The following fields in the solr index are populated from values retrieved from this type of metadata document. Note that these are in addition to the information extracted from System Metadata Parser.

Solr Field Multi Dedupe Source
Index.abstract False False
//dcterms:description[1]/text()
Processor: SolrField
Configuration: dryad.abstract
Index.author False False
//dcterms:creator[1]/text()
Processor: SolrField
Configuration: dryad.author
Index.authorSurName False False
//dcterms:creator[1]/text()
Processor: SolrField
Configuration: dryad.authorSurName
Index.authorSurNameSort False False
//dcterms:creator[1]/text()
Processor: SolrField
Index.authorGivenName False False
//dcterms:creator[1]/text()
Processor: SolrField
Configuration: dryad.authorGivenName
Index.authorGivenNameSort False False
//dcterms:creator[1]/text()
Processor: SolrField
Index.investigator True True
//dcterms:creator/text()
Processor: SolrField
Configuration: dryad.investigator
Index.keywords True False
//dcterms:subject/text()
Processor: SolrField
Configuration: dryad.keywords
Index.origin True True
//dcterms:creator/text()
Processor: SolrField
Configuration: dryad.origin
Index.pubDate False False
//dcterms:dateSubmitted/text()
Processor: SolrField
Configuration: dryad.pubDate
Index.site True False
//dcterms:spatial/text()
Processor: SolrField
Configuration: dryad.site
Index.title False False
//dcterms:title[1]/text()
Processor: SolrField
Configuration: dryad.title
Index.scientificName True False
//dwc:scientificName/text()
Processor: SolrField
Configuration: dryad.scientificName
Index.fileID    
Processor: ResolveSolrField
Configuration: dryad.fileID
Notes: SolrField which configures the resolve url for the document being processed.
Converter:
Index.text False False
//*/text()
Configuration: dryad.fullText

Bean Configurations

dryad.abstract

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.abstract" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="abstract"/>
             <constructor-arg name="xpath" value="//dcterms:description[1]/text()"/>
     </bean>

dryad.author

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.author" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="author"/>
             <constructor-arg name="xpath" value="//dcterms:creator[1]/text()"/>
     </bean>

dryad.authorSurName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.authorSurName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurName"/>
             <constructor-arg name="xpath" value="//dcterms:creator[1]/text()"/>
             <property name="substringBefore" value="true"/>
             <property name="splitOnString" value=","/>
     </bean>

dryad.authorSurNameSort

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.authorSurNameSort" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurNameSort"/>
             <constructor-arg name="xpath" value="//dcterms:creator[1]/text()"/>
             <property name="substringBefore" value="true"/>
             <property name="splitOnString" value=","/>
     </bean>

dryad.authorGivenName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.authorGivenName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorGivenName"/>
             <constructor-arg name="xpath" value="//dcterms:creator[1]/text()"/>
             <property name="substringAfter" value="true"/>
             <property name="splitOnString" value=","/>
     </bean>

dryad.authorGivenNameSort

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.authorGivenNameSort" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorGivenNameSort"/>
             <constructor-arg name="xpath" value="//dcterms:creator[1]/text()"/>
             <property name="substringAfter" value="true"/>
             <property name="splitOnString" value=","/>
     </bean>

dryad.investigator

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.investigator" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="investigator"/>
             <constructor-arg name="xpath" value="//dcterms:creator/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

dryad.keywords

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.keywords" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="keywords"/>
             <constructor-arg name="xpath" value="//dcterms:subject/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

dryad.origin

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.origin" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="origin"/>
             <constructor-arg name="xpath" value="//dcterms:creator/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

dryad.pubDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.pubDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="pubDate"/>
             <constructor-arg name="xpath" value="//dcterms:dateSubmitted/text()"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

dryad.site

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.site" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="site"/>
             <constructor-arg name="xpath" value="//dcterms:spatial/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

dryad.title

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.title" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="title"/>
             <constructor-arg name="xpath" value="//dcterms:title[1]/text()"/>
     </bean>

dryad.scientificName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.scientificName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="scientificName"/>
             <constructor-arg name="xpath" value="//dwc:scientificName/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

dryad.fileID

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.fileID" class="org.dataone.cn.indexer.parser.ResolveSolrField">
             <constructor-arg name="name" value="fileID"/>
     </bean>

dryad.fullText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.fullText" class="org.dataone.cn.indexer.parser.FullTextSolrField">
             <constructor-arg name="name" value="text"/>
             <constructor-arg name="xpath" value="//*/text()"/>
             <property name="combineNodes" value="true"/>
     </bean>

Dryad 3.1

Describes parser configuration for: dryad31Subprocessor

Format IDs Processed

This parser processes the following DataONE format IDs:

  • Dryad Metadata Application Profile Version 3.1
    formatId: http://datadryad.org/profile/v3.1

A full list of DataONE format IDs can be found at https://cn.dataone.org/cn/v2/formats/

Fields

The following fields in the solr index are populated from values retrieved from this type of metadata document. Note that these are in addition to the information extracted from System Metadata Parser.

Solr Field Multi Dedupe Source
Index.abstract False False
//dcterms:description[1]/text()
Processor: SolrField
Configuration: dryad.abstract
Index.author False False
//dcterms:creator[1]/text()
Processor: SolrField
Configuration: dryad.author
Index.authorSurName False False
//dcterms:creator[1]/text()
Processor: SolrField
Configuration: dryad.authorSurName
Index.authorSurNameSort False False
//dcterms:creator[1]/text()
Processor: SolrField
Index.authorGivenName False False
//dcterms:creator[1]/text()
Processor: SolrField
Configuration: dryad.authorGivenName
Index.authorGivenNameSort False False
//dcterms:creator[1]/text()
Processor: SolrField
Index.investigator True True
//dcterms:creator/text()
Processor: SolrField
Configuration: dryad.investigator
Index.keywords True False
//dcterms:subject/text()
Processor: SolrField
Configuration: dryad.keywords
Index.origin True True
//dcterms:creator/text()
Processor: SolrField
Configuration: dryad.origin
Index.pubDate False False
//dcterms:dateSubmitted/text()
Processor: SolrField
Configuration: dryad.pubDate
Index.site True False
//dcterms:spatial/text()
Processor: SolrField
Configuration: dryad.site
Index.title False False
//dcterms:title[1]/text()
Processor: SolrField
Configuration: dryad.title
Index.scientificName True False
//dwc:scientificName/text()
Processor: SolrField
Configuration: dryad.scientificName
Index.fileID    
Processor: ResolveSolrField
Configuration: dryad.fileID
Notes: SolrField which configures the resolve url for the document being processed.
Converter:
Index.text False False
//*/text()
Configuration: dryad.fullText

Bean Configurations

dryad.abstract

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.abstract" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="abstract"/>
             <constructor-arg name="xpath" value="//dcterms:description[1]/text()"/>
     </bean>

dryad.author

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.author" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="author"/>
             <constructor-arg name="xpath" value="//dcterms:creator[1]/text()"/>
     </bean>

dryad.authorSurName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.authorSurName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurName"/>
             <constructor-arg name="xpath" value="//dcterms:creator[1]/text()"/>
             <property name="substringBefore" value="true"/>
             <property name="splitOnString" value=","/>
     </bean>

dryad.authorSurNameSort

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.authorSurNameSort" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurNameSort"/>
             <constructor-arg name="xpath" value="//dcterms:creator[1]/text()"/>
             <property name="substringBefore" value="true"/>
             <property name="splitOnString" value=","/>
     </bean>

dryad.authorGivenName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.authorGivenName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorGivenName"/>
             <constructor-arg name="xpath" value="//dcterms:creator[1]/text()"/>
             <property name="substringAfter" value="true"/>
             <property name="splitOnString" value=","/>
     </bean>

dryad.authorGivenNameSort

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.authorGivenNameSort" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorGivenNameSort"/>
             <constructor-arg name="xpath" value="//dcterms:creator[1]/text()"/>
             <property name="substringAfter" value="true"/>
             <property name="splitOnString" value=","/>
     </bean>

dryad.investigator

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.investigator" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="investigator"/>
             <constructor-arg name="xpath" value="//dcterms:creator/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

dryad.keywords

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.keywords" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="keywords"/>
             <constructor-arg name="xpath" value="//dcterms:subject/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

dryad.origin

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.origin" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="origin"/>
             <constructor-arg name="xpath" value="//dcterms:creator/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

dryad.pubDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.pubDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="pubDate"/>
             <constructor-arg name="xpath" value="//dcterms:dateSubmitted/text()"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

dryad.site

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.site" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="site"/>
             <constructor-arg name="xpath" value="//dcterms:spatial/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

dryad.title

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.title" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="title"/>
             <constructor-arg name="xpath" value="//dcterms:title[1]/text()"/>
     </bean>

dryad.scientificName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.scientificName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="scientificName"/>
             <constructor-arg name="xpath" value="//dwc:scientificName/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

dryad.fileID

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.fileID" class="org.dataone.cn.indexer.parser.ResolveSolrField">
             <constructor-arg name="name" value="fileID"/>
     </bean>

dryad.fullText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dryad.fullText" class="org.dataone.cn.indexer.parser.FullTextSolrField">
             <constructor-arg name="name" value="text"/>
             <constructor-arg name="xpath" value="//*/text()"/>
             <property name="combineNodes" value="true"/>
     </bean>

Dublin Core, Extended

Describes parser configuration for: dublinCoreExtendedSubprocessor

Format IDs Processed

This parser processes the following DataONE format IDs:

  • DataONE Dublin Core Extended v1.0
    formatId: http://ns.dataone.org/metadata/schema/onedcx/v1.0

A full list of DataONE format IDs can be found at https://cn.dataone.org/cn/v2/formats/

Fields

The following fields in the solr index are populated from values retrieved from this type of metadata document. Note that these are in addition to the information extracted from System Metadata Parser.

Solr Field Multi Dedupe Source
Index.abstract False False
//*[local-name() = 'abstract'][1]/text()
Processor: SolrField
Configuration: dc.abstract
Index.author False False
//*[local-name() = 'creator'][1]/text()
Processor: SolrField
Configuration: dc.author
Index.authorSurName False False
//*[local-name() = 'creator'][1]/text()
Processor: SolrField
Configuration: dc.authorSurName
Index.authorSurNameSort False False
//*[local-name() = 'creator'][1]/text()
Processor: SolrField
Configuration: dc.authorSurNameSort
Index.contactOrganization True True
//*[local-name() = 'creator']/text()
Processor: SolrField
Configuration: dc.contactOrganization
Index.investigator True True
//*[local-name() = 'creator']/text()
Processor: SolrField
Configuration: dc.investigator
Index.origin True True
//*[local-name() = 'creator']/text()
Processor: SolrField
Configuration: dc.origin
Index.pubDate False False
//*[local-name() = 'dateSubmitted']/text()
Processor: SolrField
Configuration: dc.pubDate
Index.title False False
(//*[local-name() = 'title'][1]/text())[1]
Processor: SolrField
Configuration: dc.title
Index.keywords True False
//*[local-name() = 'subject']/text()
Processor: SolrField
Configuration: dc.keywords
Index.beginDate False False
//*[local-name() = 'temporal'][not(@xsi:type=
'dcterms:Period') and not(@xsi:type='dc:Period')
and not(@xsi:type='Period')]/text()
Processor: SolrField
Configuration: dc.beginDate
Index.endDate False False
//*[local-name() = 'temporal'][not(@xsi:type=
'dcterms:Period') and not(@xsi:type='dc:Period')
and not(@xsi:type='Period')]/text()
Processor: SolrField
Configuration: dc.endDate
Index.beginDate, Index.endDate False False
//*[local-name() = 'temporal'][@xsi:type='dcterms:Period'
or @xsi:type='dc:Period' or @xsi:type='Period']/
text()
Configuration: dc.datePeriod
Index.site True True
//*[local-name() = 'spatial'][not(@xsi:type = 'dcterms:Box')
 and not(@xsi:type = 'dc:Box') and not(@xsi:type =
'Box')]/text()
Processor: SolrField
Configuration: dc.site
Index.northBoundCoord, Index.southBoundCoord, Index.eastBoundCoord, Index.westBoundCoord False False
//*[local-name() = 'spatial'][@xsi:type='dcterms:Box' or
@xsi:type='dc:Box' or @xsi:type='Box'][1]/text()[1]
Index.geohash_1, Index.geohash_2, Index.geohash_3, Index.geohash_4, Index.geohash_5, Index.geohash_6, Index.geohash_7, Index.geohash_8, Index.geohash_9 False False
//*[local-name() = 'spatial'][@xsi:type='dcterms:Box' or
@xsi:type='dc:Box' or @xsi:type='Box'][1]/text()[1]
Index.fileID    
Processor: ResolveSolrField
Configuration: dc.fileID
Notes: SolrField which configures the resolve url for the document being processed.
Converter:
Index.text False False
//*/text()
Configuration: dc.fullText

Bean Configurations

dc.abstract

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.abstract" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="abstract"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'abstract'][1]/text()"/>
     </bean>

dc.author

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.author" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="author"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'creator'][1]/text()"/>
     </bean>

dc.authorSurName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.authorSurName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurName"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'creator'][1]/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

dc.authorSurNameSort

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.authorSurNameSort" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurNameSort"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'creator'][1]/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

dc.contactOrganization

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.contactOrganization" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="contactOrganization"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'creator']/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

dc.investigator

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.investigator" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="investigator"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'creator']/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

dc.origin

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.origin" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="origin"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'creator']/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

dc.pubDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.pubDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="pubDate"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'dateSubmitted']/text()"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

dc.title

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.title" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="title"/>
             <constructor-arg name="xpath" value="(//*[local-name() = 'title'][1]/text())[1]"/>
     </bean>

dc.keywords

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.keywords" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="keywords"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'subject']/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

dc.beginDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.beginDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="beginDate"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'temporal'][not(@xsi:type='dcterms:Period') and not(@xsi:type='dc:Period') and not(@xsi:type='Period')]/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

dc.endDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.endDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="endDate"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'temporal'][not(@xsi:type='dcterms:Period') and not(@xsi:type='dc:Period') and not(@xsi:type='Period')]/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

dc.datePeriod

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.datePeriod" class="org.dataone.cn.indexer.parser.TemporalPeriodSolrField">
             <constructor-arg name="xpath" value="//*[local-name() = 'temporal'][@xsi:type='dcterms:Period' or @xsi:type='dc:Period' or @xsi:type='Period']/text()"/>
     </bean>

dc.site

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.site" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="site"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'spatial'][not(@xsi:type = 'dcterms:Box') and not(@xsi:type = 'dc:Box') and not(@xsi:type = 'Box')]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

dc.boxSpatialBoundCoordinates

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.boxSpatialBoundCoordinates" class="org.dataone.cn.indexer.parser.DublinCoreSpatialBoxBoundingCoordinatesSolrField">
             <constructor-arg name="xpath" value="//*[local-name() = 'spatial'][@xsi:type='dcterms:Box' or @xsi:type='dc:Box' or @xsi:type='Box'][1]/text()[1]"/>
     </bean>

dc.boxSpatialGeohash

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.boxSpatialGeohash" class="org.dataone.cn.indexer.parser.DublinCoreSpatialBoxGeohashSolrField">
             <constructor-arg name="xpath" value="//*[local-name() = 'spatial'][@xsi:type='dcterms:Box' or @xsi:type='dc:Box' or @xsi:type='Box'][1]/text()[1]"/>
     </bean>

dc.fileID

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.fileID" class="org.dataone.cn.indexer.parser.ResolveSolrField">
             <constructor-arg name="name" value="fileID"/>
     </bean>

dc.fullText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.fullText" class="org.dataone.cn.indexer.parser.FullTextSolrField">
             <constructor-arg name="name" value="text"/>
             <constructor-arg name="xpath" value="//*/text()"/>
             <property name="combineNodes" value="true"/>
     </bean>

Dublin Core OAI Subprocessor

Describes parser configuration for: dublinCoreOAISubprocessor

Format IDs Processed

This parser processes the following DataONE format IDs:

  • OAI-PMH Dublin Core v2.0, with online related resource
    formatId: http://www.openarchives.org/OAI/2.0/oai_dc/

A full list of DataONE format IDs can be found at https://cn.dataone.org/cn/v2/formats/

Fields

The following fields in the solr index are populated from values retrieved from this type of metadata document. Note that these are in addition to the information extracted from System Metadata Parser.

Solr Field Multi Dedupe Source
Index.abstract False False
//*[local-name() = 'description'][1]/text()
Processor: SolrField
Configuration: dc.description
Index.originator True True
//*[local-name() = 'publisher']/text()
Processor: SolrField
Configuration: dc.publisher
Index.pubDate False False
//*[local-name() = 'date'][1]/text()
Processor: SolrField
Configuration: dc.date
Index.investigator True True
//*[local-name() = 'contributor']/text()
Processor: SolrField
Configuration: dc.contributor
Index.author False False
//*[local-name() = 'creator'][1]/text()
Processor: SolrField
Configuration: dc.author
Index.authorSurName False False
//*[local-name() = 'creator'][1]/text()
Processor: SolrField
Configuration: dc.authorSurName
Index.authorSurNameSort False False
//*[local-name() = 'creator'][1]/text()
Processor: SolrField
Configuration: dc.authorSurNameSort
Index.contactOrganization True True
//*[local-name() = 'creator']/text()
Processor: SolrField
Configuration: dc.contactOrganization
Index.investigator True True
//*[local-name() = 'creator']/text()
Processor: SolrField
Configuration: dc.investigator
Index.origin True True
//*[local-name() = 'creator']/text()
Processor: SolrField
Configuration: dc.origin
Index.title False False
(//*[local-name() = 'title'][1]/text())[1]
Processor: SolrField
Configuration: dc.title
Index.keywords True False
//*[local-name() = 'subject']/text()
Processor: SolrField
Configuration: dc.keywords
Index.serviceEndpoint True False
//*[local-name() = 'relation']/text()
Processor: SolrField
Configuration: dc:relation
Index.text False False
//*/text()
Configuration: dc.fullText

Bean Configurations

dc.description

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.description" class="org.dataone.cn.indexer.parser.SolrField">
     <constructor-arg name="name" value="abstract"/>
     <constructor-arg name="xpath" value="//*[local-name() = 'description'][1]/text()"/>
 </bean>

dc.publisher

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.publisher" class="org.dataone.cn.indexer.parser.SolrField">
     <constructor-arg name="name" value="originator"/>
     <constructor-arg name="xpath" value="//*[local-name() = 'publisher']/text()"/>
     <property name="multivalue" value="true"/>
     <property name="dedupe" value="true"/>
 </bean>

dc.date

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.date" class="org.dataone.cn.indexer.parser.SolrField">
     <constructor-arg name="name" value="pubDate"/>
     <constructor-arg name="xpath" value="//*[local-name() = 'date'][1]/text()"/>
     <property name="converter" ref="dateConverter"/>
 </bean>

dc.contributor

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.contributor" class="org.dataone.cn.indexer.parser.SolrField">
     <constructor-arg name="name" value="investigator"/>
     <constructor-arg name="xpath" value="//*[local-name() = 'contributor']/text()"/>
     <property name="multivalue" value="true"/>
     <property name="dedupe" value="true"/>
 </bean>

dc.author

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.author" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="author"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'creator'][1]/text()"/>
     </bean>

dc.authorSurName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.authorSurName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurName"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'creator'][1]/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

dc.authorSurNameSort

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.authorSurNameSort" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurNameSort"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'creator'][1]/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

dc.contactOrganization

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.contactOrganization" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="contactOrganization"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'creator']/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

dc.investigator

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.investigator" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="investigator"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'creator']/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

dc.origin

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.origin" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="origin"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'creator']/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

dc.title

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.title" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="title"/>
             <constructor-arg name="xpath" value="(//*[local-name() = 'title'][1]/text())[1]"/>
     </bean>

dc.keywords

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.keywords" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="keywords"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'subject']/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

dc:relation

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc:relation" class="org.dataone.cn.indexer.parser.SolrField">
         <constructor-arg name="name" value="serviceEndpoint"/>
     <constructor-arg name="xpath" value="//*[local-name() = 'relation']/text()"/>
     <property name="multivalue" value="true"/>
 </bean>

dc.fullText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.fullText" class="org.dataone.cn.indexer.parser.FullTextSolrField">
             <constructor-arg name="name" value="text"/>
             <constructor-arg name="xpath" value="//*/text()"/>
             <property name="combineNodes" value="true"/>
     </bean>

Ecological Markup Language, v2.0.0

Describes parser configuration for: eml200Subprocessor

Format IDs Processed

This parser processes the following DataONE format IDs:

  • Ecological Metadata Language, version 2.0.0
    formatId: eml://ecoinformatics.org/eml-2.0.0

A full list of DataONE format IDs can be found at https://cn.dataone.org/cn/v2/formats/

Fields

The following fields in the solr index are populated from values retrieved from this type of metadata document. Note that these are in addition to the information extracted from System Metadata Parser.

Solr Field Multi Dedupe Source
Index.abstract False False
//dataset/abstract/descendant::text()
Processor: MergeSolrField
Configuration: eml.abstract
Index.keywords True True
//dataset/keywordSet/keyword/text()
Processor: SolrField
Configuration: eml.keywords
Index.title False False
//dataset/title/text()
Processor: SolrField
Configuration: eml.title
Index.project True False
//dataset/project/title/text()
Processor: SolrField
Configuration: eml.project
Index.southBoundCoord False False
//dataset/coverage/geographicCoverage/boundingCoordinates/
southBoundingCoordinate/text()
Processor: SolrField
Configuration: eml.southBoundCoord
Index.northBoundCoord False False
//dataset/coverage/geographicCoverage/boundingCoordinates/
northBoundingCoordinate/text()
Processor: SolrField
Configuration: eml.northBoundCoord
Index.westBoundCoord False False
//dataset/coverage/geographicCoverage/boundingCoordinates/
westBoundingCoordinate/text()
Processor: SolrField
Configuration: eml.westBoundCoord
Index.eastBoundCoord False False
//dataset/coverage/geographicCoverage/boundingCoordinates/
eastBoundingCoordinate/text()
Processor: SolrField
Configuration: eml.eastBoundCoord
Index.site True False
//dataset/coverage/geographicCoverage/geographicDescription/
text()
Processor: SolrField
Configuration: eml.site
Index.beginDate False False
//dataset/coverage/temporalCoverage/rangeOfDates/beginDate/
calendarDate/text() | //dataset/coverage/
temporalCoverage/singleDateTime/calendarDate/text()
Processor: SolrField
Configuration: eml.beginDate
Index.endDate False False
//dataset/coverage/temporalCoverage/rangeOfDates/endDate/
calendarDate/text() | //dataset/coverage/
temporalCoverage/singleDateTime/calendarDate/text()
Processor: SolrField
Configuration: eml.endDate
Index.pubDate False False
//dataset/pubDate/text()
Processor: SolrField
Configuration: eml.pubDate
Index.author False  
//dataset/creator/individualName ->{{[givenName] [surName]
}}; givenName = givenName/text(); surName = surName/
text()
Configuration: eml.author
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.authorLastName True False
//dataset/creator/individualName/surName/text()
Processor: SolrField
Configuration: eml.author_lname
Index.authorGivenName False False
//dataset/creator[1]/individualName[1]/givenName/text()
Processor: SolrField
Configuration: eml.authorGivenName
Index.authorSurName False False
//dataset/creator[1]/individualName[1]/surName/text()
Processor: SolrField
Configuration: eml.authorSurName
Index.authorGivenNameSort False False
//dataset/creator[1]/individualName[1]/givenName/text()
Processor: SolrField
Index.authorSurNameSort False False
//dataset/creator[1]/individualName[1]/surName/text()
Processor: SolrField
Configuration: eml.authorSurNameSort
Index.investigator True False
//dataset/creator/individualName/surName/text()
Processor: SolrField
Configuration: eml.investigator
Index.origin False  
//dataset/creator ->{{[individualName]||[organizationName]
}}; organizationName = organizationName/text()
individualName ->{{[givenName] [surName]}};
givenName = givenName/text(); surName = surName/
text()
Configuration: eml.origin
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.contactOrganization True True
//dataset/creator/organizationName/text()
Processor: SolrField
Index.genus True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Genus" or ../taxonRankName="genus"]/text()
Processor: SolrField
Configuration: eml.genus
Index.species True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Species" or ../taxonRankName="species"]/text()
Processor: SolrField
Configuration: eml.species
Index.kingdom True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Kingdom" or ../taxonRankName="kingdom"]/text()
Processor: SolrField
Configuration: eml.kingdom
Index.order True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Order" or ../taxonRankName="order"]/text()
Processor: SolrField
Configuration: eml.order
Index.phylum True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Phylum" or ../taxonRankName="phylum"]/text() | //
taxonomicClassification/taxonRankValue[../
taxonRankName="Division" or ../taxonRankName=
"division"]/text()
Processor: SolrField
Configuration: eml.phylum
Index.family True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Family" or ../taxonRankName="family"]/text()
Processor: SolrField
Configuration: eml.family
Index.class True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Class" or ../taxonRankName="class"]/text()
Processor: SolrField
Configuration: eml.class
Index.scientificName False  
//taxonomicClassification[../taxonRankName="Genus" or ../
taxonRankName="genus"] ->{{[genus] [species]}};
genus = ../taxonRankValue/text(); species =
taxonRankValue/text()
Configuration: eml.scientificName
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.attributeName True False
//dataTable/attributeList/attribute/attributeName/text()
Processor: SolrField
Configuration: eml.attributeName
Index.attributeLabel True False
//dataTable/attributeList/attribute/attributeLabel/text()
Processor: SolrField
Configuration: eml.attributeLabel
Index.attributeDescription True False
//dataTable/attributeList/attribute/attributeDefinition/
text()
Processor: SolrField
Index.attributeUnit True False
//dataTable//standardUnit/text() | //dataTable//customUnit/
text()
Processor: SolrField
Configuration: eml.attributeUnit
Index.attribute False  
//dataTable/attributeList/attribute ->{{[attributeName] [
attributeLabel] [attributeDescription] [
attributeUnit]}}; attributeName = attributeName/
text(); attributeLabel = attributeLabel/text();
attributeDescription = attributeDefinition/text();
attributeUnit = .//standardUnit/text() | .//
customUnit/text()
Configuration: eml.attributeText
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.fileID    
Processor: ResolveSolrField
Configuration: eml.fileID
Notes: SolrField which configures the resolve url for the document being processed.
Converter:
Index.text    
Configuration: eml.fullText
Converter:
Index.geohash_1 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash1
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_2 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash2
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_3 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash3
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_4 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash4
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_5 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash5
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_6 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash6
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_7 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash7
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_8 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash8
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_9 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash9
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.isService False False
boolean(//software/implementation/distribution/online/url)
Processor: SolrField
Configuration: eml.isService
Index.serviceTitle False False
//software/title//text()[normalize-space()]
Processor: SolrField
Configuration: eml.serviceTitle
Index.serviceDescription False False
//software/abstract//text()[normalize-space()]
Processor: SolrField
Configuration: eml.serviceDescription
Index.serviceEndpoint True False
//software/implementation/distribution/online/url/text()
Processor: SolrField
Configuration: eml.serviceEndpoint

Bean Configurations

eml.abstract

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.abstract" class="org.dataone.cn.indexer.parser.MergeSolrField">
       <constructor-arg name="name" value="abstract"/>
       <constructor-arg name="xpath" value="//dataset/abstract/descendant::text()"/>
       <constructor-arg name="delimiter" value=" "/>
       <property name="multivalue" value="false"/>
       <property name="dedupe" value="false"/>
     </bean>

eml.keywords

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.keywords" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="keywords"/>
             <constructor-arg name="xpath" value="//dataset/keywordSet/keyword/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.title

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.title" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="title"/>
             <constructor-arg name="xpath" value="//dataset/title/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

eml.project

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.project" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="project"/>
             <constructor-arg name="xpath" value="//dataset/project/title/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

eml.southBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.southBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="southBoundCoord"/>
             <constructor-arg name="xpath" value="//dataset/coverage/geographicCoverage/boundingCoordinates/southBoundingCoordinate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLatitudeConverter"/>
     </bean>

eml.northBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.northBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="northBoundCoord"/>
             <constructor-arg name="xpath" value="//dataset/coverage/geographicCoverage/boundingCoordinates/northBoundingCoordinate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLatitudeConverter"/>
     </bean>

eml.westBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.westBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="westBoundCoord"/>
             <constructor-arg name="xpath" value="//dataset/coverage/geographicCoverage/boundingCoordinates/westBoundingCoordinate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

eml.eastBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.eastBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="eastBoundCoord"/>
             <constructor-arg name="xpath" value="//dataset/coverage/geographicCoverage/boundingCoordinates/eastBoundingCoordinate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

eml.site

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.site" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="site"/>
             <constructor-arg name="xpath" value="//dataset/coverage/geographicCoverage/geographicDescription/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

eml.beginDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.beginDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="beginDate"/>
             <constructor-arg name="xpath" value="//dataset/coverage/temporalCoverage/rangeOfDates/beginDate/calendarDate/text() | //dataset/coverage/temporalCoverage/singleDateTime/calendarDate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

eml.endDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.endDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="endDate"/>
             <constructor-arg name="xpath" value="//dataset/coverage/temporalCoverage/rangeOfDates/endDate/calendarDate/text() | //dataset/coverage/temporalCoverage/singleDateTime/calendarDate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

eml.pubDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.pubDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="pubDate"/>
             <constructor-arg name="xpath" value="//dataset/pubDate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

eml.author

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.author" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="eml.authorNameRoot">
                     <constructor-arg name="name" value="author"/>
     </bean>

eml.author_lname

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.author_lname" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorLastName"/>
             <constructor-arg name="xpath" value="//dataset/creator/individualName/surName/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

eml.authorGivenName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.authorGivenName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorGivenName"/>
             <constructor-arg name="xpath" value="//dataset/creator[1]/individualName[1]/givenName/text()"/>
     </bean>

eml.authorSurName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.authorSurName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurName"/>
             <constructor-arg name="xpath" value="//dataset/creator[1]/individualName[1]/surName/text()"/>
     </bean>

eml.authorGivenNameSort

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.authorGivenNameSort" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorGivenNameSort"/>
             <constructor-arg name="xpath" value="//dataset/creator[1]/individualName[1]/givenName/text()"/>
     </bean>

eml.authorSurNameSort

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.authorSurNameSort" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurNameSort"/>
             <constructor-arg name="xpath" value="//dataset/creator[1]/individualName[1]/surName/text()"/>
     </bean>

eml.investigator

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.investigator" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="investigator"/>
             <constructor-arg name="xpath" value="//dataset/creator/individualName/surName/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

eml.origin

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.origin" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.originRoot">
             <constructor-arg name="name" value="origin"/>
     </bean>

eml.contactOrganization

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.contactOrganization" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="contactOrganization"/>
             <constructor-arg name="xpath" value="//dataset/creator/organizationName/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.genus

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.genus" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="genus"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Genus&quot; or ../taxonRankName=&quot;genus&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.species

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.species" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="species"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Species&quot; or ../taxonRankName=&quot;species&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.kingdom

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.kingdom" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="kingdom"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Kingdom&quot; or ../taxonRankName=&quot;kingdom&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.order

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.order" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="order"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Order&quot; or ../taxonRankName=&quot;order&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.phylum

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.phylum" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="phylum"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Phylum&quot; or ../taxonRankName=&quot;phylum&quot;]/text() | //taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Division&quot; or ../taxonRankName=&quot;division&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.family

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.family" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="family"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Family&quot; or ../taxonRankName=&quot;family&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.class

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.class" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="class"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Class&quot; or ../taxonRankName=&quot;class&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.scientificName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.scientificName" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.scientificNameRoot">
                     <constructor-arg name="name" value="scientificName"/>
     </bean>

eml.attributeName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.attributeName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeName"/>
             <constructor-arg name="xpath" value="//dataTable/attributeList/attribute/attributeName/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

eml.attributeLabel

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.attributeLabel" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeLabel"/>
             <constructor-arg name="xpath" value="//dataTable/attributeList/attribute/attributeLabel/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

eml.attributeDescription

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.attributeDescription" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeDescription"/>
             <constructor-arg name="xpath" value="//dataTable/attributeList/attribute/attributeDefinition/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

eml.attributeUnit

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.attributeUnit" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeUnit"/>
             <constructor-arg name="xpath" value="//dataTable//standardUnit/text() | //dataTable//customUnit/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

eml.attributeText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.attributeText" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.attributeTextRoot">
                     <constructor-arg name="name" value="attribute"/>
     </bean>

eml.fileID

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.fileID" class="org.dataone.cn.indexer.parser.ResolveSolrField">
             <constructor-arg name="name" value="fileID"/>
     </bean>

eml.fullText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.fullText" class="org.dataone.cn.indexer.parser.AggregateSolrField">
             <property name="name" value="text"/>
             <property name="solrFields">
                     <list>
                     <ref bean="eml.text"/>
                     <ref bean="eml.attributeName.noDupe"/>
                     <ref bean="eml.attributeLabel.noDupe"/>
                     <ref bean="eml.attributeDescription.noDupe"/>
                     <ref bean="eml.attributeUnit.noDupe"/>
             </list>
             </property>
     </bean>

eml.geohash1

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash1" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_1"/>
             <property name="converter" ref="geohashConverter_1"/>
     </bean>

eml.geohash2

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash2" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_2"/>
             <property name="converter" ref="geohashConverter_2"/>
     </bean>

eml.geohash3

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash3" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_3"/>
             <property name="converter" ref="geohashConverter_3"/>
     </bean>

eml.geohash4

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash4" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_4"/>
             <property name="converter" ref="geohashConverter_4"/>
     </bean>

eml.geohash5

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash5" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_5"/>
             <property name="converter" ref="geohashConverter_5"/>
     </bean>

eml.geohash6

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash6" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_6"/>
             <property name="converter" ref="geohashConverter_6"/>
     </bean>

eml.geohash7

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash7" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_7"/>
             <property name="converter" ref="geohashConverter_7"/>
     </bean>

eml.geohash8

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash8" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_8"/>
             <property name="converter" ref="geohashConverter_8"/>
     </bean>

eml.geohash9

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash9" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_9"/>
             <property name="converter" ref="geohashConverter_9"/>
     </bean>

eml.isService

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.isService" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="isService"/>
             <constructor-arg name="xpath" value="boolean(//software/implementation/distribution/online/url)"/>
     </bean>

eml.serviceTitle

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.serviceTitle" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceTitle"/>
             <constructor-arg name="xpath" value="//software/title//text()[normalize-space()]"/>
             <property name="combineNodes" value="true"/>
             <property name="combineDelimiter" value=":"/>
     </bean>

eml.serviceDescription

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.serviceDescription" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceDescription"/>
             <constructor-arg name="xpath" value="//software/abstract//text()[normalize-space()]"/>
             <property name="combineNodes" value="true"/>
             <property name="combineDelimiter" value=":"/>
     </bean>

eml.serviceEndpoint

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.serviceEndpoint" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceEndpoint"/>
             <constructor-arg name="xpath" value="//software/implementation/distribution/online/url/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

Ecological Markup Language, v2.0.1

Describes parser configuration for: eml201Subprocessor

Format IDs Processed

This parser processes the following DataONE format IDs:

  • Ecological Metadata Language, version 2.0.1
    formatId: eml://ecoinformatics.org/eml-2.0.1

A full list of DataONE format IDs can be found at https://cn.dataone.org/cn/v2/formats/

Fields

The following fields in the solr index are populated from values retrieved from this type of metadata document. Note that these are in addition to the information extracted from System Metadata Parser.

Solr Field Multi Dedupe Source
Index.abstract False False
//dataset/abstract/descendant::text()
Processor: MergeSolrField
Configuration: eml.abstract
Index.keywords True True
//dataset/keywordSet/keyword/text()
Processor: SolrField
Configuration: eml.keywords
Index.title False False
//dataset/title/text()
Processor: SolrField
Configuration: eml.title
Index.project True False
//dataset/project/title/text()
Processor: SolrField
Configuration: eml.project
Index.southBoundCoord False False
//dataset/coverage/geographicCoverage/boundingCoordinates/
southBoundingCoordinate/text()
Processor: SolrField
Configuration: eml.southBoundCoord
Index.northBoundCoord False False
//dataset/coverage/geographicCoverage/boundingCoordinates/
northBoundingCoordinate/text()
Processor: SolrField
Configuration: eml.northBoundCoord
Index.westBoundCoord False False
//dataset/coverage/geographicCoverage/boundingCoordinates/
westBoundingCoordinate/text()
Processor: SolrField
Configuration: eml.westBoundCoord
Index.eastBoundCoord False False
//dataset/coverage/geographicCoverage/boundingCoordinates/
eastBoundingCoordinate/text()
Processor: SolrField
Configuration: eml.eastBoundCoord
Index.site True False
//dataset/coverage/geographicCoverage/geographicDescription/
text()
Processor: SolrField
Configuration: eml.site
Index.beginDate False False
//dataset/coverage/temporalCoverage/rangeOfDates/beginDate/
calendarDate/text() | //dataset/coverage/
temporalCoverage/singleDateTime/calendarDate/text()
Processor: SolrField
Configuration: eml.beginDate
Index.endDate False False
//dataset/coverage/temporalCoverage/rangeOfDates/endDate/
calendarDate/text() | //dataset/coverage/
temporalCoverage/singleDateTime/calendarDate/text()
Processor: SolrField
Configuration: eml.endDate
Index.pubDate False False
//dataset/pubDate/text()
Processor: SolrField
Configuration: eml.pubDate
Index.author False  
//dataset/creator/individualName ->{{[givenName] [surName]
}}; givenName = givenName/text(); surName = surName/
text()
Configuration: eml.author
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.authorGivenName False False
//dataset/creator[1]/individualName[1]/givenName/text()
Processor: SolrField
Configuration: eml.authorGivenName
Index.authorSurName False False
//dataset/creator[1]/individualName[1]/surName/text()
Processor: SolrField
Configuration: eml.authorSurName
Index.authorGivenNameSort False False
//dataset/creator[1]/individualName[1]/givenName/text()
Processor: SolrField
Index.authorSurNameSort False False
//dataset/creator[1]/individualName[1]/surName/text()
Processor: SolrField
Configuration: eml.authorSurNameSort
Index.authorLastName True False
//dataset/creator/individualName/surName/text()
Processor: SolrField
Configuration: eml.author_lname
Index.investigator True False
//dataset/creator/individualName/surName/text()
Processor: SolrField
Configuration: eml.investigator
Index.origin False  
//dataset/creator ->{{[individualName]||[organizationName]
}}; organizationName = organizationName/text()
individualName ->{{[givenName] [surName]}};
givenName = givenName/text(); surName = surName/
text()
Configuration: eml.origin
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.contactOrganization True True
//dataset/creator/organizationName/text()
Processor: SolrField
Index.genus True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Genus" or ../taxonRankName="genus"]/text()
Processor: SolrField
Configuration: eml.genus
Index.species True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Species" or ../taxonRankName="species"]/text()
Processor: SolrField
Configuration: eml.species
Index.kingdom True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Kingdom" or ../taxonRankName="kingdom"]/text()
Processor: SolrField
Configuration: eml.kingdom
Index.order True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Order" or ../taxonRankName="order"]/text()
Processor: SolrField
Configuration: eml.order
Index.phylum True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Phylum" or ../taxonRankName="phylum"]/text() | //
taxonomicClassification/taxonRankValue[../
taxonRankName="Division" or ../taxonRankName=
"division"]/text()
Processor: SolrField
Configuration: eml.phylum
Index.family True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Family" or ../taxonRankName="family"]/text()
Processor: SolrField
Configuration: eml.family
Index.class True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Class" or ../taxonRankName="class"]/text()
Processor: SolrField
Configuration: eml.class
Index.scientificName False  
//taxonomicClassification[../taxonRankName="Genus" or ../
taxonRankName="genus"] ->{{[genus] [species]}};
genus = ../taxonRankValue/text(); species =
taxonRankValue/text()
Configuration: eml.scientificName
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.attributeName True False
//dataTable/attributeList/attribute/attributeName/text()
Processor: SolrField
Configuration: eml.attributeName
Index.attributeLabel True False
//dataTable/attributeList/attribute/attributeLabel/text()
Processor: SolrField
Configuration: eml.attributeLabel
Index.attributeDescription True False
//dataTable/attributeList/attribute/attributeDefinition/
text()
Processor: SolrField
Index.attributeUnit True False
//dataTable//standardUnit/text() | //dataTable//customUnit/
text()
Processor: SolrField
Configuration: eml.attributeUnit
Index.attribute False  
//dataTable/attributeList/attribute ->{{[attributeName] [
attributeLabel] [attributeDescription] [
attributeUnit]}}; attributeName = attributeName/
text(); attributeLabel = attributeLabel/text();
attributeDescription = attributeDefinition/text();
attributeUnit = .//standardUnit/text() | .//
customUnit/text()
Configuration: eml.attributeText
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.fileID    
Processor: ResolveSolrField
Configuration: eml.fileID
Notes: SolrField which configures the resolve url for the document being processed.
Converter:
Index.text    
Configuration: eml.fullText
Converter:
Index.geohash_1 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash1
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_2 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash2
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_3 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash3
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_4 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash4
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_5 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash5
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_6 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash6
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_7 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash7
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_8 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash8
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_9 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash9
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.isService False False
boolean(//software/implementation/distribution/online/url)
Processor: SolrField
Configuration: eml.isService
Index.serviceTitle False False
//software/title//text()[normalize-space()]
Processor: SolrField
Configuration: eml.serviceTitle
Index.serviceDescription False False
//software/abstract//text()[normalize-space()]
Processor: SolrField
Configuration: eml.serviceDescription
Index.serviceEndpoint True False
//software/implementation/distribution/online/url/text()
Processor: SolrField
Configuration: eml.serviceEndpoint

Bean Configurations

eml.abstract

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.abstract" class="org.dataone.cn.indexer.parser.MergeSolrField">
       <constructor-arg name="name" value="abstract"/>
       <constructor-arg name="xpath" value="//dataset/abstract/descendant::text()"/>
       <constructor-arg name="delimiter" value=" "/>
       <property name="multivalue" value="false"/>
       <property name="dedupe" value="false"/>
     </bean>

eml.keywords

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.keywords" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="keywords"/>
             <constructor-arg name="xpath" value="//dataset/keywordSet/keyword/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.title

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.title" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="title"/>
             <constructor-arg name="xpath" value="//dataset/title/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

eml.project

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.project" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="project"/>
             <constructor-arg name="xpath" value="//dataset/project/title/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

eml.southBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.southBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="southBoundCoord"/>
             <constructor-arg name="xpath" value="//dataset/coverage/geographicCoverage/boundingCoordinates/southBoundingCoordinate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLatitudeConverter"/>
     </bean>

eml.northBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.northBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="northBoundCoord"/>
             <constructor-arg name="xpath" value="//dataset/coverage/geographicCoverage/boundingCoordinates/northBoundingCoordinate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLatitudeConverter"/>
     </bean>

eml.westBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.westBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="westBoundCoord"/>
             <constructor-arg name="xpath" value="//dataset/coverage/geographicCoverage/boundingCoordinates/westBoundingCoordinate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

eml.eastBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.eastBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="eastBoundCoord"/>
             <constructor-arg name="xpath" value="//dataset/coverage/geographicCoverage/boundingCoordinates/eastBoundingCoordinate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

eml.site

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.site" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="site"/>
             <constructor-arg name="xpath" value="//dataset/coverage/geographicCoverage/geographicDescription/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

eml.beginDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.beginDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="beginDate"/>
             <constructor-arg name="xpath" value="//dataset/coverage/temporalCoverage/rangeOfDates/beginDate/calendarDate/text() | //dataset/coverage/temporalCoverage/singleDateTime/calendarDate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

eml.endDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.endDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="endDate"/>
             <constructor-arg name="xpath" value="//dataset/coverage/temporalCoverage/rangeOfDates/endDate/calendarDate/text() | //dataset/coverage/temporalCoverage/singleDateTime/calendarDate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

eml.pubDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.pubDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="pubDate"/>
             <constructor-arg name="xpath" value="//dataset/pubDate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

eml.author

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.author" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="eml.authorNameRoot">
                     <constructor-arg name="name" value="author"/>
     </bean>

eml.authorGivenName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.authorGivenName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorGivenName"/>
             <constructor-arg name="xpath" value="//dataset/creator[1]/individualName[1]/givenName/text()"/>
     </bean>

eml.authorSurName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.authorSurName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurName"/>
             <constructor-arg name="xpath" value="//dataset/creator[1]/individualName[1]/surName/text()"/>
     </bean>

eml.authorGivenNameSort

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.authorGivenNameSort" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorGivenNameSort"/>
             <constructor-arg name="xpath" value="//dataset/creator[1]/individualName[1]/givenName/text()"/>
     </bean>

eml.authorSurNameSort

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.authorSurNameSort" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurNameSort"/>
             <constructor-arg name="xpath" value="//dataset/creator[1]/individualName[1]/surName/text()"/>
     </bean>

eml.author_lname

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.author_lname" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorLastName"/>
             <constructor-arg name="xpath" value="//dataset/creator/individualName/surName/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

eml.investigator

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.investigator" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="investigator"/>
             <constructor-arg name="xpath" value="//dataset/creator/individualName/surName/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

eml.origin

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.origin" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.originRoot">
             <constructor-arg name="name" value="origin"/>
     </bean>

eml.contactOrganization

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.contactOrganization" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="contactOrganization"/>
             <constructor-arg name="xpath" value="//dataset/creator/organizationName/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.genus

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.genus" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="genus"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Genus&quot; or ../taxonRankName=&quot;genus&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.species

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.species" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="species"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Species&quot; or ../taxonRankName=&quot;species&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.kingdom

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.kingdom" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="kingdom"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Kingdom&quot; or ../taxonRankName=&quot;kingdom&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.order

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.order" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="order"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Order&quot; or ../taxonRankName=&quot;order&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.phylum

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.phylum" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="phylum"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Phylum&quot; or ../taxonRankName=&quot;phylum&quot;]/text() | //taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Division&quot; or ../taxonRankName=&quot;division&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.family

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.family" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="family"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Family&quot; or ../taxonRankName=&quot;family&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.class

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.class" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="class"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Class&quot; or ../taxonRankName=&quot;class&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.scientificName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.scientificName" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.scientificNameRoot">
                     <constructor-arg name="name" value="scientificName"/>
     </bean>

eml.attributeName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.attributeName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeName"/>
             <constructor-arg name="xpath" value="//dataTable/attributeList/attribute/attributeName/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

eml.attributeLabel

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.attributeLabel" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeLabel"/>
             <constructor-arg name="xpath" value="//dataTable/attributeList/attribute/attributeLabel/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

eml.attributeDescription

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.attributeDescription" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeDescription"/>
             <constructor-arg name="xpath" value="//dataTable/attributeList/attribute/attributeDefinition/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

eml.attributeUnit

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.attributeUnit" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeUnit"/>
             <constructor-arg name="xpath" value="//dataTable//standardUnit/text() | //dataTable//customUnit/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

eml.attributeText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.attributeText" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.attributeTextRoot">
                     <constructor-arg name="name" value="attribute"/>
     </bean>

eml.fileID

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.fileID" class="org.dataone.cn.indexer.parser.ResolveSolrField">
             <constructor-arg name="name" value="fileID"/>
     </bean>

eml.fullText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.fullText" class="org.dataone.cn.indexer.parser.AggregateSolrField">
             <property name="name" value="text"/>
             <property name="solrFields">
                     <list>
                     <ref bean="eml.text"/>
                     <ref bean="eml.attributeName.noDupe"/>
                     <ref bean="eml.attributeLabel.noDupe"/>
                     <ref bean="eml.attributeDescription.noDupe"/>
                     <ref bean="eml.attributeUnit.noDupe"/>
             </list>
             </property>
     </bean>

eml.geohash1

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash1" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_1"/>
             <property name="converter" ref="geohashConverter_1"/>
     </bean>

eml.geohash2

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash2" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_2"/>
             <property name="converter" ref="geohashConverter_2"/>
     </bean>

eml.geohash3

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash3" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_3"/>
             <property name="converter" ref="geohashConverter_3"/>
     </bean>

eml.geohash4

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash4" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_4"/>
             <property name="converter" ref="geohashConverter_4"/>
     </bean>

eml.geohash5

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash5" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_5"/>
             <property name="converter" ref="geohashConverter_5"/>
     </bean>

eml.geohash6

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash6" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_6"/>
             <property name="converter" ref="geohashConverter_6"/>
     </bean>

eml.geohash7

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash7" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_7"/>
             <property name="converter" ref="geohashConverter_7"/>
     </bean>

eml.geohash8

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash8" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_8"/>
             <property name="converter" ref="geohashConverter_8"/>
     </bean>

eml.geohash9

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash9" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_9"/>
             <property name="converter" ref="geohashConverter_9"/>
     </bean>

eml.isService

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.isService" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="isService"/>
             <constructor-arg name="xpath" value="boolean(//software/implementation/distribution/online/url)"/>
     </bean>

eml.serviceTitle

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.serviceTitle" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceTitle"/>
             <constructor-arg name="xpath" value="//software/title//text()[normalize-space()]"/>
             <property name="combineNodes" value="true"/>
             <property name="combineDelimiter" value=":"/>
     </bean>

eml.serviceDescription

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.serviceDescription" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceDescription"/>
             <constructor-arg name="xpath" value="//software/abstract//text()[normalize-space()]"/>
             <property name="combineNodes" value="true"/>
             <property name="combineDelimiter" value=":"/>
     </bean>

eml.serviceEndpoint

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.serviceEndpoint" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceEndpoint"/>
             <constructor-arg name="xpath" value="//software/implementation/distribution/online/url/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

Ecological Markup Language, v2.1.0

Describes parser configuration for: eml210Subprocessor

Format IDs Processed

This parser processes the following DataONE format IDs:

  • Ecological Metadata Language, version 2.1.0
    formatId: eml://ecoinformatics.org/eml-2.1.0

A full list of DataONE format IDs can be found at https://cn.dataone.org/cn/v2/formats/

Fields

The following fields in the solr index are populated from values retrieved from this type of metadata document. Note that these are in addition to the information extracted from System Metadata Parser.

Solr Field Multi Dedupe Source
Index.abstract False False
//dataset/abstract/descendant::text()
Processor: MergeSolrField
Configuration: eml.abstract
Index.keywords True True
//dataset/keywordSet/keyword/text()
Processor: SolrField
Configuration: eml.keywords
Index.title False False
//dataset/title/text()
Processor: SolrField
Configuration: eml.title
Index.project True False
//dataset/project/title/text()
Processor: SolrField
Configuration: eml.project
Index.southBoundCoord False False
//dataset/coverage/geographicCoverage/boundingCoordinates/
southBoundingCoordinate/text()
Processor: SolrField
Configuration: eml.southBoundCoord
Index.northBoundCoord False False
//dataset/coverage/geographicCoverage/boundingCoordinates/
northBoundingCoordinate/text()
Processor: SolrField
Configuration: eml.northBoundCoord
Index.westBoundCoord False False
//dataset/coverage/geographicCoverage/boundingCoordinates/
westBoundingCoordinate/text()
Processor: SolrField
Configuration: eml.westBoundCoord
Index.eastBoundCoord False False
//dataset/coverage/geographicCoverage/boundingCoordinates/
eastBoundingCoordinate/text()
Processor: SolrField
Configuration: eml.eastBoundCoord
Index.site True False
//dataset/coverage/geographicCoverage/geographicDescription/
text()
Processor: SolrField
Configuration: eml.site
Index.beginDate False False
//dataset/coverage/temporalCoverage/rangeOfDates/beginDate/
calendarDate/text() | //dataset/coverage/
temporalCoverage/singleDateTime/calendarDate/text()
Processor: SolrField
Configuration: eml.beginDate
Index.endDate False False
//dataset/coverage/temporalCoverage/rangeOfDates/endDate/
calendarDate/text() | //dataset/coverage/
temporalCoverage/singleDateTime/calendarDate/text()
Processor: SolrField
Configuration: eml.endDate
Index.pubDate False False
//dataset/pubDate/text()
Processor: SolrField
Configuration: eml.pubDate
Index.author False  
//dataset/creator/individualName ->{{[givenName] [surName]
}}; givenName = givenName/text(); surName = surName/
text()
Configuration: eml.author
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.authorGivenName False False
//dataset/creator[1]/individualName[1]/givenName/text()
Processor: SolrField
Configuration: eml.authorGivenName
Index.authorSurName False False
//dataset/creator[1]/individualName[1]/surName/text()
Processor: SolrField
Configuration: eml.authorSurName
Index.authorGivenNameSort False False
//dataset/creator[1]/individualName[1]/givenName/text()
Processor: SolrField
Index.authorSurNameSort False False
//dataset/creator[1]/individualName[1]/surName/text()
Processor: SolrField
Configuration: eml.authorSurNameSort
Index.authorLastName True False
//dataset/creator/individualName/surName/text()
Processor: SolrField
Configuration: eml.author_lname
Index.investigator True False
//dataset/creator/individualName/surName/text()
Processor: SolrField
Configuration: eml.investigator
Index.origin False  
//dataset/creator ->{{[individualName]||[organizationName]
}}; organizationName = organizationName/text()
individualName ->{{[givenName] [surName]}};
givenName = givenName/text(); surName = surName/
text()
Configuration: eml.origin
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.contactOrganization True True
//dataset/creator/organizationName/text()
Processor: SolrField
Index.genus True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Genus" or ../taxonRankName="genus"]/text()
Processor: SolrField
Configuration: eml.genus
Index.species True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Species" or ../taxonRankName="species"]/text()
Processor: SolrField
Configuration: eml.species
Index.kingdom True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Kingdom" or ../taxonRankName="kingdom"]/text()
Processor: SolrField
Configuration: eml.kingdom
Index.order True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Order" or ../taxonRankName="order"]/text()
Processor: SolrField
Configuration: eml.order
Index.phylum True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Phylum" or ../taxonRankName="phylum"]/text() | //
taxonomicClassification/taxonRankValue[../
taxonRankName="Division" or ../taxonRankName=
"division"]/text()
Processor: SolrField
Configuration: eml.phylum
Index.family True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Family" or ../taxonRankName="family"]/text()
Processor: SolrField
Configuration: eml.family
Index.class True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Class" or ../taxonRankName="class"]/text()
Processor: SolrField
Configuration: eml.class
Index.scientificName False  
//taxonomicClassification[../taxonRankName="Genus" or ../
taxonRankName="genus"] ->{{[genus] [species]}};
genus = ../taxonRankValue/text(); species =
taxonRankValue/text()
Configuration: eml.scientificName
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.attributeName True False
//dataTable/attributeList/attribute/attributeName/text()
Processor: SolrField
Configuration: eml.attributeName
Index.attributeLabel True False
//dataTable/attributeList/attribute/attributeLabel/text()
Processor: SolrField
Configuration: eml.attributeLabel
Index.attributeDescription True False
//dataTable/attributeList/attribute/attributeDefinition/
text()
Processor: SolrField
Index.attributeUnit True False
//dataTable//standardUnit/text() | //dataTable//customUnit/
text()
Processor: SolrField
Configuration: eml.attributeUnit
Index.attribute False  
//dataTable/attributeList/attribute ->{{[attributeName] [
attributeLabel] [attributeDescription] [
attributeUnit]}}; attributeName = attributeName/
text(); attributeLabel = attributeLabel/text();
attributeDescription = attributeDefinition/text();
attributeUnit = .//standardUnit/text() | .//
customUnit/text()
Configuration: eml.attributeText
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.fileID    
Processor: ResolveSolrField
Configuration: eml.fileID
Notes: SolrField which configures the resolve url for the document being processed.
Converter:
Index.text    
Configuration: eml.fullText
Converter:
Index.geohash_1 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash1
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_2 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash2
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_3 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash3
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_4 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash4
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_5 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash5
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_6 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash6
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_7 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash7
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_8 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash8
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_9 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash9
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.isService False False
boolean(//software/implementation/distribution/online/url)
Processor: SolrField
Configuration: eml.isService
Index.serviceTitle False False
//software/title//text()[normalize-space()]
Processor: SolrField
Configuration: eml.serviceTitle
Index.serviceDescription False False
//software/abstract//text()[normalize-space()]
Processor: SolrField
Configuration: eml.serviceDescription
Index.serviceEndpoint True False
//software/implementation/distribution/online/url/text()
Processor: SolrField
Configuration: eml.serviceEndpoint

Bean Configurations

eml.abstract

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.abstract" class="org.dataone.cn.indexer.parser.MergeSolrField">
       <constructor-arg name="name" value="abstract"/>
       <constructor-arg name="xpath" value="//dataset/abstract/descendant::text()"/>
       <constructor-arg name="delimiter" value=" "/>
       <property name="multivalue" value="false"/>
       <property name="dedupe" value="false"/>
     </bean>

eml.keywords

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.keywords" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="keywords"/>
             <constructor-arg name="xpath" value="//dataset/keywordSet/keyword/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.title

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.title" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="title"/>
             <constructor-arg name="xpath" value="//dataset/title/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

eml.project

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.project" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="project"/>
             <constructor-arg name="xpath" value="//dataset/project/title/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

eml.southBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.southBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="southBoundCoord"/>
             <constructor-arg name="xpath" value="//dataset/coverage/geographicCoverage/boundingCoordinates/southBoundingCoordinate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLatitudeConverter"/>
     </bean>

eml.northBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.northBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="northBoundCoord"/>
             <constructor-arg name="xpath" value="//dataset/coverage/geographicCoverage/boundingCoordinates/northBoundingCoordinate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLatitudeConverter"/>
     </bean>

eml.westBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.westBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="westBoundCoord"/>
             <constructor-arg name="xpath" value="//dataset/coverage/geographicCoverage/boundingCoordinates/westBoundingCoordinate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

eml.eastBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.eastBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="eastBoundCoord"/>
             <constructor-arg name="xpath" value="//dataset/coverage/geographicCoverage/boundingCoordinates/eastBoundingCoordinate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

eml.site

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.site" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="site"/>
             <constructor-arg name="xpath" value="//dataset/coverage/geographicCoverage/geographicDescription/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

eml.beginDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.beginDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="beginDate"/>
             <constructor-arg name="xpath" value="//dataset/coverage/temporalCoverage/rangeOfDates/beginDate/calendarDate/text() | //dataset/coverage/temporalCoverage/singleDateTime/calendarDate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

eml.endDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.endDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="endDate"/>
             <constructor-arg name="xpath" value="//dataset/coverage/temporalCoverage/rangeOfDates/endDate/calendarDate/text() | //dataset/coverage/temporalCoverage/singleDateTime/calendarDate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

eml.pubDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.pubDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="pubDate"/>
             <constructor-arg name="xpath" value="//dataset/pubDate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

eml.author

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.author" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="eml.authorNameRoot">
                     <constructor-arg name="name" value="author"/>
     </bean>

eml.authorGivenName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.authorGivenName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorGivenName"/>
             <constructor-arg name="xpath" value="//dataset/creator[1]/individualName[1]/givenName/text()"/>
     </bean>

eml.authorSurName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.authorSurName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurName"/>
             <constructor-arg name="xpath" value="//dataset/creator[1]/individualName[1]/surName/text()"/>
     </bean>

eml.authorGivenNameSort

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.authorGivenNameSort" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorGivenNameSort"/>
             <constructor-arg name="xpath" value="//dataset/creator[1]/individualName[1]/givenName/text()"/>
     </bean>

eml.authorSurNameSort

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.authorSurNameSort" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurNameSort"/>
             <constructor-arg name="xpath" value="//dataset/creator[1]/individualName[1]/surName/text()"/>
     </bean>

eml.author_lname

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.author_lname" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorLastName"/>
             <constructor-arg name="xpath" value="//dataset/creator/individualName/surName/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

eml.investigator

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.investigator" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="investigator"/>
             <constructor-arg name="xpath" value="//dataset/creator/individualName/surName/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

eml.origin

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.origin" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.originRoot">
             <constructor-arg name="name" value="origin"/>
     </bean>

eml.contactOrganization

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.contactOrganization" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="contactOrganization"/>
             <constructor-arg name="xpath" value="//dataset/creator/organizationName/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.genus

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.genus" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="genus"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Genus&quot; or ../taxonRankName=&quot;genus&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.species

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.species" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="species"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Species&quot; or ../taxonRankName=&quot;species&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.kingdom

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.kingdom" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="kingdom"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Kingdom&quot; or ../taxonRankName=&quot;kingdom&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.order

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.order" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="order"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Order&quot; or ../taxonRankName=&quot;order&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.phylum

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.phylum" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="phylum"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Phylum&quot; or ../taxonRankName=&quot;phylum&quot;]/text() | //taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Division&quot; or ../taxonRankName=&quot;division&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.family

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.family" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="family"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Family&quot; or ../taxonRankName=&quot;family&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.class

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.class" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="class"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Class&quot; or ../taxonRankName=&quot;class&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.scientificName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.scientificName" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.scientificNameRoot">
                     <constructor-arg name="name" value="scientificName"/>
     </bean>

eml.attributeName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.attributeName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeName"/>
             <constructor-arg name="xpath" value="//dataTable/attributeList/attribute/attributeName/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

eml.attributeLabel

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.attributeLabel" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeLabel"/>
             <constructor-arg name="xpath" value="//dataTable/attributeList/attribute/attributeLabel/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

eml.attributeDescription

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.attributeDescription" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeDescription"/>
             <constructor-arg name="xpath" value="//dataTable/attributeList/attribute/attributeDefinition/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

eml.attributeUnit

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.attributeUnit" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeUnit"/>
             <constructor-arg name="xpath" value="//dataTable//standardUnit/text() | //dataTable//customUnit/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

eml.attributeText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.attributeText" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.attributeTextRoot">
                     <constructor-arg name="name" value="attribute"/>
     </bean>

eml.fileID

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.fileID" class="org.dataone.cn.indexer.parser.ResolveSolrField">
             <constructor-arg name="name" value="fileID"/>
     </bean>

eml.fullText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.fullText" class="org.dataone.cn.indexer.parser.AggregateSolrField">
             <property name="name" value="text"/>
             <property name="solrFields">
                     <list>
                     <ref bean="eml.text"/>
                     <ref bean="eml.attributeName.noDupe"/>
                     <ref bean="eml.attributeLabel.noDupe"/>
                     <ref bean="eml.attributeDescription.noDupe"/>
                     <ref bean="eml.attributeUnit.noDupe"/>
             </list>
             </property>
     </bean>

eml.geohash1

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash1" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_1"/>
             <property name="converter" ref="geohashConverter_1"/>
     </bean>

eml.geohash2

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash2" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_2"/>
             <property name="converter" ref="geohashConverter_2"/>
     </bean>

eml.geohash3

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash3" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_3"/>
             <property name="converter" ref="geohashConverter_3"/>
     </bean>

eml.geohash4

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash4" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_4"/>
             <property name="converter" ref="geohashConverter_4"/>
     </bean>

eml.geohash5

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash5" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_5"/>
             <property name="converter" ref="geohashConverter_5"/>
     </bean>

eml.geohash6

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash6" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_6"/>
             <property name="converter" ref="geohashConverter_6"/>
     </bean>

eml.geohash7

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash7" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_7"/>
             <property name="converter" ref="geohashConverter_7"/>
     </bean>

eml.geohash8

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash8" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_8"/>
             <property name="converter" ref="geohashConverter_8"/>
     </bean>

eml.geohash9

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash9" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_9"/>
             <property name="converter" ref="geohashConverter_9"/>
     </bean>

eml.isService

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.isService" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="isService"/>
             <constructor-arg name="xpath" value="boolean(//software/implementation/distribution/online/url)"/>
     </bean>

eml.serviceTitle

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.serviceTitle" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceTitle"/>
             <constructor-arg name="xpath" value="//software/title//text()[normalize-space()]"/>
             <property name="combineNodes" value="true"/>
             <property name="combineDelimiter" value=":"/>
     </bean>

eml.serviceDescription

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.serviceDescription" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceDescription"/>
             <constructor-arg name="xpath" value="//software/abstract//text()[normalize-space()]"/>
             <property name="combineNodes" value="true"/>
             <property name="combineDelimiter" value=":"/>
     </bean>

eml.serviceEndpoint

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.serviceEndpoint" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceEndpoint"/>
             <constructor-arg name="xpath" value="//software/implementation/distribution/online/url/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

Ecological Markup Language, v2.1.1

Describes parser configuration for: eml211Subprocessor

Format IDs Processed

This parser processes the following DataONE format IDs:

  • Ecological Metadata Language, version 2.1.1
    formatId: eml://ecoinformatics.org/eml-2.1.1

A full list of DataONE format IDs can be found at https://cn.dataone.org/cn/v2/formats/

Fields

The following fields in the solr index are populated from values retrieved from this type of metadata document. Note that these are in addition to the information extracted from System Metadata Parser.

Solr Field Multi Dedupe Source
Index.abstract False False
//dataset/abstract/descendant::text()
Processor: MergeSolrField
Configuration: eml.abstract
Index.keywords True True
//dataset/keywordSet/keyword/text()
Processor: SolrField
Configuration: eml.keywords
Index.title False False
//dataset/title/text()
Processor: SolrField
Configuration: eml.title
Index.project True False
//dataset/project/title/text()
Processor: SolrField
Configuration: eml.project
Index.southBoundCoord False False
//dataset/coverage/geographicCoverage/boundingCoordinates/
southBoundingCoordinate/text()
Processor: SolrField
Configuration: eml.southBoundCoord
Index.northBoundCoord False False
//dataset/coverage/geographicCoverage/boundingCoordinates/
northBoundingCoordinate/text()
Processor: SolrField
Configuration: eml.northBoundCoord
Index.westBoundCoord False False
//dataset/coverage/geographicCoverage/boundingCoordinates/
westBoundingCoordinate/text()
Processor: SolrField
Configuration: eml.westBoundCoord
Index.eastBoundCoord False False
//dataset/coverage/geographicCoverage/boundingCoordinates/
eastBoundingCoordinate/text()
Processor: SolrField
Configuration: eml.eastBoundCoord
Index.site True False
//dataset/coverage/geographicCoverage/geographicDescription/
text()
Processor: SolrField
Configuration: eml.site
Index.beginDate False False
//dataset/coverage/temporalCoverage/rangeOfDates/beginDate/
calendarDate/text() | //dataset/coverage/
temporalCoverage/singleDateTime/calendarDate/text()
Processor: SolrField
Configuration: eml.beginDate
Index.endDate False False
//dataset/coverage/temporalCoverage/rangeOfDates/endDate/
calendarDate/text() | //dataset/coverage/
temporalCoverage/singleDateTime/calendarDate/text()
Processor: SolrField
Configuration: eml.endDate
Index.pubDate False False
//dataset/pubDate/text()
Processor: SolrField
Configuration: eml.pubDate
Index.author False  
//dataset/creator/individualName ->{{[givenName] [surName]
}}; givenName = givenName/text(); surName = surName/
text()
Configuration: eml.author
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.authorGivenName False False
//dataset/creator[1]/individualName[1]/givenName/text()
Processor: SolrField
Configuration: eml.authorGivenName
Index.authorSurName False False
//dataset/creator[1]/individualName[1]/surName/text()
Processor: SolrField
Configuration: eml.authorSurName
Index.authorGivenNameSort False False
//dataset/creator[1]/individualName[1]/givenName/text()
Processor: SolrField
Index.authorSurNameSort False False
//dataset/creator[1]/individualName[1]/surName/text()
Processor: SolrField
Configuration: eml.authorSurNameSort
Index.authorLastName True False
//dataset/creator/individualName/surName/text()
Processor: SolrField
Configuration: eml.author_lname
Index.investigator True False
//dataset/creator/individualName/surName/text()
Processor: SolrField
Configuration: eml.investigator
Index.origin False  
//dataset/creator ->{{[individualName]||[organizationName]
}}; organizationName = organizationName/text()
individualName ->{{[givenName] [surName]}};
givenName = givenName/text(); surName = surName/
text()
Configuration: eml.origin
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.contactOrganization True True
//dataset/creator/organizationName/text()
Processor: SolrField
Index.genus True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Genus" or ../taxonRankName="genus"]/text()
Processor: SolrField
Configuration: eml.genus
Index.species True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Species" or ../taxonRankName="species"]/text()
Processor: SolrField
Configuration: eml.species
Index.kingdom True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Kingdom" or ../taxonRankName="kingdom"]/text()
Processor: SolrField
Configuration: eml.kingdom
Index.order True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Order" or ../taxonRankName="order"]/text()
Processor: SolrField
Configuration: eml.order
Index.phylum True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Phylum" or ../taxonRankName="phylum"]/text() | //
taxonomicClassification/taxonRankValue[../
taxonRankName="Division" or ../taxonRankName=
"division"]/text()
Processor: SolrField
Configuration: eml.phylum
Index.family True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Family" or ../taxonRankName="family"]/text()
Processor: SolrField
Configuration: eml.family
Index.class True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Class" or ../taxonRankName="class"]/text()
Processor: SolrField
Configuration: eml.class
Index.scientificName False  
//taxonomicClassification[../taxonRankName="Genus" or ../
taxonRankName="genus"] ->{{[genus] [species]}};
genus = ../taxonRankValue/text(); species =
taxonRankValue/text()
Configuration: eml.scientificName
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.attributeName True False
//dataTable/attributeList/attribute/attributeName/text()
Processor: SolrField
Configuration: eml.attributeName
Index.attributeLabel True False
//dataTable/attributeList/attribute/attributeLabel/text()
Processor: SolrField
Configuration: eml.attributeLabel
Index.attributeDescription True False
//dataTable/attributeList/attribute/attributeDefinition/
text()
Processor: SolrField
Index.attributeUnit True False
//dataTable//standardUnit/text() | //dataTable//customUnit/
text()
Processor: SolrField
Configuration: eml.attributeUnit
Index.attribute False  
//dataTable/attributeList/attribute ->{{[attributeName] [
attributeLabel] [attributeDescription] [
attributeUnit]}}; attributeName = attributeName/
text(); attributeLabel = attributeLabel/text();
attributeDescription = attributeDefinition/text();
attributeUnit = .//standardUnit/text() | .//
customUnit/text()
Configuration: eml.attributeText
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.fileID    
Processor: ResolveSolrField
Configuration: eml.fileID
Notes: SolrField which configures the resolve url for the document being processed.
Converter:
Index.text    
Configuration: eml.fullText
Converter:
Index.geohash_1 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash1
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_2 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash2
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_3 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash3
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_4 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash4
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_5 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash5
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_6 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash6
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_7 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash7
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_8 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash8
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_9 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash9
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.isService False False
boolean(//software/implementation/distribution/online/url)
Processor: SolrField
Configuration: eml.isService
Index.serviceTitle False False
//software/title//text()[normalize-space()]
Processor: SolrField
Configuration: eml.serviceTitle
Index.serviceDescription False False
//software/abstract//text()[normalize-space()]
Processor: SolrField
Configuration: eml.serviceDescription
Index.serviceEndpoint True False
//software/implementation/distribution/online/url/text()
Processor: SolrField
Configuration: eml.serviceEndpoint

Bean Configurations

eml.abstract

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.abstract" class="org.dataone.cn.indexer.parser.MergeSolrField">
       <constructor-arg name="name" value="abstract"/>
       <constructor-arg name="xpath" value="//dataset/abstract/descendant::text()"/>
       <constructor-arg name="delimiter" value=" "/>
       <property name="multivalue" value="false"/>
       <property name="dedupe" value="false"/>
     </bean>

eml.keywords

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.keywords" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="keywords"/>
             <constructor-arg name="xpath" value="//dataset/keywordSet/keyword/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.title

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.title" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="title"/>
             <constructor-arg name="xpath" value="//dataset/title/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

eml.project

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.project" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="project"/>
             <constructor-arg name="xpath" value="//dataset/project/title/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

eml.southBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.southBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="southBoundCoord"/>
             <constructor-arg name="xpath" value="//dataset/coverage/geographicCoverage/boundingCoordinates/southBoundingCoordinate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLatitudeConverter"/>
     </bean>

eml.northBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.northBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="northBoundCoord"/>
             <constructor-arg name="xpath" value="//dataset/coverage/geographicCoverage/boundingCoordinates/northBoundingCoordinate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLatitudeConverter"/>
     </bean>

eml.westBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.westBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="westBoundCoord"/>
             <constructor-arg name="xpath" value="//dataset/coverage/geographicCoverage/boundingCoordinates/westBoundingCoordinate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

eml.eastBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.eastBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="eastBoundCoord"/>
             <constructor-arg name="xpath" value="//dataset/coverage/geographicCoverage/boundingCoordinates/eastBoundingCoordinate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

eml.site

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.site" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="site"/>
             <constructor-arg name="xpath" value="//dataset/coverage/geographicCoverage/geographicDescription/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

eml.beginDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.beginDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="beginDate"/>
             <constructor-arg name="xpath" value="//dataset/coverage/temporalCoverage/rangeOfDates/beginDate/calendarDate/text() | //dataset/coverage/temporalCoverage/singleDateTime/calendarDate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

eml.endDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.endDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="endDate"/>
             <constructor-arg name="xpath" value="//dataset/coverage/temporalCoverage/rangeOfDates/endDate/calendarDate/text() | //dataset/coverage/temporalCoverage/singleDateTime/calendarDate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

eml.pubDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.pubDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="pubDate"/>
             <constructor-arg name="xpath" value="//dataset/pubDate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

eml.author

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.author" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="eml.authorNameRoot">
                     <constructor-arg name="name" value="author"/>
     </bean>

eml.authorGivenName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.authorGivenName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorGivenName"/>
             <constructor-arg name="xpath" value="//dataset/creator[1]/individualName[1]/givenName/text()"/>
     </bean>

eml.authorSurName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.authorSurName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurName"/>
             <constructor-arg name="xpath" value="//dataset/creator[1]/individualName[1]/surName/text()"/>
     </bean>

eml.authorGivenNameSort

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.authorGivenNameSort" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorGivenNameSort"/>
             <constructor-arg name="xpath" value="//dataset/creator[1]/individualName[1]/givenName/text()"/>
     </bean>

eml.authorSurNameSort

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.authorSurNameSort" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurNameSort"/>
             <constructor-arg name="xpath" value="//dataset/creator[1]/individualName[1]/surName/text()"/>
     </bean>

eml.author_lname

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.author_lname" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorLastName"/>
             <constructor-arg name="xpath" value="//dataset/creator/individualName/surName/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

eml.investigator

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.investigator" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="investigator"/>
             <constructor-arg name="xpath" value="//dataset/creator/individualName/surName/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

eml.origin

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.origin" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.originRoot">
             <constructor-arg name="name" value="origin"/>
     </bean>

eml.contactOrganization

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.contactOrganization" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="contactOrganization"/>
             <constructor-arg name="xpath" value="//dataset/creator/organizationName/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.genus

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.genus" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="genus"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Genus&quot; or ../taxonRankName=&quot;genus&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.species

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.species" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="species"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Species&quot; or ../taxonRankName=&quot;species&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.kingdom

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.kingdom" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="kingdom"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Kingdom&quot; or ../taxonRankName=&quot;kingdom&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.order

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.order" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="order"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Order&quot; or ../taxonRankName=&quot;order&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.phylum

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.phylum" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="phylum"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Phylum&quot; or ../taxonRankName=&quot;phylum&quot;]/text() | //taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Division&quot; or ../taxonRankName=&quot;division&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.family

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.family" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="family"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Family&quot; or ../taxonRankName=&quot;family&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.class

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.class" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="class"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Class&quot; or ../taxonRankName=&quot;class&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.scientificName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.scientificName" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.scientificNameRoot">
                     <constructor-arg name="name" value="scientificName"/>
     </bean>

eml.attributeName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.attributeName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeName"/>
             <constructor-arg name="xpath" value="//dataTable/attributeList/attribute/attributeName/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

eml.attributeLabel

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.attributeLabel" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeLabel"/>
             <constructor-arg name="xpath" value="//dataTable/attributeList/attribute/attributeLabel/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

eml.attributeDescription

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.attributeDescription" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeDescription"/>
             <constructor-arg name="xpath" value="//dataTable/attributeList/attribute/attributeDefinition/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

eml.attributeUnit

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.attributeUnit" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeUnit"/>
             <constructor-arg name="xpath" value="//dataTable//standardUnit/text() | //dataTable//customUnit/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

eml.attributeText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.attributeText" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.attributeTextRoot">
                     <constructor-arg name="name" value="attribute"/>
     </bean>

eml.fileID

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.fileID" class="org.dataone.cn.indexer.parser.ResolveSolrField">
             <constructor-arg name="name" value="fileID"/>
     </bean>

eml.fullText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.fullText" class="org.dataone.cn.indexer.parser.AggregateSolrField">
             <property name="name" value="text"/>
             <property name="solrFields">
                     <list>
                     <ref bean="eml.text"/>
                     <ref bean="eml.attributeName.noDupe"/>
                     <ref bean="eml.attributeLabel.noDupe"/>
                     <ref bean="eml.attributeDescription.noDupe"/>
                     <ref bean="eml.attributeUnit.noDupe"/>
             </list>
             </property>
     </bean>

eml.geohash1

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash1" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_1"/>
             <property name="converter" ref="geohashConverter_1"/>
     </bean>

eml.geohash2

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash2" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_2"/>
             <property name="converter" ref="geohashConverter_2"/>
     </bean>

eml.geohash3

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash3" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_3"/>
             <property name="converter" ref="geohashConverter_3"/>
     </bean>

eml.geohash4

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash4" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_4"/>
             <property name="converter" ref="geohashConverter_4"/>
     </bean>

eml.geohash5

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash5" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_5"/>
             <property name="converter" ref="geohashConverter_5"/>
     </bean>

eml.geohash6

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash6" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_6"/>
             <property name="converter" ref="geohashConverter_6"/>
     </bean>

eml.geohash7

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash7" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_7"/>
             <property name="converter" ref="geohashConverter_7"/>
     </bean>

eml.geohash8

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash8" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_8"/>
             <property name="converter" ref="geohashConverter_8"/>
     </bean>

eml.geohash9

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash9" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_9"/>
             <property name="converter" ref="geohashConverter_9"/>
     </bean>

eml.isService

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.isService" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="isService"/>
             <constructor-arg name="xpath" value="boolean(//software/implementation/distribution/online/url)"/>
     </bean>

eml.serviceTitle

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.serviceTitle" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceTitle"/>
             <constructor-arg name="xpath" value="//software/title//text()[normalize-space()]"/>
             <property name="combineNodes" value="true"/>
             <property name="combineDelimiter" value=":"/>
     </bean>

eml.serviceDescription

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.serviceDescription" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceDescription"/>
             <constructor-arg name="xpath" value="//software/abstract//text()[normalize-space()]"/>
             <property name="combineNodes" value="true"/>
             <property name="combineDelimiter" value=":"/>
     </bean>

eml.serviceEndpoint

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.serviceEndpoint" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceEndpoint"/>
             <constructor-arg name="xpath" value="//software/implementation/distribution/online/url/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

Ecological Markup Language, v2.2.0

Describes parser configuration for: eml220Subprocessor

Format IDs Processed

This parser processes the following DataONE format IDs:

  • Ecological Metadata Language, version 2.2.0
    formatId: https://eml.ecoinformatics.org/eml-2.2.0

A full list of DataONE format IDs can be found at https://cn.dataone.org/cn/v2/formats/

Fields

The following fields in the solr index are populated from values retrieved from this type of metadata document. Note that these are in addition to the information extracted from System Metadata Parser.

Solr Field Multi Dedupe Source
Index.abstract False False
//dataset/abstract/descendant::text()
Processor: MergeSolrField
Configuration: eml.abstract
Index.keywords True True
//dataset/keywordSet/keyword/text()
Processor: SolrField
Configuration: eml.keywords
Index.title False False
//dataset/title/text()
Processor: SolrField
Configuration: eml.title
Index.project True False
//dataset/project/title/text()
Processor: SolrField
Configuration: eml.project
Index.funding True False
//dataset/project/funding/descendant::text()
Processor: SolrField
Configuration: eml.funding
Index.funderName True False
//dataset/project/award/funderName/text()
Processor: SolrField
Configuration: eml.funderName
Index.funderIdentifier True False
//dataset/project/award/funderIdentifier/text()
Processor: SolrField
Configuration: eml.funderIdentifier
Index.awardNumber True False
//dataset/project/award/awardNumber/text()
Processor: SolrField
Configuration: eml.awardNumber
Index.awardTitle True False
//dataset/project/award/title/text()
Processor: SolrField
Configuration: eml.awardTitle
Index.southBoundCoord False False
//dataset/coverage/geographicCoverage/boundingCoordinates/
southBoundingCoordinate/text()
Processor: SolrField
Configuration: eml.southBoundCoord
Index.northBoundCoord False False
//dataset/coverage/geographicCoverage/boundingCoordinates/
northBoundingCoordinate/text()
Processor: SolrField
Configuration: eml.northBoundCoord
Index.westBoundCoord False False
//dataset/coverage/geographicCoverage/boundingCoordinates/
westBoundingCoordinate/text()
Processor: SolrField
Configuration: eml.westBoundCoord
Index.eastBoundCoord False False
//dataset/coverage/geographicCoverage/boundingCoordinates/
eastBoundingCoordinate/text()
Processor: SolrField
Configuration: eml.eastBoundCoord
Index.site True False
//dataset/coverage/geographicCoverage/geographicDescription/
text()
Processor: SolrField
Configuration: eml.site
Index.beginDate False False
//dataset/coverage/temporalCoverage/rangeOfDates/beginDate/
calendarDate/text() | //dataset/coverage/
temporalCoverage/singleDateTime/calendarDate/text()
Processor: SolrField
Configuration: eml.beginDate
Index.endDate False False
//dataset/coverage/temporalCoverage/rangeOfDates/endDate/
calendarDate/text() | //dataset/coverage/
temporalCoverage/singleDateTime/calendarDate/text()
Processor: SolrField
Configuration: eml.endDate
Index.pubDate False False
//dataset/pubDate/text()
Processor: SolrField
Configuration: eml.pubDate
Index.author False  
//dataset/creator/individualName ->{{[givenName] [surName]
}}; givenName = givenName/text(); surName = surName/
text()
Configuration: eml.author
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.authorGivenName False False
//dataset/creator[1]/individualName[1]/givenName/text()
Processor: SolrField
Configuration: eml.authorGivenName
Index.authorSurName False False
//dataset/creator[1]/individualName[1]/surName/text()
Processor: SolrField
Configuration: eml.authorSurName
Index.authorGivenNameSort False False
//dataset/creator[1]/individualName[1]/givenName/text()
Processor: SolrField
Index.authorSurNameSort False False
//dataset/creator[1]/individualName[1]/surName/text()
Processor: SolrField
Configuration: eml.authorSurNameSort
Index.authorLastName True False
//dataset/creator/individualName/surName/text()
Processor: SolrField
Configuration: eml.author_lname
Index.investigator True False
//dataset/creator/individualName/surName/text()
Processor: SolrField
Configuration: eml.investigator
Index.origin False  
//dataset/creator ->{{[individualName]||[organizationName]
}}; organizationName = organizationName/text()
individualName ->{{[givenName] [surName]}};
givenName = givenName/text(); surName = surName/
text()
Configuration: eml.origin
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.contactOrganization True True
//dataset/creator/organizationName/text()
Processor: SolrField
Index.genus True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Genus" or ../taxonRankName="genus"]/text()
Processor: SolrField
Configuration: eml.genus
Index.species True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Species" or ../taxonRankName="species"]/text()
Processor: SolrField
Configuration: eml.species
Index.kingdom True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Kingdom" or ../taxonRankName="kingdom"]/text()
Processor: SolrField
Configuration: eml.kingdom
Index.order True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Order" or ../taxonRankName="order"]/text()
Processor: SolrField
Configuration: eml.order
Index.phylum True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Phylum" or ../taxonRankName="phylum"]/text() | //
taxonomicClassification/taxonRankValue[../
taxonRankName="Division" or ../taxonRankName=
"division"]/text()
Processor: SolrField
Configuration: eml.phylum
Index.family True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Family" or ../taxonRankName="family"]/text()
Processor: SolrField
Configuration: eml.family
Index.class True True
//taxonomicClassification/taxonRankValue[../taxonRankName=
"Class" or ../taxonRankName="class"]/text()
Processor: SolrField
Configuration: eml.class
Index.scientificName False  
//taxonomicClassification[../taxonRankName="Genus" or ../
taxonRankName="genus"] ->{{[genus] [species]}};
genus = ../taxonRankValue/text(); species =
taxonRankValue/text()
Configuration: eml.scientificName
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.attributeName True False
//dataTable/attributeList/attribute/attributeName/text()
Processor: SolrField
Configuration: eml.attributeName
Index.attributeLabel True False
//dataTable/attributeList/attribute/attributeLabel/text()
Processor: SolrField
Configuration: eml.attributeLabel
Index.attributeDescription True False
//dataTable/attributeList/attribute/attributeDefinition/
text()
Processor: SolrField
Index.attributeUnit True False
//dataTable//standardUnit/text() | //dataTable//customUnit/
text()
Processor: SolrField
Configuration: eml.attributeUnit
Index.attribute False  
//dataTable/attributeList/attribute ->{{[attributeName] [
attributeLabel] [attributeDescription] [
attributeUnit]}}; attributeName = attributeName/
text(); attributeLabel = attributeLabel/text();
attributeDescription = attributeDefinition/text();
attributeUnit = .//standardUnit/text() | .//
customUnit/text()
Configuration: eml.attributeText
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.fileID    
Processor: ResolveSolrField
Configuration: eml.fileID
Notes: SolrField which configures the resolve url for the document being processed.
Converter:
Index.text    
Configuration: eml.fullText
Converter:
Index.geohash_1 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash1
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_2 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash2
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_3 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash3
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_4 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash4
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_5 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash5
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_6 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash6
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_7 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash7
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_8 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash8
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_9 False  
//dataset/coverage/geographicCoverage/boundingCoordinates
->{{[northBoundingCoordinate] [
southBoundingCoordinate] [eastBoundingCoordinate] [
westBoundingCoordinate]}}; northBoundingCoordinate =
 northBoundingCoordinate/text();
southBoundingCoordinate = southBoundingCoordinate/
text(); eastBoundingCoordinate =
eastBoundingCoordinate/text();
westBoundingCoordinate = westBoundingCoordinate/
text()
Configuration: eml.geohash9
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.isService False False
boolean(//software/implementation/distribution/online/url)
Processor: SolrField
Configuration: eml.isService
Index.serviceTitle False False
//software/title//text()[normalize-space()]
Processor: SolrField
Configuration: eml.serviceTitle
Index.serviceDescription False False
//software/abstract//text()[normalize-space()]
Processor: SolrField
Configuration: eml.serviceDescription
Index.serviceEndpoint True False
//software/implementation/distribution/online/url/text()
Processor: SolrField
Configuration: eml.serviceEndpoint

Bean Configurations

eml.abstract

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.abstract" class="org.dataone.cn.indexer.parser.MergeSolrField">
       <constructor-arg name="name" value="abstract"/>
       <constructor-arg name="xpath" value="//dataset/abstract/descendant::text()"/>
       <constructor-arg name="delimiter" value=" "/>
       <property name="multivalue" value="false"/>
       <property name="dedupe" value="false"/>
     </bean>

eml.keywords

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.keywords" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="keywords"/>
             <constructor-arg name="xpath" value="//dataset/keywordSet/keyword/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.title

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.title" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="title"/>
             <constructor-arg name="xpath" value="//dataset/title/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

eml.project

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.project" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="project"/>
             <constructor-arg name="xpath" value="//dataset/project/title/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

eml.funding

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.funding" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="funding"/>
             <constructor-arg name="xpath" value="//dataset/project/funding/descendant::text()"/>
             <property name="multivalue" value="true"/>
     </bean>

eml.funderName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.funderName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="funderName"/>
             <constructor-arg name="xpath" value="//dataset/project/award/funderName/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

eml.funderIdentifier

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.funderIdentifier" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="funderIdentifier"/>
             <constructor-arg name="xpath" value="//dataset/project/award/funderIdentifier/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

eml.awardNumber

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.awardNumber" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="awardNumber"/>
             <constructor-arg name="xpath" value="//dataset/project/award/awardNumber/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

eml.awardTitle

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.awardTitle" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="awardTitle"/>
             <constructor-arg name="xpath" value="//dataset/project/award/title/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

eml.southBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.southBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="southBoundCoord"/>
             <constructor-arg name="xpath" value="//dataset/coverage/geographicCoverage/boundingCoordinates/southBoundingCoordinate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLatitudeConverter"/>
     </bean>

eml.northBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.northBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="northBoundCoord"/>
             <constructor-arg name="xpath" value="//dataset/coverage/geographicCoverage/boundingCoordinates/northBoundingCoordinate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLatitudeConverter"/>
     </bean>

eml.westBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.westBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="westBoundCoord"/>
             <constructor-arg name="xpath" value="//dataset/coverage/geographicCoverage/boundingCoordinates/westBoundingCoordinate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

eml.eastBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.eastBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="eastBoundCoord"/>
             <constructor-arg name="xpath" value="//dataset/coverage/geographicCoverage/boundingCoordinates/eastBoundingCoordinate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

eml.site

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.site" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="site"/>
             <constructor-arg name="xpath" value="//dataset/coverage/geographicCoverage/geographicDescription/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

eml.beginDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.beginDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="beginDate"/>
             <constructor-arg name="xpath" value="//dataset/coverage/temporalCoverage/rangeOfDates/beginDate/calendarDate/text() | //dataset/coverage/temporalCoverage/singleDateTime/calendarDate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

eml.endDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.endDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="endDate"/>
             <constructor-arg name="xpath" value="//dataset/coverage/temporalCoverage/rangeOfDates/endDate/calendarDate/text() | //dataset/coverage/temporalCoverage/singleDateTime/calendarDate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

eml.pubDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.pubDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="pubDate"/>
             <constructor-arg name="xpath" value="//dataset/pubDate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

eml.author

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.author" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="eml.authorNameRoot">
                     <constructor-arg name="name" value="author"/>
     </bean>

eml.authorGivenName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.authorGivenName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorGivenName"/>
             <constructor-arg name="xpath" value="//dataset/creator[1]/individualName[1]/givenName/text()"/>
     </bean>

eml.authorSurName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.authorSurName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurName"/>
             <constructor-arg name="xpath" value="//dataset/creator[1]/individualName[1]/surName/text()"/>
     </bean>

eml.authorGivenNameSort

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.authorGivenNameSort" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorGivenNameSort"/>
             <constructor-arg name="xpath" value="//dataset/creator[1]/individualName[1]/givenName/text()"/>
     </bean>

eml.authorSurNameSort

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.authorSurNameSort" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurNameSort"/>
             <constructor-arg name="xpath" value="//dataset/creator[1]/individualName[1]/surName/text()"/>
     </bean>

eml.author_lname

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.author_lname" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorLastName"/>
             <constructor-arg name="xpath" value="//dataset/creator/individualName/surName/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

eml.investigator

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.investigator" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="investigator"/>
             <constructor-arg name="xpath" value="//dataset/creator/individualName/surName/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

eml.origin

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.origin" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.originRoot">
             <constructor-arg name="name" value="origin"/>
     </bean>

eml.contactOrganization

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.contactOrganization" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="contactOrganization"/>
             <constructor-arg name="xpath" value="//dataset/creator/organizationName/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.genus

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.genus" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="genus"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Genus&quot; or ../taxonRankName=&quot;genus&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.species

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.species" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="species"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Species&quot; or ../taxonRankName=&quot;species&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.kingdom

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.kingdom" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="kingdom"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Kingdom&quot; or ../taxonRankName=&quot;kingdom&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.order

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.order" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="order"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Order&quot; or ../taxonRankName=&quot;order&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.phylum

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.phylum" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="phylum"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Phylum&quot; or ../taxonRankName=&quot;phylum&quot;]/text() | //taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Division&quot; or ../taxonRankName=&quot;division&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.family

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.family" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="family"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Family&quot; or ../taxonRankName=&quot;family&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.class

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.class" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="class"/>
             <constructor-arg name="xpath" value="//taxonomicClassification/taxonRankValue[../taxonRankName=&quot;Class&quot; or ../taxonRankName=&quot;class&quot;]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

eml.scientificName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.scientificName" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.scientificNameRoot">
                     <constructor-arg name="name" value="scientificName"/>
     </bean>

eml.attributeName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.attributeName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeName"/>
             <constructor-arg name="xpath" value="//dataTable/attributeList/attribute/attributeName/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

eml.attributeLabel

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.attributeLabel" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeLabel"/>
             <constructor-arg name="xpath" value="//dataTable/attributeList/attribute/attributeLabel/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

eml.attributeDescription

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.attributeDescription" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeDescription"/>
             <constructor-arg name="xpath" value="//dataTable/attributeList/attribute/attributeDefinition/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

eml.attributeUnit

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.attributeUnit" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeUnit"/>
             <constructor-arg name="xpath" value="//dataTable//standardUnit/text() | //dataTable//customUnit/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

eml.attributeText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.attributeText" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.attributeTextRoot">
                     <constructor-arg name="name" value="attribute"/>
     </bean>

eml.fileID

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.fileID" class="org.dataone.cn.indexer.parser.ResolveSolrField">
             <constructor-arg name="name" value="fileID"/>
     </bean>

eml.fullText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.fullText" class="org.dataone.cn.indexer.parser.AggregateSolrField">
             <property name="name" value="text"/>
             <property name="solrFields">
                     <list>
                     <ref bean="eml.text"/>
                     <ref bean="eml.attributeName.noDupe"/>
                     <ref bean="eml.attributeLabel.noDupe"/>
                     <ref bean="eml.attributeDescription.noDupe"/>
                     <ref bean="eml.attributeUnit.noDupe"/>
             </list>
             </property>
     </bean>

eml.geohash1

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash1" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_1"/>
             <property name="converter" ref="geohashConverter_1"/>
     </bean>

eml.geohash2

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash2" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_2"/>
             <property name="converter" ref="geohashConverter_2"/>
     </bean>

eml.geohash3

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash3" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_3"/>
             <property name="converter" ref="geohashConverter_3"/>
     </bean>

eml.geohash4

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash4" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_4"/>
             <property name="converter" ref="geohashConverter_4"/>
     </bean>

eml.geohash5

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash5" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_5"/>
             <property name="converter" ref="geohashConverter_5"/>
     </bean>

eml.geohash6

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash6" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_6"/>
             <property name="converter" ref="geohashConverter_6"/>
     </bean>

eml.geohash7

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash7" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_7"/>
             <property name="converter" ref="geohashConverter_7"/>
     </bean>

eml.geohash8

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash8" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_8"/>
             <property name="converter" ref="geohashConverter_8"/>
     </bean>

eml.geohash9

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.geohash9" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="eml.geohashRoot">
             <constructor-arg name="name" value="geohash_9"/>
             <property name="converter" ref="geohashConverter_9"/>
     </bean>

eml.isService

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.isService" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="isService"/>
             <constructor-arg name="xpath" value="boolean(//software/implementation/distribution/online/url)"/>
     </bean>

eml.serviceTitle

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.serviceTitle" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceTitle"/>
             <constructor-arg name="xpath" value="//software/title//text()[normalize-space()]"/>
             <property name="combineNodes" value="true"/>
             <property name="combineDelimiter" value=":"/>
     </bean>

eml.serviceDescription

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.serviceDescription" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceDescription"/>
             <constructor-arg name="xpath" value="//software/abstract//text()[normalize-space()]"/>
             <property name="combineNodes" value="true"/>
             <property name="combineDelimiter" value=":"/>
     </bean>

eml.serviceEndpoint

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="eml.serviceEndpoint" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceEndpoint"/>
             <constructor-arg name="xpath" value="//software/implementation/distribution/online/url/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

Ecological Markup Language Annotations

Describes parser configuration for: emlAnnotationSubprocessor

Format IDs Processed

This parser processes the following DataONE format IDs:

  • Ecological Metadata Language, version 2.2.0
    formatId: https://eml.ecoinformatics.org/eml-2.2.0

A full list of DataONE format IDs can be found at https://cn.dataone.org/cn/v2/formats/

Fields

The following fields in the solr index are populated from values retrieved from this type of metadata document. Note that these are in addition to the information extracted from System Metadata Parser.

Solr Field Multi Dedupe Source
Index.sem_annotation False False
//annotation/valueURI/text()
Processor: SolrField

Bean Configurations

emlAnnotationSubprocessor.bean0

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" class="org.dataone.cn.indexer.parser.SolrField" id="emlAnnotationSubprocessor.bean0">
                                     <constructor-arg name="name" value="sem_annotation"/>
                                     <constructor-arg name="xpath" value="//annotation/valueURI/text()"/>
                                     <constructor-arg name="multivalue" value="true"/>
                             </bean>

FGDC ESRI Profile

Describes parser configuration for: fgdcEsri80Subprocessor

Format IDs Processed

This parser processes the following DataONE format IDs:

  • ESRI Profile of the Content Standard for Digital Geospatial Metadata, March 2003
    formatId: http://www.esri.com/metadata/esriprof80.dtd

A full list of DataONE format IDs can be found at https://cn.dataone.org/cn/v2/formats/

Fields

The following fields in the solr index are populated from values retrieved from this type of metadata document. Note that these are in addition to the information extracted from System Metadata Parser.

Solr Field Multi Dedupe Source
Index.abstract False False
/*[local-name() = 'metadata']/idinfo/descript/abstract/
descendant::text()
Processor: MergeSolrField
Configuration: fgdc.abstract
Index.beginDate False False
/*[local-name() = 'metadata']/idinfo/timeperd/timeinfo/
rngdates/begdate/text()
Processor: SolrField
Configuration: fgdc.beginDate
Index.contactOrganization True True
/*[local-name() = 'metadata']/distinfo/distrib/cntinfo/
cntperp/cntorg/text() | /*[local-name() =
'metadata']/distinfo/distrib/cntinfo/cntorgp/cntorg/
text()
Processor: SolrField
Index.eastBoundCoord False False
/*[local-name() = 'metadata']/idinfo/spdom/bounding/eastbc/
text()
Processor: SolrField
Configuration: fgdc.eastBoundCoord
Index.westBoundCoord False False
/*[local-name() = 'metadata']/idinfo/spdom/bounding/westbc/
text()
Processor: SolrField
Configuration: fgdc.westBoundCoord
Index.northBoundCoord False False
/*[local-name() = 'metadata']/idinfo/spdom/bounding/northbc/
text()
Processor: SolrField
Configuration: fgdc.northBoundCoord
Index.southBoundCoord False False
/*[local-name() = 'metadata']/idinfo/spdom/bounding/southbc/
text()
Processor: SolrField
Configuration: fgdc.southBoundCoord
Index.edition False False
/*[local-name() = 'metadata']/idinfo/citeinfo/edition/text()
Processor: SolrField
Configuration: fgdc.edition
Index.endDate False False
/*[local-name() = 'metadata']/idinfo/timeperd/timeinfo/
rngdates/enddate/text()
Processor: SolrField
Configuration: fgdc.endDate
Index.gcmdKeyword True False
/*[local-name() = 'metadata']/idinfo/keywords/theme[themekt=
'GCMD Science Keywords']/themekey/text()
Processor: SolrField
Configuration: fgdc.gcmdKeyword
Index.keywords True True
/*[local-name() = 'metadata']/idinfo/keywords/theme/
themekey/text() | /*[local-name() = 'metadata']/
idinfo/keywords/place/placekey/text()
Processor: SolrField
Configuration: fgdc.keywords
Index.geoform False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
geoform/text()
Processor: SolrField
Configuration: fgdc.geoform
Index.genus True False
//taxoncl/taxonrv[../taxonrn="Genus"]/text()
Processor: SolrField
Configuration: fgdc.genus
Index.kingdom True False
//taxoncl/taxonrv[../taxonrn="Kingdom"]/text()
Processor: SolrField
Configuration: fgdc.kingdom
Index.order True False
//taxoncl/taxonrv[../taxonrn="Order"]/text()
Processor: SolrField
Configuration: fgdc.order
Index.phylum True False
//taxoncl/taxonrv[../taxonrn="Phylum"]/text() | //taxoncl/
taxonrv[../taxonrn="Division"]/text()
Processor: SolrField
Configuration: fgdc.phylum
Index.species True False
//taxoncl/taxonrv[../taxonrn="Species"]/text()
Processor: SolrField
Configuration: fgdc.species
Index.family True False
//taxoncl/taxonrv[../taxonrn="Family"]/text()
Processor: SolrField
Configuration: fgdc.family
Index.class True False
//taxoncl/taxonrv[../taxonrn="Class"]/text()
Processor: SolrField
Configuration: fgdc.class
Index.origin True False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
origin/text()
Processor: SolrField
Configuration: fgdc.origin
Index.scientificName False  
//taxoncl/taxonrv[../taxonrn="Genus"] ->{{[genus] [species]
}}; genus = ../taxonrv/text(); species = taxonrv/
text()
Configuration: fgdc.scientificName
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.placeKey True False
/*[local-name() = 'metadata']/idinfo/keywords/place/
placekey/text()
Processor: SolrField
Configuration: fgdc.placeKey
Index.pubDate False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
pubdate/text()
Processor: SolrField
Configuration: fgdc.pubDate
Index.purpose False False
/*[local-name() = 'metadata']/idinfo/descript/purpose/
descendant::text()
Processor: MergeSolrField
Configuration: fgdc.purpose
Index.title False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
title/text()
Processor: SolrField
Configuration: fgdc.title
Index.webUrl True False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
onlink/text()
Processor: SolrField
Configuration: fgdc.web_url
Index.fileID    
Processor: ResolveSolrField
Configuration: fgdc.fileID
Notes: SolrField which configures the resolve url for the document being processed.
Converter:
Index.text    
Configuration: fgdc.fullText
Converter:
Index.presentationCat False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
geoform/text()
Processor: SolrField
Configuration: fgdc.presentationCat
Index.author False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
origin/text()
Processor: SolrField
Configuration: fgdc.author
Index.authorSurName False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
origin[1]/text()
Processor: SolrField
Configuration: fgdc.authorSurName
Index.authorSurNameSort False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
origin[1]/text()
Processor: SolrField
Configuration: fgdc.authorSurNameSort
Index.investigator True False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
origin/text()
Processor: SolrField
Configuration: fgdc.investigator
Index.site True False
/*[local-name() = 'metadata']/idinfo/spdom/descgeog/text()
Processor: SolrField
Configuration: fgdc.site
Index.attributeName True False
//attr/attrlabl/text()
Processor: SolrField
Configuration: fgdc.attributeName
Index.attributeLabel True False
//attr/attalias/text()
Processor: SolrField
Configuration: fgdc.attributeLabel
Index.attributeDescription True False
//attr/attrdef/text()
Processor: SolrField
Index.attributeUnit True False
//attr/attrdomv//attrunit/text() | //attr//attrdomv//edomv/
text()
Processor: SolrField
Configuration: fgdc.attributeUnit
Index.attribute False  
//attr ->{{[attributeName] [attributeLabel] [
attributeDescription] [attributeUnit]}};
attributeName = attrlabl/text(); attributeLabel =
attalias/text(); attributeDescription = attrdef/
text(); attributeUnit = attrdomv//attrunit/text() |
.//attrdomv//edomv/text()
Configuration: fgdc.attributeText
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.geohash_1 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash1
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_2 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash2
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_3 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash3
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_4 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash4
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_5 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash5
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_6 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash6
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_7 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash7
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_8 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash8
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_9 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash9
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter

Bean Configurations

fgdc.abstract

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.abstract" class="org.dataone.cn.indexer.parser.MergeSolrField">
       <constructor-arg name="name" value="abstract"/>
       <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/descript/abstract/descendant::text()"/>
       <constructor-arg name="delimiter" value=" "/>
       <property name="multivalue" value="false"/>
       <property name="dedupe" value="false"/>
     </bean>

fgdc.beginDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.beginDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="beginDate"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/timeperd/timeinfo/rngdates/begdate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="fgdcDateConverter"/>
     </bean>

fgdc.contactOrganization

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.contactOrganization" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="contactOrganization"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/distinfo/distrib/cntinfo/cntperp/cntorg/text() | /*[local-name() = 'metadata']/distinfo/distrib/cntinfo/cntorgp/cntorg/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

fgdc.eastBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.eastBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="eastBoundCoord"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/spdom/bounding/eastbc/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

fgdc.westBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.westBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="westBoundCoord"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/spdom/bounding/westbc/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

fgdc.northBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.northBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="northBoundCoord"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/spdom/bounding/northbc/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

fgdc.southBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.southBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="southBoundCoord"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/spdom/bounding/southbc/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

fgdc.edition

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.edition" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="edition"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citeinfo/edition/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.endDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.endDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="endDate"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/timeperd/timeinfo/rngdates/enddate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="fgdcDateConverter"/>
     </bean>

fgdc.gcmdKeyword

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.gcmdKeyword" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="gcmdKeyword"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/keywords/theme[themekt='GCMD Science Keywords']/themekey/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.keywords

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.keywords" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="keywords"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/keywords/theme/themekey/text() | /*[local-name() = 'metadata']/idinfo/keywords/place/placekey/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
             <property name="disallowedValues">
                     <list>
                             <value>none</value>
                     </list>
             </property>
     </bean>

fgdc.geoform

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geoform" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="geoform"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/geoform/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.genus

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.genus" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="genus"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Genus&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.kingdom

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.kingdom" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="kingdom"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Kingdom&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.order

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.order" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="order"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Order&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.phylum

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.phylum" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="phylum"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Phylum&quot;]/text() | //taxoncl/taxonrv[../taxonrn=&quot;Division&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.species

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.species" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="species"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Species&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.family

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.family" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="family"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Family&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.class

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.class" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="class"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Class&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.origin

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.origin" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="origin"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/origin/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.scientificName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.scientificName" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="fgdc.scientificNameRoot">
                     <constructor-arg name="name" value="scientificName"/>
     </bean>

fgdc.placeKey

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.placeKey" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="placeKey"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/keywords/place/placekey/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.pubDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.pubDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="pubDate"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/pubdate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="fgdcDateConverter"/>
     </bean>

fgdc.purpose

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.purpose" class="org.dataone.cn.indexer.parser.MergeSolrField">
       <constructor-arg name="name" value="purpose"/>
       <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/descript/purpose/descendant::text()"/>
       <constructor-arg name="delimiter" value=" "/>
       <property name="multivalue" value="false"/>
       <property name="dedupe" value="false"/>
     </bean>

fgdc.title

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.title" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="title"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/title/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.web_url

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.web_url" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="webUrl"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/onlink/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.fileID

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.fileID" class="org.dataone.cn.indexer.parser.ResolveSolrField">
             <constructor-arg name="name" value="fileID"/>
     </bean>

fgdc.fullText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.fullText" class="org.dataone.cn.indexer.parser.AggregateSolrField">
             <property name="name" value="text"/>
             <property name="solrFields">
                     <list>
                     <ref bean="fgdc.text"/>
             </list>
             </property>
     </bean>

fgdc.presentationCat

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.presentationCat" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="presentationCat"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/geoform/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.author

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.author" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="author"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/origin/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.authorSurName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.authorSurName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurName"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/origin[1]/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.authorSurNameSort

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.authorSurNameSort" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurNameSort"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/origin[1]/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.investigator

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.investigator" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="investigator"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/origin/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.site

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.site" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="site"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/spdom/descgeog/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.attributeName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.attributeName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeName"/>
             <constructor-arg name="xpath" value="//attr/attrlabl/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

fgdc.attributeLabel

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.attributeLabel" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeLabel"/>
             <constructor-arg name="xpath" value="//attr/attalias/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

fgdc.attributeDescription

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.attributeDescription" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeDescription"/>
             <constructor-arg name="xpath" value="//attr/attrdef/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

fgdc.attributeUnit

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.attributeUnit" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeUnit"/>
             <constructor-arg name="xpath" value="//attr/attrdomv//attrunit/text() | //attr//attrdomv//edomv/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

fgdc.attributeText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.attributeText" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="fgdc.attributeTextRoot">
                     <constructor-arg name="name" value="attribute"/>
     </bean>

fgdc.geohash1

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash1" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_1"/>
             <property name="converter" ref="geohashConverter_1"/>
     </bean>

fgdc.geohash2

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash2" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_2"/>
             <property name="converter" ref="geohashConverter_2"/>
     </bean>

fgdc.geohash3

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash3" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_3"/>
             <property name="converter" ref="geohashConverter_3"/>
     </bean>

fgdc.geohash4

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash4" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_4"/>
             <property name="converter" ref="geohashConverter_4"/>
     </bean>

fgdc.geohash5

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash5" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_5"/>
             <property name="converter" ref="geohashConverter_5"/>
     </bean>

fgdc.geohash6

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash6" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_6"/>
             <property name="converter" ref="geohashConverter_6"/>
     </bean>

fgdc.geohash7

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash7" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_7"/>
             <property name="converter" ref="geohashConverter_7"/>
     </bean>

fgdc.geohash8

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash8" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_8"/>
             <property name="converter" ref="geohashConverter_8"/>
     </bean>

fgdc.geohash9

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash9" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_9"/>
             <property name="converter" ref="geohashConverter_9"/>
     </bean>

FGDC, v001.1-1999

Describes parser configuration for: fgdcstd00111999Subprocessor

Format IDs Processed

This parser processes the following DataONE format IDs:

  • Content Standard for Digital Geospatial Metadata, Biological Data Profile, version 001.1-1999
    formatId: FGDC-STD-001.1-1999

A full list of DataONE format IDs can be found at https://cn.dataone.org/cn/v2/formats/

Fields

The following fields in the solr index are populated from values retrieved from this type of metadata document. Note that these are in addition to the information extracted from System Metadata Parser.

Solr Field Multi Dedupe Source
Index.abstract False False
/*[local-name() = 'metadata']/idinfo/descript/abstract/
descendant::text()
Processor: MergeSolrField
Configuration: fgdc.abstract
Index.beginDate False False
/*[local-name() = 'metadata']/idinfo/timeperd/timeinfo/
rngdates/begdate/text()
Processor: SolrField
Configuration: fgdc.beginDate
Index.contactOrganization True True
/*[local-name() = 'metadata']/distinfo/distrib/cntinfo/
cntperp/cntorg/text() | /*[local-name() =
'metadata']/distinfo/distrib/cntinfo/cntorgp/cntorg/
text()
Processor: SolrField
Index.eastBoundCoord False False
/*[local-name() = 'metadata']/idinfo/spdom/bounding/eastbc/
text()
Processor: SolrField
Configuration: fgdc.eastBoundCoord
Index.westBoundCoord False False
/*[local-name() = 'metadata']/idinfo/spdom/bounding/westbc/
text()
Processor: SolrField
Configuration: fgdc.westBoundCoord
Index.northBoundCoord False False
/*[local-name() = 'metadata']/idinfo/spdom/bounding/northbc/
text()
Processor: SolrField
Configuration: fgdc.northBoundCoord
Index.southBoundCoord False False
/*[local-name() = 'metadata']/idinfo/spdom/bounding/southbc/
text()
Processor: SolrField
Configuration: fgdc.southBoundCoord
Index.edition False False
/*[local-name() = 'metadata']/idinfo/citeinfo/edition/text()
Processor: SolrField
Configuration: fgdc.edition
Index.endDate False False
/*[local-name() = 'metadata']/idinfo/timeperd/timeinfo/
rngdates/enddate/text()
Processor: SolrField
Configuration: fgdc.endDate
Index.gcmdKeyword True False
/*[local-name() = 'metadata']/idinfo/keywords/theme[themekt=
'GCMD Science Keywords']/themekey/text()
Processor: SolrField
Configuration: fgdc.gcmdKeyword
Index.keywords True True
/*[local-name() = 'metadata']/idinfo/keywords/theme/
themekey/text() | /*[local-name() = 'metadata']/
idinfo/keywords/place/placekey/text()
Processor: SolrField
Configuration: fgdc.keywords
Index.geoform False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
geoform/text()
Processor: SolrField
Configuration: fgdc.geoform
Index.genus True False
//taxoncl/taxonrv[../taxonrn="Genus"]/text()
Processor: SolrField
Configuration: fgdc.genus
Index.kingdom True False
//taxoncl/taxonrv[../taxonrn="Kingdom"]/text()
Processor: SolrField
Configuration: fgdc.kingdom
Index.order True False
//taxoncl/taxonrv[../taxonrn="Order"]/text()
Processor: SolrField
Configuration: fgdc.order
Index.phylum True False
//taxoncl/taxonrv[../taxonrn="Phylum"]/text() | //taxoncl/
taxonrv[../taxonrn="Division"]/text()
Processor: SolrField
Configuration: fgdc.phylum
Index.species True False
//taxoncl/taxonrv[../taxonrn="Species"]/text()
Processor: SolrField
Configuration: fgdc.species
Index.family True False
//taxoncl/taxonrv[../taxonrn="Family"]/text()
Processor: SolrField
Configuration: fgdc.family
Index.class True False
//taxoncl/taxonrv[../taxonrn="Class"]/text()
Processor: SolrField
Configuration: fgdc.class
Index.scientificName False  
//taxoncl/taxonrv[../taxonrn="Genus"] ->{{[genus] [species]
}}; genus = ../taxonrv/text(); species = taxonrv/
text()
Configuration: fgdc.scientificName
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.origin True False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
origin/text()
Processor: SolrField
Configuration: fgdc.origin
Index.placeKey True False
/*[local-name() = 'metadata']/idinfo/keywords/place/
placekey/text()
Processor: SolrField
Configuration: fgdc.placeKey
Index.pubDate False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
pubdate/text()
Processor: SolrField
Configuration: fgdc.pubDate
Index.purpose False False
/*[local-name() = 'metadata']/idinfo/descript/purpose/
descendant::text()
Processor: MergeSolrField
Configuration: fgdc.purpose
Index.title False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
title/text()
Processor: SolrField
Configuration: fgdc.title
Index.webUrl True False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
onlink/text()
Processor: SolrField
Configuration: fgdc.web_url
Index.fileID    
Processor: ResolveSolrField
Configuration: fgdc.fileID
Notes: SolrField which configures the resolve url for the document being processed.
Converter:
Index.text    
Configuration: fgdc.fullText
Converter:
Index.presentationCat False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
geoform/text()
Processor: SolrField
Configuration: fgdc.presentationCat
Index.author False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
origin/text()
Processor: SolrField
Configuration: fgdc.author
Index.authorSurName False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
origin[1]/text()
Processor: SolrField
Configuration: fgdc.authorSurName
Index.authorSurNameSort False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
origin[1]/text()
Processor: SolrField
Configuration: fgdc.authorSurNameSort
Index.investigator True False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
origin/text()
Processor: SolrField
Configuration: fgdc.investigator
Index.site True False
/*[local-name() = 'metadata']/idinfo/spdom/descgeog/text()
Processor: SolrField
Configuration: fgdc.site
Index.attributeName True False
//attr/attrlabl/text()
Processor: SolrField
Configuration: fgdc.attributeName
Index.attributeLabel True False
//attr/attalias/text()
Processor: SolrField
Configuration: fgdc.attributeLabel
Index.attributeDescription True False
//attr/attrdef/text()
Processor: SolrField
Index.attributeUnit True False
//attr/attrdomv//attrunit/text() | //attr//attrdomv//edomv/
text()
Processor: SolrField
Configuration: fgdc.attributeUnit
Index.attribute False  
//attr ->{{[attributeName] [attributeLabel] [
attributeDescription] [attributeUnit]}};
attributeName = attrlabl/text(); attributeLabel =
attalias/text(); attributeDescription = attrdef/
text(); attributeUnit = attrdomv//attrunit/text() |
.//attrdomv//edomv/text()
Configuration: fgdc.attributeText
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.geohash_1 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash1
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_2 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash2
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_3 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash3
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_4 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash4
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_5 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash5
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_6 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash6
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_7 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash7
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_8 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash8
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_9 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash9
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter

Bean Configurations

fgdc.abstract

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.abstract" class="org.dataone.cn.indexer.parser.MergeSolrField">
       <constructor-arg name="name" value="abstract"/>
       <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/descript/abstract/descendant::text()"/>
       <constructor-arg name="delimiter" value=" "/>
       <property name="multivalue" value="false"/>
       <property name="dedupe" value="false"/>
     </bean>

fgdc.beginDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.beginDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="beginDate"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/timeperd/timeinfo/rngdates/begdate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="fgdcDateConverter"/>
     </bean>

fgdc.contactOrganization

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.contactOrganization" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="contactOrganization"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/distinfo/distrib/cntinfo/cntperp/cntorg/text() | /*[local-name() = 'metadata']/distinfo/distrib/cntinfo/cntorgp/cntorg/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

fgdc.eastBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.eastBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="eastBoundCoord"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/spdom/bounding/eastbc/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

fgdc.westBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.westBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="westBoundCoord"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/spdom/bounding/westbc/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

fgdc.northBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.northBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="northBoundCoord"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/spdom/bounding/northbc/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

fgdc.southBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.southBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="southBoundCoord"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/spdom/bounding/southbc/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

fgdc.edition

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.edition" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="edition"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citeinfo/edition/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.endDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.endDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="endDate"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/timeperd/timeinfo/rngdates/enddate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="fgdcDateConverter"/>
     </bean>

fgdc.gcmdKeyword

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.gcmdKeyword" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="gcmdKeyword"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/keywords/theme[themekt='GCMD Science Keywords']/themekey/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.keywords

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.keywords" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="keywords"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/keywords/theme/themekey/text() | /*[local-name() = 'metadata']/idinfo/keywords/place/placekey/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
             <property name="disallowedValues">
                     <list>
                             <value>none</value>
                     </list>
             </property>
     </bean>

fgdc.geoform

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geoform" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="geoform"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/geoform/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.genus

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.genus" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="genus"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Genus&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.kingdom

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.kingdom" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="kingdom"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Kingdom&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.order

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.order" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="order"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Order&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.phylum

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.phylum" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="phylum"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Phylum&quot;]/text() | //taxoncl/taxonrv[../taxonrn=&quot;Division&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.species

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.species" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="species"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Species&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.family

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.family" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="family"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Family&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.class

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.class" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="class"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Class&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.scientificName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.scientificName" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="fgdc.scientificNameRoot">
                     <constructor-arg name="name" value="scientificName"/>
     </bean>

fgdc.origin

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.origin" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="origin"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/origin/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.placeKey

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.placeKey" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="placeKey"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/keywords/place/placekey/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.pubDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.pubDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="pubDate"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/pubdate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="fgdcDateConverter"/>
     </bean>

fgdc.purpose

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.purpose" class="org.dataone.cn.indexer.parser.MergeSolrField">
       <constructor-arg name="name" value="purpose"/>
       <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/descript/purpose/descendant::text()"/>
       <constructor-arg name="delimiter" value=" "/>
       <property name="multivalue" value="false"/>
       <property name="dedupe" value="false"/>
     </bean>

fgdc.title

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.title" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="title"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/title/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.web_url

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.web_url" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="webUrl"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/onlink/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.fileID

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.fileID" class="org.dataone.cn.indexer.parser.ResolveSolrField">
             <constructor-arg name="name" value="fileID"/>
     </bean>

fgdc.fullText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.fullText" class="org.dataone.cn.indexer.parser.AggregateSolrField">
             <property name="name" value="text"/>
             <property name="solrFields">
                     <list>
                     <ref bean="fgdc.text"/>
             </list>
             </property>
     </bean>

fgdc.presentationCat

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.presentationCat" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="presentationCat"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/geoform/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.author

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.author" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="author"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/origin/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.authorSurName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.authorSurName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurName"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/origin[1]/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.authorSurNameSort

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.authorSurNameSort" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurNameSort"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/origin[1]/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.investigator

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.investigator" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="investigator"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/origin/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.site

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.site" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="site"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/spdom/descgeog/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.attributeName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.attributeName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeName"/>
             <constructor-arg name="xpath" value="//attr/attrlabl/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

fgdc.attributeLabel

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.attributeLabel" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeLabel"/>
             <constructor-arg name="xpath" value="//attr/attalias/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

fgdc.attributeDescription

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.attributeDescription" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeDescription"/>
             <constructor-arg name="xpath" value="//attr/attrdef/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

fgdc.attributeUnit

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.attributeUnit" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeUnit"/>
             <constructor-arg name="xpath" value="//attr/attrdomv//attrunit/text() | //attr//attrdomv//edomv/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

fgdc.attributeText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.attributeText" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="fgdc.attributeTextRoot">
                     <constructor-arg name="name" value="attribute"/>
     </bean>

fgdc.geohash1

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash1" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_1"/>
             <property name="converter" ref="geohashConverter_1"/>
     </bean>

fgdc.geohash2

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash2" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_2"/>
             <property name="converter" ref="geohashConverter_2"/>
     </bean>

fgdc.geohash3

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash3" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_3"/>
             <property name="converter" ref="geohashConverter_3"/>
     </bean>

fgdc.geohash4

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash4" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_4"/>
             <property name="converter" ref="geohashConverter_4"/>
     </bean>

fgdc.geohash5

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash5" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_5"/>
             <property name="converter" ref="geohashConverter_5"/>
     </bean>

fgdc.geohash6

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash6" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_6"/>
             <property name="converter" ref="geohashConverter_6"/>
     </bean>

fgdc.geohash7

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash7" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_7"/>
             <property name="converter" ref="geohashConverter_7"/>
     </bean>

fgdc.geohash8

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash8" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_8"/>
             <property name="converter" ref="geohashConverter_8"/>
     </bean>

fgdc.geohash9

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash9" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_9"/>
             <property name="converter" ref="geohashConverter_9"/>
     </bean>

FGDC, v001-1998

Describes parser configuration for: fgdcstd0011998Subprocessor

Format IDs Processed

This parser processes the following DataONE format IDs:

  • Content Standard for Digital Geospatial Metadata, version 001-1998
    formatId: FGDC-STD-001-1998

A full list of DataONE format IDs can be found at https://cn.dataone.org/cn/v2/formats/

Fields

The following fields in the solr index are populated from values retrieved from this type of metadata document. Note that these are in addition to the information extracted from System Metadata Parser.

Solr Field Multi Dedupe Source
Index.abstract False False
/*[local-name() = 'metadata']/idinfo/descript/abstract/
descendant::text()
Processor: MergeSolrField
Configuration: fgdc.abstract
Index.beginDate False False
/*[local-name() = 'metadata']/idinfo/timeperd/timeinfo/
rngdates/begdate/text()
Processor: SolrField
Configuration: fgdc.beginDate
Index.contactOrganization True True
/*[local-name() = 'metadata']/distinfo/distrib/cntinfo/
cntperp/cntorg/text() | /*[local-name() =
'metadata']/distinfo/distrib/cntinfo/cntorgp/cntorg/
text()
Processor: SolrField
Index.eastBoundCoord False False
/*[local-name() = 'metadata']/idinfo/spdom/bounding/eastbc/
text()
Processor: SolrField
Configuration: fgdc.eastBoundCoord
Index.westBoundCoord False False
/*[local-name() = 'metadata']/idinfo/spdom/bounding/westbc/
text()
Processor: SolrField
Configuration: fgdc.westBoundCoord
Index.northBoundCoord False False
/*[local-name() = 'metadata']/idinfo/spdom/bounding/northbc/
text()
Processor: SolrField
Configuration: fgdc.northBoundCoord
Index.southBoundCoord False False
/*[local-name() = 'metadata']/idinfo/spdom/bounding/southbc/
text()
Processor: SolrField
Configuration: fgdc.southBoundCoord
Index.edition False False
/*[local-name() = 'metadata']/idinfo/citeinfo/edition/text()
Processor: SolrField
Configuration: fgdc.edition
Index.endDate False False
/*[local-name() = 'metadata']/idinfo/timeperd/timeinfo/
rngdates/enddate/text()
Processor: SolrField
Configuration: fgdc.endDate
Index.gcmdKeyword True False
/*[local-name() = 'metadata']/idinfo/keywords/theme[themekt=
'GCMD Science Keywords']/themekey/text()
Processor: SolrField
Configuration: fgdc.gcmdKeyword
Index.keywords True True
/*[local-name() = 'metadata']/idinfo/keywords/theme/
themekey/text() | /*[local-name() = 'metadata']/
idinfo/keywords/place/placekey/text()
Processor: SolrField
Configuration: fgdc.keywords
Index.geoform False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
geoform/text()
Processor: SolrField
Configuration: fgdc.geoform
Index.genus True False
//taxoncl/taxonrv[../taxonrn="Genus"]/text()
Processor: SolrField
Configuration: fgdc.genus
Index.kingdom True False
//taxoncl/taxonrv[../taxonrn="Kingdom"]/text()
Processor: SolrField
Configuration: fgdc.kingdom
Index.order True False
//taxoncl/taxonrv[../taxonrn="Order"]/text()
Processor: SolrField
Configuration: fgdc.order
Index.phylum True False
//taxoncl/taxonrv[../taxonrn="Phylum"]/text() | //taxoncl/
taxonrv[../taxonrn="Division"]/text()
Processor: SolrField
Configuration: fgdc.phylum
Index.species True False
//taxoncl/taxonrv[../taxonrn="Species"]/text()
Processor: SolrField
Configuration: fgdc.species
Index.family True False
//taxoncl/taxonrv[../taxonrn="Family"]/text()
Processor: SolrField
Configuration: fgdc.family
Index.class True False
//taxoncl/taxonrv[../taxonrn="Class"]/text()
Processor: SolrField
Configuration: fgdc.class
Index.scientificName False  
//taxoncl/taxonrv[../taxonrn="Genus"] ->{{[genus] [species]
}}; genus = ../taxonrv/text(); species = taxonrv/
text()
Configuration: fgdc.scientificName
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.origin True False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
origin/text()
Processor: SolrField
Configuration: fgdc.origin
Index.placeKey True False
/*[local-name() = 'metadata']/idinfo/keywords/place/
placekey/text()
Processor: SolrField
Configuration: fgdc.placeKey
Index.pubDate False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
pubdate/text()
Processor: SolrField
Configuration: fgdc.pubDate
Index.purpose False False
/*[local-name() = 'metadata']/idinfo/descript/purpose/
descendant::text()
Processor: MergeSolrField
Configuration: fgdc.purpose
Index.title False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
title/text()
Processor: SolrField
Configuration: fgdc.title
Index.webUrl True False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
onlink/text()
Processor: SolrField
Configuration: fgdc.web_url
Index.fileID    
Processor: ResolveSolrField
Configuration: fgdc.fileID
Notes: SolrField which configures the resolve url for the document being processed.
Converter:
Index.text    
Configuration: fgdc.fullText
Converter:
Index.presentationCat False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
geoform/text()
Processor: SolrField
Configuration: fgdc.presentationCat
Index.author False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
origin/text()
Processor: SolrField
Configuration: fgdc.author
Index.authorSurName False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
origin[1]/text()
Processor: SolrField
Configuration: fgdc.authorSurName
Index.authorSurNameSort False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
origin[1]/text()
Processor: SolrField
Configuration: fgdc.authorSurNameSort
Index.investigator True False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
origin/text()
Processor: SolrField
Configuration: fgdc.investigator
Index.site True False
/*[local-name() = 'metadata']/idinfo/spdom/descgeog/text()
Processor: SolrField
Configuration: fgdc.site
Index.attributeName True False
//attr/attrlabl/text()
Processor: SolrField
Configuration: fgdc.attributeName
Index.attributeLabel True False
//attr/attalias/text()
Processor: SolrField
Configuration: fgdc.attributeLabel
Index.attributeDescription True False
//attr/attrdef/text()
Processor: SolrField
Index.attributeUnit True False
//attr/attrdomv//attrunit/text() | //attr//attrdomv//edomv/
text()
Processor: SolrField
Configuration: fgdc.attributeUnit
Index.attribute False  
//attr ->{{[attributeName] [attributeLabel] [
attributeDescription] [attributeUnit]}};
attributeName = attrlabl/text(); attributeLabel =
attalias/text(); attributeDescription = attrdef/
text(); attributeUnit = attrdomv//attrunit/text() |
.//attrdomv//edomv/text()
Configuration: fgdc.attributeText
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.geohash_1 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash1
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_2 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash2
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_3 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash3
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_4 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash4
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_5 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash5
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_6 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash6
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_7 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash7
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_8 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash8
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_9 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash9
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter

Bean Configurations

fgdc.abstract

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.abstract" class="org.dataone.cn.indexer.parser.MergeSolrField">
       <constructor-arg name="name" value="abstract"/>
       <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/descript/abstract/descendant::text()"/>
       <constructor-arg name="delimiter" value=" "/>
       <property name="multivalue" value="false"/>
       <property name="dedupe" value="false"/>
     </bean>

fgdc.beginDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.beginDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="beginDate"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/timeperd/timeinfo/rngdates/begdate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="fgdcDateConverter"/>
     </bean>

fgdc.contactOrganization

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.contactOrganization" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="contactOrganization"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/distinfo/distrib/cntinfo/cntperp/cntorg/text() | /*[local-name() = 'metadata']/distinfo/distrib/cntinfo/cntorgp/cntorg/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

fgdc.eastBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.eastBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="eastBoundCoord"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/spdom/bounding/eastbc/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

fgdc.westBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.westBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="westBoundCoord"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/spdom/bounding/westbc/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

fgdc.northBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.northBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="northBoundCoord"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/spdom/bounding/northbc/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

fgdc.southBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.southBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="southBoundCoord"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/spdom/bounding/southbc/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

fgdc.edition

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.edition" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="edition"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citeinfo/edition/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.endDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.endDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="endDate"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/timeperd/timeinfo/rngdates/enddate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="fgdcDateConverter"/>
     </bean>

fgdc.gcmdKeyword

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.gcmdKeyword" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="gcmdKeyword"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/keywords/theme[themekt='GCMD Science Keywords']/themekey/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.keywords

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.keywords" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="keywords"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/keywords/theme/themekey/text() | /*[local-name() = 'metadata']/idinfo/keywords/place/placekey/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
             <property name="disallowedValues">
                     <list>
                             <value>none</value>
                     </list>
             </property>
     </bean>

fgdc.geoform

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geoform" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="geoform"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/geoform/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.genus

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.genus" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="genus"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Genus&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.kingdom

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.kingdom" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="kingdom"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Kingdom&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.order

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.order" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="order"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Order&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.phylum

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.phylum" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="phylum"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Phylum&quot;]/text() | //taxoncl/taxonrv[../taxonrn=&quot;Division&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.species

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.species" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="species"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Species&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.family

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.family" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="family"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Family&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.class

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.class" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="class"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Class&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.scientificName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.scientificName" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="fgdc.scientificNameRoot">
                     <constructor-arg name="name" value="scientificName"/>
     </bean>

fgdc.origin

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.origin" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="origin"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/origin/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.placeKey

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.placeKey" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="placeKey"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/keywords/place/placekey/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.pubDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.pubDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="pubDate"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/pubdate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="fgdcDateConverter"/>
     </bean>

fgdc.purpose

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.purpose" class="org.dataone.cn.indexer.parser.MergeSolrField">
       <constructor-arg name="name" value="purpose"/>
       <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/descript/purpose/descendant::text()"/>
       <constructor-arg name="delimiter" value=" "/>
       <property name="multivalue" value="false"/>
       <property name="dedupe" value="false"/>
     </bean>

fgdc.title

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.title" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="title"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/title/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.web_url

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.web_url" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="webUrl"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/onlink/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.fileID

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.fileID" class="org.dataone.cn.indexer.parser.ResolveSolrField">
             <constructor-arg name="name" value="fileID"/>
     </bean>

fgdc.fullText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.fullText" class="org.dataone.cn.indexer.parser.AggregateSolrField">
             <property name="name" value="text"/>
             <property name="solrFields">
                     <list>
                     <ref bean="fgdc.text"/>
             </list>
             </property>
     </bean>

fgdc.presentationCat

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.presentationCat" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="presentationCat"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/geoform/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.author

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.author" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="author"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/origin/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.authorSurName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.authorSurName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurName"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/origin[1]/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.authorSurNameSort

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.authorSurNameSort" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurNameSort"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/origin[1]/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.investigator

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.investigator" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="investigator"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/origin/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.site

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.site" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="site"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/spdom/descgeog/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.attributeName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.attributeName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeName"/>
             <constructor-arg name="xpath" value="//attr/attrlabl/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

fgdc.attributeLabel

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.attributeLabel" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeLabel"/>
             <constructor-arg name="xpath" value="//attr/attalias/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

fgdc.attributeDescription

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.attributeDescription" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeDescription"/>
             <constructor-arg name="xpath" value="//attr/attrdef/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

fgdc.attributeUnit

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.attributeUnit" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeUnit"/>
             <constructor-arg name="xpath" value="//attr/attrdomv//attrunit/text() | //attr//attrdomv//edomv/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

fgdc.attributeText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.attributeText" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="fgdc.attributeTextRoot">
                     <constructor-arg name="name" value="attribute"/>
     </bean>

fgdc.geohash1

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash1" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_1"/>
             <property name="converter" ref="geohashConverter_1"/>
     </bean>

fgdc.geohash2

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash2" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_2"/>
             <property name="converter" ref="geohashConverter_2"/>
     </bean>

fgdc.geohash3

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash3" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_3"/>
             <property name="converter" ref="geohashConverter_3"/>
     </bean>

fgdc.geohash4

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash4" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_4"/>
             <property name="converter" ref="geohashConverter_4"/>
     </bean>

fgdc.geohash5

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash5" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_5"/>
             <property name="converter" ref="geohashConverter_5"/>
     </bean>

fgdc.geohash6

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash6" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_6"/>
             <property name="converter" ref="geohashConverter_6"/>
     </bean>

fgdc.geohash7

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash7" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_7"/>
             <property name="converter" ref="geohashConverter_7"/>
     </bean>

fgdc.geohash8

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash8" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_8"/>
             <property name="converter" ref="geohashConverter_8"/>
     </bean>

fgdc.geohash9

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash9" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_9"/>
             <property name="converter" ref="geohashConverter_9"/>
     </bean>

FGDC, v001.2-1999

Describes parser configuration for: fgdcstd00121999Subprocessor

Format IDs Processed

This parser processes the following DataONE format IDs:

  • Content Standard for Digital Geospatial Metadata, Metadata Profile for Shoreline Data, version 001.2-1999
    formatId: FGDC-STD-001.2-1999

A full list of DataONE format IDs can be found at https://cn.dataone.org/cn/v2/formats/

Fields

The following fields in the solr index are populated from values retrieved from this type of metadata document. Note that these are in addition to the information extracted from System Metadata Parser.

Solr Field Multi Dedupe Source
Index.abstract False False
/*[local-name() = 'metadata']/idinfo/descript/abstract/
descendant::text()
Processor: MergeSolrField
Configuration: fgdc.abstract
Index.beginDate False False
/*[local-name() = 'metadata']/idinfo/timeperd/timeinfo/
rngdates/begdate/text()
Processor: SolrField
Configuration: fgdc.beginDate
Index.contactOrganization True True
/*[local-name() = 'metadata']/distinfo/distrib/cntinfo/
cntperp/cntorg/text() | /*[local-name() =
'metadata']/distinfo/distrib/cntinfo/cntorgp/cntorg/
text()
Processor: SolrField
Index.eastBoundCoord False False
/*[local-name() = 'metadata']/idinfo/spdom/bounding/eastbc/
text()
Processor: SolrField
Configuration: fgdc.eastBoundCoord
Index.westBoundCoord False False
/*[local-name() = 'metadata']/idinfo/spdom/bounding/westbc/
text()
Processor: SolrField
Configuration: fgdc.westBoundCoord
Index.northBoundCoord False False
/*[local-name() = 'metadata']/idinfo/spdom/bounding/northbc/
text()
Processor: SolrField
Configuration: fgdc.northBoundCoord
Index.southBoundCoord False False
/*[local-name() = 'metadata']/idinfo/spdom/bounding/southbc/
text()
Processor: SolrField
Configuration: fgdc.southBoundCoord
Index.edition False False
/*[local-name() = 'metadata']/idinfo/citeinfo/edition/text()
Processor: SolrField
Configuration: fgdc.edition
Index.endDate False False
/*[local-name() = 'metadata']/idinfo/timeperd/timeinfo/
rngdates/enddate/text()
Processor: SolrField
Configuration: fgdc.endDate
Index.gcmdKeyword True False
/*[local-name() = 'metadata']/idinfo/keywords/theme[themekt=
'GCMD Science Keywords']/themekey/text()
Processor: SolrField
Configuration: fgdc.gcmdKeyword
Index.keywords True True
/*[local-name() = 'metadata']/idinfo/keywords/theme/
themekey/text() | /*[local-name() = 'metadata']/
idinfo/keywords/place/placekey/text()
Processor: SolrField
Configuration: fgdc.keywords
Index.geoform False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
geoform/text()
Processor: SolrField
Configuration: fgdc.geoform
Index.genus True False
//taxoncl/taxonrv[../taxonrn="Genus"]/text()
Processor: SolrField
Configuration: fgdc.genus
Index.kingdom True False
//taxoncl/taxonrv[../taxonrn="Kingdom"]/text()
Processor: SolrField
Configuration: fgdc.kingdom
Index.order True False
//taxoncl/taxonrv[../taxonrn="Order"]/text()
Processor: SolrField
Configuration: fgdc.order
Index.phylum True False
//taxoncl/taxonrv[../taxonrn="Phylum"]/text() | //taxoncl/
taxonrv[../taxonrn="Division"]/text()
Processor: SolrField
Configuration: fgdc.phylum
Index.species True False
//taxoncl/taxonrv[../taxonrn="Species"]/text()
Processor: SolrField
Configuration: fgdc.species
Index.family True False
//taxoncl/taxonrv[../taxonrn="Family"]/text()
Processor: SolrField
Configuration: fgdc.family
Index.class True False
//taxoncl/taxonrv[../taxonrn="Class"]/text()
Processor: SolrField
Configuration: fgdc.class
Index.scientificName False  
//taxoncl/taxonrv[../taxonrn="Genus"] ->{{[genus] [species]
}}; genus = ../taxonrv/text(); species = taxonrv/
text()
Configuration: fgdc.scientificName
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.origin True False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
origin/text()
Processor: SolrField
Configuration: fgdc.origin
Index.placeKey True False
/*[local-name() = 'metadata']/idinfo/keywords/place/
placekey/text()
Processor: SolrField
Configuration: fgdc.placeKey
Index.pubDate False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
pubdate/text()
Processor: SolrField
Configuration: fgdc.pubDate
Index.purpose False False
/*[local-name() = 'metadata']/idinfo/descript/purpose/
descendant::text()
Processor: MergeSolrField
Configuration: fgdc.purpose
Index.title False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
title/text()
Processor: SolrField
Configuration: fgdc.title
Index.webUrl True False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
onlink/text()
Processor: SolrField
Configuration: fgdc.web_url
Index.fileID    
Processor: ResolveSolrField
Configuration: fgdc.fileID
Notes: SolrField which configures the resolve url for the document being processed.
Converter:
Index.text    
Configuration: fgdc.fullText
Converter:
Index.presentationCat False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
geoform/text()
Processor: SolrField
Configuration: fgdc.presentationCat
Index.author False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
origin/text()
Processor: SolrField
Configuration: fgdc.author
Index.authorSurName False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
origin[1]/text()
Processor: SolrField
Configuration: fgdc.authorSurName
Index.authorSurNameSort False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
origin[1]/text()
Processor: SolrField
Configuration: fgdc.authorSurNameSort
Index.investigator True False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
origin/text()
Processor: SolrField
Configuration: fgdc.investigator
Index.site True False
/*[local-name() = 'metadata']/idinfo/spdom/descgeog/text()
Processor: SolrField
Configuration: fgdc.site
Index.attributeName True False
//attr/attrlabl/text()
Processor: SolrField
Configuration: fgdc.attributeName
Index.attributeLabel True False
//attr/attalias/text()
Processor: SolrField
Configuration: fgdc.attributeLabel
Index.attributeDescription True False
//attr/attrdef/text()
Processor: SolrField
Index.attributeUnit True False
//attr/attrdomv//attrunit/text() | //attr//attrdomv//edomv/
text()
Processor: SolrField
Configuration: fgdc.attributeUnit
Index.attribute False  
//attr ->{{[attributeName] [attributeLabel] [
attributeDescription] [attributeUnit]}};
attributeName = attrlabl/text(); attributeLabel =
attalias/text(); attributeDescription = attrdef/
text(); attributeUnit = attrdomv//attrunit/text() |
.//attrdomv//edomv/text()
Configuration: fgdc.attributeText
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.geohash_1 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash1
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_2 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash2
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_3 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash3
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_4 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash4
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_5 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash5
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_6 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash6
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_7 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash7
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_8 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash8
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_9 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash9
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter

Bean Configurations

fgdc.abstract

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.abstract" class="org.dataone.cn.indexer.parser.MergeSolrField">
       <constructor-arg name="name" value="abstract"/>
       <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/descript/abstract/descendant::text()"/>
       <constructor-arg name="delimiter" value=" "/>
       <property name="multivalue" value="false"/>
       <property name="dedupe" value="false"/>
     </bean>

fgdc.beginDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.beginDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="beginDate"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/timeperd/timeinfo/rngdates/begdate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="fgdcDateConverter"/>
     </bean>

fgdc.contactOrganization

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.contactOrganization" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="contactOrganization"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/distinfo/distrib/cntinfo/cntperp/cntorg/text() | /*[local-name() = 'metadata']/distinfo/distrib/cntinfo/cntorgp/cntorg/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

fgdc.eastBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.eastBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="eastBoundCoord"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/spdom/bounding/eastbc/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

fgdc.westBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.westBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="westBoundCoord"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/spdom/bounding/westbc/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

fgdc.northBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.northBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="northBoundCoord"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/spdom/bounding/northbc/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

fgdc.southBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.southBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="southBoundCoord"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/spdom/bounding/southbc/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

fgdc.edition

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.edition" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="edition"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citeinfo/edition/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.endDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.endDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="endDate"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/timeperd/timeinfo/rngdates/enddate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="fgdcDateConverter"/>
     </bean>

fgdc.gcmdKeyword

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.gcmdKeyword" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="gcmdKeyword"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/keywords/theme[themekt='GCMD Science Keywords']/themekey/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.keywords

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.keywords" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="keywords"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/keywords/theme/themekey/text() | /*[local-name() = 'metadata']/idinfo/keywords/place/placekey/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
             <property name="disallowedValues">
                     <list>
                             <value>none</value>
                     </list>
             </property>
     </bean>

fgdc.geoform

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geoform" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="geoform"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/geoform/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.genus

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.genus" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="genus"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Genus&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.kingdom

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.kingdom" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="kingdom"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Kingdom&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.order

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.order" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="order"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Order&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.phylum

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.phylum" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="phylum"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Phylum&quot;]/text() | //taxoncl/taxonrv[../taxonrn=&quot;Division&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.species

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.species" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="species"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Species&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.family

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.family" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="family"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Family&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.class

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.class" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="class"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Class&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.scientificName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.scientificName" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="fgdc.scientificNameRoot">
                     <constructor-arg name="name" value="scientificName"/>
     </bean>

fgdc.origin

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.origin" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="origin"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/origin/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.placeKey

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.placeKey" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="placeKey"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/keywords/place/placekey/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.pubDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.pubDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="pubDate"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/pubdate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="fgdcDateConverter"/>
     </bean>

fgdc.purpose

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.purpose" class="org.dataone.cn.indexer.parser.MergeSolrField">
       <constructor-arg name="name" value="purpose"/>
       <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/descript/purpose/descendant::text()"/>
       <constructor-arg name="delimiter" value=" "/>
       <property name="multivalue" value="false"/>
       <property name="dedupe" value="false"/>
     </bean>

fgdc.title

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.title" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="title"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/title/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.web_url

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.web_url" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="webUrl"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/onlink/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.fileID

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.fileID" class="org.dataone.cn.indexer.parser.ResolveSolrField">
             <constructor-arg name="name" value="fileID"/>
     </bean>

fgdc.fullText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.fullText" class="org.dataone.cn.indexer.parser.AggregateSolrField">
             <property name="name" value="text"/>
             <property name="solrFields">
                     <list>
                     <ref bean="fgdc.text"/>
             </list>
             </property>
     </bean>

fgdc.presentationCat

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.presentationCat" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="presentationCat"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/geoform/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.author

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.author" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="author"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/origin/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.authorSurName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.authorSurName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurName"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/origin[1]/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.authorSurNameSort

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.authorSurNameSort" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurNameSort"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/origin[1]/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.investigator

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.investigator" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="investigator"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/origin/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.site

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.site" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="site"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/spdom/descgeog/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.attributeName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.attributeName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeName"/>
             <constructor-arg name="xpath" value="//attr/attrlabl/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

fgdc.attributeLabel

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.attributeLabel" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeLabel"/>
             <constructor-arg name="xpath" value="//attr/attalias/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

fgdc.attributeDescription

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.attributeDescription" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeDescription"/>
             <constructor-arg name="xpath" value="//attr/attrdef/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

fgdc.attributeUnit

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.attributeUnit" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeUnit"/>
             <constructor-arg name="xpath" value="//attr/attrdomv//attrunit/text() | //attr//attrdomv//edomv/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

fgdc.attributeText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.attributeText" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="fgdc.attributeTextRoot">
                     <constructor-arg name="name" value="attribute"/>
     </bean>

fgdc.geohash1

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash1" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_1"/>
             <property name="converter" ref="geohashConverter_1"/>
     </bean>

fgdc.geohash2

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash2" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_2"/>
             <property name="converter" ref="geohashConverter_2"/>
     </bean>

fgdc.geohash3

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash3" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_3"/>
             <property name="converter" ref="geohashConverter_3"/>
     </bean>

fgdc.geohash4

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash4" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_4"/>
             <property name="converter" ref="geohashConverter_4"/>
     </bean>

fgdc.geohash5

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash5" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_5"/>
             <property name="converter" ref="geohashConverter_5"/>
     </bean>

fgdc.geohash6

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash6" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_6"/>
             <property name="converter" ref="geohashConverter_6"/>
     </bean>

fgdc.geohash7

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash7" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_7"/>
             <property name="converter" ref="geohashConverter_7"/>
     </bean>

fgdc.geohash8

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash8" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_8"/>
             <property name="converter" ref="geohashConverter_8"/>
     </bean>

fgdc.geohash9

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash9" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_9"/>
             <property name="converter" ref="geohashConverter_9"/>
     </bean>

ISO TC-211, NOAA Variant

Describes parser configuration for: isotc211NoaaSubprocessor

Format IDs Processed

This parser processes the following DataONE format IDs:

  • NOAA Variant Geographic MetaData (GMD) Extensible Markup Language
    formatId: http://www.isotc211.org/2005/gmd-noaa

A full list of DataONE format IDs can be found at https://cn.dataone.org/cn/v2/formats/

Fields

The following fields in the solr index are populated from values retrieved from this type of metadata document. Note that these are in addition to the information extracted from System Metadata Parser.

Solr Field Multi Dedupe Source
Index.abstract False False
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:abstract/gco:CharacterString/text()
Processor: SolrField
Configuration: isotc.abstract
Index.author False False
(//gmd:CI_ResponsibleParty/gmd:individualName/
gco:CharacterString/text() | //
gmd:CI_ResponsibleParty/gmd:individualName/
gmx:Anchor/text())[1]
Processor: SolrField
Configuration: isotc.author
Index.authorSurName False False
(//gmd:CI_ResponsibleParty/gmd:individualName/
gco:CharacterString/text() | //
gmd:CI_ResponsibleParty/gmd:individualName/
gmx:Anchor/text())[1]
Processor: SolrField
Configuration: isotc.authorSurName
Index.authorSurNameSort False False
(//gmd:CI_ResponsibleParty/gmd:individualName/
gco:CharacterString/text() | //
gmd:CI_ResponsibleParty/gmd:individualName/
gmx:Anchor/text())[1]
Processor: SolrField
Index.contactOrganization False False
(//gmd:CI_ResponsibleParty/gmd:organisationName/
gco:CharacterString/text())[1]
Processor: SolrField
Index.origin True True
//gmd:CI_ResponsibleParty[gmd:role/gmd:CI_RoleCode/text() =
"owner" or gmd:role/gmd:CI_RoleCode/text() =
"originator" or gmd:role/gmd:CI_RoleCode/text() =
"principalInvestigator" or gmd:role/gmd:CI_RoleCode/
text() = "author"]/gmd:individualName/
gco:CharacterString/text() | //
gmd:CI_ResponsibleParty[(gmd:role/gmd:CI_RoleCode/
text() = "owner" or gmd:role/gmd:CI_RoleCode/text()
= "originator" or gmd:role/gmd:CI_RoleCode/text() =
"principalInvestigator" or gmd:role/gmd:CI_RoleCode/
text() = "author") and (not(gmd:individualName) or
gmd:individualName[@gco:nilReason = "missing"])]/
gmd:organisationName/gco:CharacterString/text()
Processor: SolrField
Configuration: isotc.origin
Index.investigator True True
//gmd:CI_ResponsibleParty/gmd:individualName/
gco:CharacterString/text() | //
gmd:CI_ResponsibleParty/gmd:individualName/
gmx:Anchor/text()
Processor: SolrField
Configuration: isotc.investigator
Index.pubDate False False
if (//gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/
gmd:date/gmd:CI_Date/gmd:date[
following-sibling::gmd:dateType/gmd:CI_DateTypeCode/
text() = 'publication']/gco:Date/text())
     then //gmd:identificationInfo/*/gmd:citation/
gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date[
following-sibling::gmd:dateType/gmd:CI_DateTypeCode/
text() = 'publication']/gco:Date/text()
else if (//gmd:identificationInfo/*/gmd:citation/
gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date[
following-sibling::gmd:dateType/gmd:CI_DateTypeCode/
text() = 'publication']/gco:DateTime/text())
         then //gmd:identificationInfo/*/
gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/
gmd:date[following-sibling::gmd:dateType/
gmd:CI_DateTypeCode/text() = 'publication']/
gco:DateTime/text()            else if (//
gmd:identificationInfo/*/gmd:citation/
gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date/
gco:Date[1]/text())                 then //
gmd:identificationInfo/*/gmd:citation/
gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date/
gco:Date[1]/text()           else if (//
gmd:identificationInfo/*/gmd:citation/
gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date/
gco:DateTime[1]/text())                 then //
gmd:identificationInfo/*/gmd:citation/
gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date/
gco:DateTime[1]/text()           else ()
Processor: SolrField
Configuration: isotc.pubDate
Index.beginDate False False
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:temporalElement/
gmd:EX_TemporalExtent/gmd:extent/*[local-name() =
'TimePeriod']/*[local-name() = 'beginPosition']/
text()
Processor: SolrField
Configuration: isotc.beginDate
Index.endDate False False
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:temporalElement/
gmd:EX_TemporalExtent/gmd:extent/*[local-name() =
'TimePeriod']/*[local-name() = 'endPosition']/text()
Processor: SolrField
Configuration: isotc.endDate
Index.title False False
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:citation/gmd:CI_Citation/gmd:title/
gco:CharacterString/text() | //
gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:citation/gmd:CI_Citation/gmd:title/gmx:Anchor/
text()
Processor: SolrField
Configuration: isotc.title
Index.keywords True False
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:descriptiveKeywords/gmd:MD_Keywords/gmd:keyword/
gmx:Anchor/text() | //gmd:identificationInfo/
gmd:MD_DataIdentification/gmd:descriptiveKeywords/
gmd:MD_Keywords/gmd:keyword/gco:CharacterString/
text()
Processor: SolrField
Configuration: isotc.keywords
Index.eastBoundCoord False False
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox/gmd:eastBoundLongitude/
gco:Decimal/text()
Processor: SolrField
Configuration: isotc.eastBoundCoord
Index.westBoundCoord False False
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox/gmd:westBoundLongitude/
gco:Decimal/text()
Processor: SolrField
Configuration: isotc.westBoundCoord
Index.southBoundCoord False False
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox/gmd:southBoundLatitude/
gco:Decimal/text()
Processor: SolrField
Configuration: isotc.southBoundCoord
Index.northBoundCoord False False
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox/gmd:northBoundLatitude/
gco:Decimal/text()
Processor: SolrField
Configuration: isotc.northBoundCoord
Index.geohash_9 False  
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = gmd:northBoundLatitude/
gco:Decimal/text(); southBoundingCoordinate =
gmd:southBoundLatitude/gco:Decimal/text();
eastBoundingCoordinate = gmd:eastBoundLongitude/
gco:Decimal/text(); westBoundingCoordinate =
gmd:westBoundLongitude/gco:Decimal/text()
Configuration: isotc.geohash9
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_1 False  
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = gmd:northBoundLatitude/
gco:Decimal/text(); southBoundingCoordinate =
gmd:southBoundLatitude/gco:Decimal/text();
eastBoundingCoordinate = gmd:eastBoundLongitude/
gco:Decimal/text(); westBoundingCoordinate =
gmd:westBoundLongitude/gco:Decimal/text()
Configuration: isotc.geohash1
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_2 False  
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = gmd:northBoundLatitude/
gco:Decimal/text(); southBoundingCoordinate =
gmd:southBoundLatitude/gco:Decimal/text();
eastBoundingCoordinate = gmd:eastBoundLongitude/
gco:Decimal/text(); westBoundingCoordinate =
gmd:westBoundLongitude/gco:Decimal/text()
Configuration: isotc.geohash2
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_3 False  
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = gmd:northBoundLatitude/
gco:Decimal/text(); southBoundingCoordinate =
gmd:southBoundLatitude/gco:Decimal/text();
eastBoundingCoordinate = gmd:eastBoundLongitude/
gco:Decimal/text(); westBoundingCoordinate =
gmd:westBoundLongitude/gco:Decimal/text()
Configuration: isotc.geohash3
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_4 False  
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = gmd:northBoundLatitude/
gco:Decimal/text(); southBoundingCoordinate =
gmd:southBoundLatitude/gco:Decimal/text();
eastBoundingCoordinate = gmd:eastBoundLongitude/
gco:Decimal/text(); westBoundingCoordinate =
gmd:westBoundLongitude/gco:Decimal/text()
Configuration: isotc.geohash4
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_5 False  
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = gmd:northBoundLatitude/
gco:Decimal/text(); southBoundingCoordinate =
gmd:southBoundLatitude/gco:Decimal/text();
eastBoundingCoordinate = gmd:eastBoundLongitude/
gco:Decimal/text(); westBoundingCoordinate =
gmd:westBoundLongitude/gco:Decimal/text()
Configuration: isotc.geohash5
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_6 False  
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = gmd:northBoundLatitude/
gco:Decimal/text(); southBoundingCoordinate =
gmd:southBoundLatitude/gco:Decimal/text();
eastBoundingCoordinate = gmd:eastBoundLongitude/
gco:Decimal/text(); westBoundingCoordinate =
gmd:westBoundLongitude/gco:Decimal/text()
Configuration: isotc.geohash6
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_7 False  
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = gmd:northBoundLatitude/
gco:Decimal/text(); southBoundingCoordinate =
gmd:southBoundLatitude/gco:Decimal/text();
eastBoundingCoordinate = gmd:eastBoundLongitude/
gco:Decimal/text(); westBoundingCoordinate =
gmd:westBoundLongitude/gco:Decimal/text()
Configuration: isotc.geohash7
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_8 False  
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = gmd:northBoundLatitude/
gco:Decimal/text(); southBoundingCoordinate =
gmd:southBoundLatitude/gco:Decimal/text();
eastBoundingCoordinate = gmd:eastBoundLongitude/
gco:Decimal/text(); westBoundingCoordinate =
gmd:westBoundLongitude/gco:Decimal/text()
Configuration: isotc.geohash8
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.isService False False
boolean(//srv:SV_ServiceIdentification or //
gmd:distributionInfo/gmd:MD_Distribution)
Processor: SolrField
Configuration: isotc.isService
Index.serviceCoupling False False
concat( substring('loose', 1 div number(boolean( //
srv:SV_ServiceIdentification/srv:couplingType/
srv:SV_CouplingType/@codeListValue = 'loose'))),
    substring('tight', 1 div number(boolean( //
srv:SV_ServiceIdentification/srv:couplingType/
srv:SV_CouplingType/@codeListValue = 'tight'))),
    substring('tight', 1 div number(boolean( //
gmd:distributionInfo/gmd:MD_Distribution and not(//
srv:SV_ServiceIdentification/srv:couplingType/
srv:SV_CouplingType/@codeListValue)))),
substring('',  1 div number(boolean( not(   //
srv:SV_ServiceIdentification/srv:couplingType/
srv:SV_CouplingType/@codeListValue)
 and not(   //gmd:distributionInfo/
gmd:MD_Distribution)))))
Processor: SolrField
Configuration: isotc.serviceCoupling
Index.serviceTitle False False
(//srv:SV_ServiceIdentification/gmd:citation/
gmd:CI_Citation/gmd:title/gco:CharacterString | //
gmd:distributionInfo/gmd:MD_Distribution/
gmd:distributor/gmd:MD_Distributor/
gmd:distributorTransferOptions/
gmd:MD_DigitalTransferOptions/gmd:onLine/
gmd:CI_OnlineResource/gmd:name/gco:CharacterString)/
text()
Processor: SolrField
Configuration: isotc.serviceTitle
Index.serviceDescription False False
(//srv:SV_ServiceIdentification/gmd:abstract/
gco:CharacterString | //gmd:distributionInfo/
gmd:MD_Distribution/gmd:distributor/
gmd:MD_Distributor/gmd:distributorTransferOptions/
gmd:MD_DigitalTransferOptions/gmd:onLine/
gmd:CI_OnlineResource/gmd:description/
gco:CharacterString)/text()
Processor: SolrField
Index.serviceType True False
//srv:SV_ServiceIdentification/srv:serviceType/
gco:LocalName/text()
Processor: SolrField
Configuration: isotc.serviceType
Index.serviceEndpoint True False
//srv:SV_ServiceIdentification/srv:containsOperations/
srv:SV_OperationMetadata/srv:connectPoint/
gmd:CI_OnlineResource/gmd:linkage/gmd:URL/text()
Processor: SolrField
Configuration: isotc.serviceEndpoint
Index.serviceInput True False
//srv:SV_ServiceIdentification/srv:operatesOn/@xlink:href
Processor: SolrField
Configuration: isotc.serviceInput
Index.serviceOutput True False
//srv:SV_ServiceIdentification/gmd:resourceFormat/
@xlink:href
Processor: SolrField
Configuration: isotc.serviceOutput
Index.serviceType True False
//gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/
gmd:MD_Distributor/gmd:distributorTransferOptions/
gmd:MD_DigitalTransferOptions/gmd:onLine/
gmd:CI_OnlineResource/gmd:protocol/
gco:CharacterString/text()
Processor: SolrField
Index.serviceEndpoint True False
//gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/
gmd:MD_Distributor/gmd:distributorTransferOptions/
gmd:MD_DigitalTransferOptions/gmd:onLine/
gmd:CI_OnlineResource/gmd:linkage/gmd:URL/text() | /
/gmd:distributionInfo/gmd:MD_Distribution/
gmd:transferOptions/gmd:MD_DigitalTransferOptions/
gmd:onLine/gmd:CI_OnlineResource/gmd:linkage/
gmd:URL/text()
Processor: SolrField
Index.serviceInput True False
//gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/
gmd:MD_Distributor/gmd:distributorTransferOptions/
@xlink:href
Processor: SolrField
Index.serviceOutput True False
//gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/
gmd:MD_Distributor/gmd:distributorFormat/
gmd:MD_Format/gmd:version/gco:CharacterString/text()
Processor: SolrField
Index.fileID    
Processor: ResolveSolrField
Configuration: isotc.fileID
Notes: SolrField which configures the resolve url for the document being processed.
Converter:
Index.text False False
//*/text()
Configuration: isotc.fullText

Bean Configurations

isotc.abstract

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.abstract" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="abstract"/>
             <constructor-arg name="xpath" value="//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:abstract/gco:CharacterString/text()"/>
     </bean>

isotc.author

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.author" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="author"/>
             <constructor-arg name="xpath" value="(//gmd:CI_ResponsibleParty/gmd:individualName/gco:CharacterString/text() | //gmd:CI_ResponsibleParty/gmd:individualName/gmx:Anchor/text())[1]"/>
     </bean>

isotc.authorSurName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.authorSurName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurName"/>
             <constructor-arg name="xpath" value="(//gmd:CI_ResponsibleParty/gmd:individualName/gco:CharacterString/text() | //gmd:CI_ResponsibleParty/gmd:individualName/gmx:Anchor/text())[1]"/>
             <property name="multivalue" value="false"/>
     </bean>

isotc.authorSurNameSort

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.authorSurNameSort" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurNameSort"/>
             <constructor-arg name="xpath" value="(//gmd:CI_ResponsibleParty/gmd:individualName/gco:CharacterString/text() | //gmd:CI_ResponsibleParty/gmd:individualName/gmx:Anchor/text())[1]"/>
             <property name="multivalue" value="false"/>
     </bean>

isotc.contactOrganization

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.contactOrganization" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="contactOrganization"/>
             <constructor-arg name="xpath" value="(//gmd:CI_ResponsibleParty/gmd:organisationName/gco:CharacterString/text())[1]"/>
     </bean>

isotc.origin

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.origin" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="origin"/>
             <constructor-arg name="xpath" value="//gmd:CI_ResponsibleParty[gmd:role/gmd:CI_RoleCode/text() = &quot;owner&quot; or gmd:role/gmd:CI_RoleCode/text() = &quot;originator&quot; or gmd:role/gmd:CI_RoleCode/text() = &quot;principalInvestigator&quot; or gmd:role/gmd:CI_RoleCode/text() = &quot;author&quot;]/gmd:individualName/gco:CharacterString/text() | //gmd:CI_ResponsibleParty[(gmd:role/gmd:CI_RoleCode/text() = &quot;owner&quot; or gmd:role/gmd:CI_RoleCode/text() = &quot;originator&quot; or gmd:role/gmd:CI_RoleCode/text() = &quot;principalInvestigator&quot; or gmd:role/gmd:CI_RoleCode/text() = &quot;author&quot;) and (not(gmd:individualName) or gmd:individualName[@gco:nilReason = &quot;missing&quot;])]/gmd:organisationName/gco:CharacterString/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

isotc.investigator

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.investigator" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="investigator"/>
             <constructor-arg name="xpath" value="//gmd:CI_ResponsibleParty/gmd:individualName/gco:CharacterString/text() | //gmd:CI_ResponsibleParty/gmd:individualName/gmx:Anchor/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

isotc.pubDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.pubDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="pubDate"/>
             <constructor-arg name="xpath" value="if (//gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date[following-sibling::gmd:dateType/gmd:CI_DateTypeCode/text() = 'publication']/gco:Date/text())                 then //gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date[following-sibling::gmd:dateType/gmd:CI_DateTypeCode/text() = 'publication']/gco:Date/text()           else if (//gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date[following-sibling::gmd:dateType/gmd:CI_DateTypeCode/text() = 'publication']/gco:DateTime/text())                 then //gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date[following-sibling::gmd:dateType/gmd:CI_DateTypeCode/text() = 'publication']/gco:DateTime/text()            else if (//gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date/gco:Date[1]/text())                 then //gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date/gco:Date[1]/text()           else if (//gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date/gco:DateTime[1]/text())                 then //gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date/gco:DateTime[1]/text()           else ()"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

isotc.beginDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.beginDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="beginDate"/>
             <constructor-arg name="xpath" value="//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:temporalElement/gmd:EX_TemporalExtent/gmd:extent/*[local-name() = 'TimePeriod']/*[local-name() = 'beginPosition']/text()"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

isotc.endDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.endDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="endDate"/>
             <constructor-arg name="xpath" value="//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:temporalElement/gmd:EX_TemporalExtent/gmd:extent/*[local-name() = 'TimePeriod']/*[local-name() = 'endPosition']/text()"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

isotc.title

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.title" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="title"/>
             <constructor-arg name="xpath" value="//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:title/gco:CharacterString/text() | //gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:title/gmx:Anchor/text()"/>
     </bean>

isotc.keywords

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.keywords" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="keywords"/>
             <constructor-arg name="xpath" value="//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:descriptiveKeywords/gmd:MD_Keywords/gmd:keyword/gmx:Anchor/text() | //gmd:identificationInfo/gmd:MD_DataIdentification/gmd:descriptiveKeywords/gmd:MD_Keywords/gmd:keyword/gco:CharacterString/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

isotc.eastBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.eastBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="eastBoundCoord"/>
             <constructor-arg name="xpath" value="//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:geographicElement/gmd:EX_GeographicBoundingBox/gmd:eastBoundLongitude/gco:Decimal/text()"/>
     </bean>

isotc.westBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.westBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="westBoundCoord"/>
             <constructor-arg name="xpath" value="//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:geographicElement/gmd:EX_GeographicBoundingBox/gmd:westBoundLongitude/gco:Decimal/text()"/>
     </bean>

isotc.southBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.southBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="southBoundCoord"/>
             <constructor-arg name="xpath" value="//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:geographicElement/gmd:EX_GeographicBoundingBox/gmd:southBoundLatitude/gco:Decimal/text()"/>
     </bean>

isotc.northBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.northBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="northBoundCoord"/>
             <constructor-arg name="xpath" value="//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:geographicElement/gmd:EX_GeographicBoundingBox/gmd:northBoundLatitude/gco:Decimal/text()"/>
     </bean>

isotc.geohash9

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.geohash9" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="isotc.geohashRoot">
             <constructor-arg name="name" value="geohash_9"/>
             <property name="converter" ref="geohashConverter_9"/>
     </bean>

isotc.geohash1

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.geohash1" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="isotc.geohashRoot">
             <constructor-arg name="name" value="geohash_1"/>
             <property name="converter" ref="geohashConverter_1"/>
     </bean>

isotc.geohash2

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.geohash2" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="isotc.geohashRoot">
             <constructor-arg name="name" value="geohash_2"/>
             <property name="converter" ref="geohashConverter_2"/>
     </bean>

isotc.geohash3

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.geohash3" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="isotc.geohashRoot">
             <constructor-arg name="name" value="geohash_3"/>
             <property name="converter" ref="geohashConverter_3"/>
     </bean>

isotc.geohash4

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.geohash4" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="isotc.geohashRoot">
             <constructor-arg name="name" value="geohash_4"/>
             <property name="converter" ref="geohashConverter_4"/>
     </bean>

isotc.geohash5

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.geohash5" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="isotc.geohashRoot">
             <constructor-arg name="name" value="geohash_5"/>
             <property name="converter" ref="geohashConverter_5"/>
     </bean>

isotc.geohash6

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.geohash6" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="isotc.geohashRoot">
             <constructor-arg name="name" value="geohash_6"/>
             <property name="converter" ref="geohashConverter_6"/>
     </bean>

isotc.geohash7

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.geohash7" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="isotc.geohashRoot">
             <constructor-arg name="name" value="geohash_7"/>
             <property name="converter" ref="geohashConverter_7"/>
     </bean>

isotc.geohash8

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.geohash8" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="isotc.geohashRoot">
             <constructor-arg name="name" value="geohash_8"/>
             <property name="converter" ref="geohashConverter_8"/>
     </bean>

isotc.isService

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.isService" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="isService"/>
             <constructor-arg name="xpath" value="boolean(//srv:SV_ServiceIdentification or //gmd:distributionInfo/gmd:MD_Distribution)"/>
     </bean>

isotc.serviceCoupling

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.serviceCoupling" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceCoupling"/>
             <constructor-arg name="xpath" value="concat( substring('loose', 1 div number(boolean( //srv:SV_ServiceIdentification/srv:couplingType/srv:SV_CouplingType/@codeListValue = 'loose'))),        substring('tight', 1 div number(boolean( //srv:SV_ServiceIdentification/srv:couplingType/srv:SV_CouplingType/@codeListValue = 'tight'))),        substring('tight', 1 div number(boolean( //gmd:distributionInfo/gmd:MD_Distribution and not(//srv:SV_ServiceIdentification/srv:couplingType/srv:SV_CouplingType/@codeListValue)))),        substring('',  1 div number(boolean( not(   //srv:SV_ServiceIdentification/srv:couplingType/srv:SV_CouplingType/@codeListValue)                  and not(   //gmd:distributionInfo/gmd:MD_Distribution)))))"/>
     </bean>

isotc.serviceTitle

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.serviceTitle" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceTitle"/>
             <constructor-arg name="xpath" value="(//srv:SV_ServiceIdentification/gmd:citation/gmd:CI_Citation/gmd:title/gco:CharacterString | //gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/gmd:MD_Distributor/gmd:distributorTransferOptions/gmd:MD_DigitalTransferOptions/gmd:onLine/gmd:CI_OnlineResource/gmd:name/gco:CharacterString)/text()"/>
             <property name="combineNodes" value="true"/>
             <property name="combineDelimiter" value=":"/>
     </bean>

isotc.serviceDescription

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.serviceDescription" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceDescription"/>
             <constructor-arg name="xpath" value="(//srv:SV_ServiceIdentification/gmd:abstract/gco:CharacterString | //gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/gmd:MD_Distributor/gmd:distributorTransferOptions/gmd:MD_DigitalTransferOptions/gmd:onLine/gmd:CI_OnlineResource/gmd:description/gco:CharacterString)/text()"/>
             <property name="combineNodes" value="true"/>
             <property name="combineDelimiter" value=":"/>
     </bean>

isotc.serviceType

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.serviceType" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceType"/>
             <constructor-arg name="xpath" value="//srv:SV_ServiceIdentification/srv:serviceType/gco:LocalName/text()"/>
             <property name="multivalue" value="true"/>
             <property name="converter" ref="serviceTypesConverter"/>
     </bean>

isotc.serviceEndpoint

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.serviceEndpoint" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceEndpoint"/>
             <constructor-arg name="xpath" value="//srv:SV_ServiceIdentification/srv:containsOperations/srv:SV_OperationMetadata/srv:connectPoint/gmd:CI_OnlineResource/gmd:linkage/gmd:URL/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

isotc.serviceInput

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.serviceInput" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceInput"/>
             <constructor-arg name="xpath" value="//srv:SV_ServiceIdentification/srv:operatesOn/@xlink:href"/>
             <property name="multivalue" value="true"/>
     </bean>

isotc.serviceOutput

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.serviceOutput" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceOutput"/>
             <constructor-arg name="xpath" value="//srv:SV_ServiceIdentification/gmd:resourceFormat/@xlink:href"/>
             <property name="multivalue" value="true"/>
     </bean>

isotc.distribServiceType

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.distribServiceType" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceType"/>
             <constructor-arg name="xpath" value="//gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/gmd:MD_Distributor/gmd:distributorTransferOptions/gmd:MD_DigitalTransferOptions/gmd:onLine/gmd:CI_OnlineResource/gmd:protocol/gco:CharacterString/text()"/>
             <property name="multivalue" value="true"/>
             <property name="converter" ref="serviceTypesConverter"/>
     </bean>

isotc.distribServiceEndpoint

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.distribServiceEndpoint" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceEndpoint"/>
             <constructor-arg name="xpath" value="//gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/gmd:MD_Distributor/gmd:distributorTransferOptions/gmd:MD_DigitalTransferOptions/gmd:onLine/gmd:CI_OnlineResource/gmd:linkage/gmd:URL/text() | //gmd:distributionInfo/gmd:MD_Distribution/gmd:transferOptions/gmd:MD_DigitalTransferOptions/gmd:onLine/gmd:CI_OnlineResource/gmd:linkage/gmd:URL/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

isotc.distribServiceInput

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.distribServiceInput" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceInput"/>
             <constructor-arg name="xpath" value="//gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/gmd:MD_Distributor/gmd:distributorTransferOptions/@xlink:href"/>
             <property name="multivalue" value="true"/>
     </bean>

isotc.distribServiceOutput

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.distribServiceOutput" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceOutput"/>
             <constructor-arg name="xpath" value="//gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/gmd:MD_Distributor/gmd:distributorFormat/gmd:MD_Format/gmd:version/gco:CharacterString/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

isotc.fileID

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.fileID" class="org.dataone.cn.indexer.parser.ResolveSolrField">
             <constructor-arg name="name" value="fileID"/>
     </bean>

isotc.fullText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.fullText" class="org.dataone.cn.indexer.parser.FullTextSolrField">
             <constructor-arg name="name" value="text"/>
             <constructor-arg name="xpath" value="//*/text()"/>
             <property name="combineNodes" value="true"/>
     </bean>

ISO TC-211, PANGAEA Variant

Describes parser configuration for: isotc211PangaeaSubprocessor

Format IDs Processed

This parser processes the following DataONE format IDs:

  • PANGAEA Variant Geographic MetaData (GMD) Extensible Markup Language
    formatId: http://www.isotc211.org/2005/gmd-pangaea

A full list of DataONE format IDs can be found at https://cn.dataone.org/cn/v2/formats/

Fields

The following fields in the solr index are populated from values retrieved from this type of metadata document. Note that these are in addition to the information extracted from System Metadata Parser.

Solr Field Multi Dedupe Source
Index.abstract False False
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:abstract/gco:CharacterString/text()
Processor: SolrField
Configuration: isotc.abstract
Index.author False False
(//gmd:CI_ResponsibleParty/gmd:individualName/
gco:CharacterString/text() | //
gmd:CI_ResponsibleParty/gmd:individualName/
gmx:Anchor/text())[1]
Processor: SolrField
Configuration: isotc.author
Index.authorSurName False False
(//gmd:CI_ResponsibleParty/gmd:individualName/
gco:CharacterString/text() | //
gmd:CI_ResponsibleParty/gmd:individualName/
gmx:Anchor/text())[1]
Processor: SolrField
Configuration: isotc.authorSurName
Index.authorSurNameSort False False
(//gmd:CI_ResponsibleParty/gmd:individualName/
gco:CharacterString/text() | //
gmd:CI_ResponsibleParty/gmd:individualName/
gmx:Anchor/text())[1]
Processor: SolrField
Index.contactOrganization False False
(//gmd:CI_ResponsibleParty/gmd:organisationName/
gco:CharacterString/text())[1]
Processor: SolrField
Index.origin True True
//gmd:CI_ResponsibleParty[gmd:role/gmd:CI_RoleCode/text() =
"owner" or gmd:role/gmd:CI_RoleCode/text() =
"originator" or gmd:role/gmd:CI_RoleCode/text() =
"principalInvestigator" or gmd:role/gmd:CI_RoleCode/
text() = "author"]/gmd:individualName/
gco:CharacterString/text() | //
gmd:CI_ResponsibleParty[(gmd:role/gmd:CI_RoleCode/
text() = "owner" or gmd:role/gmd:CI_RoleCode/text()
= "originator" or gmd:role/gmd:CI_RoleCode/text() =
"principalInvestigator" or gmd:role/gmd:CI_RoleCode/
text() = "author") and (not(gmd:individualName) or
gmd:individualName[@gco:nilReason = "missing"])]/
gmd:organisationName/gco:CharacterString/text()
Processor: SolrField
Configuration: isotc.origin
Index.investigator True True
//gmd:CI_ResponsibleParty/gmd:individualName/
gco:CharacterString/text() | //
gmd:CI_ResponsibleParty/gmd:individualName/
gmx:Anchor/text()
Processor: SolrField
Configuration: isotc.investigator
Index.pubDate False False
if (//gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/
gmd:date/gmd:CI_Date/gmd:date[
following-sibling::gmd:dateType/gmd:CI_DateTypeCode/
text() = 'publication']/gco:Date/text())
     then //gmd:identificationInfo/*/gmd:citation/
gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date[
following-sibling::gmd:dateType/gmd:CI_DateTypeCode/
text() = 'publication']/gco:Date/text()
else if (//gmd:identificationInfo/*/gmd:citation/
gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date[
following-sibling::gmd:dateType/gmd:CI_DateTypeCode/
text() = 'publication']/gco:DateTime/text())
         then //gmd:identificationInfo/*/
gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/
gmd:date[following-sibling::gmd:dateType/
gmd:CI_DateTypeCode/text() = 'publication']/
gco:DateTime/text()            else if (//
gmd:identificationInfo/*/gmd:citation/
gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date/
gco:Date[1]/text())                 then //
gmd:identificationInfo/*/gmd:citation/
gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date/
gco:Date[1]/text()           else if (//
gmd:identificationInfo/*/gmd:citation/
gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date/
gco:DateTime[1]/text())                 then //
gmd:identificationInfo/*/gmd:citation/
gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date/
gco:DateTime[1]/text()           else ()
Processor: SolrField
Configuration: isotc.pubDate
Index.beginDate False False
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:temporalElement/
gmd:EX_TemporalExtent/gmd:extent/*[local-name() =
'TimePeriod']/*[local-name() = 'beginPosition']/
text()
Processor: SolrField
Configuration: isotc.beginDate
Index.endDate False False
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:temporalElement/
gmd:EX_TemporalExtent/gmd:extent/*[local-name() =
'TimePeriod']/*[local-name() = 'endPosition']/text()
Processor: SolrField
Configuration: isotc.endDate
Index.title False False
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:citation/gmd:CI_Citation/gmd:title/
gco:CharacterString/text() | //
gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:citation/gmd:CI_Citation/gmd:title/gmx:Anchor/
text()
Processor: SolrField
Configuration: isotc.title
Index.keywords True False
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:descriptiveKeywords/gmd:MD_Keywords/gmd:keyword/
gmx:Anchor/text() | //gmd:identificationInfo/
gmd:MD_DataIdentification/gmd:descriptiveKeywords/
gmd:MD_Keywords/gmd:keyword/gco:CharacterString/
text()
Processor: SolrField
Configuration: isotc.keywords
Index.eastBoundCoord False False
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox/gmd:eastBoundLongitude/
gco:Decimal/text()
Processor: SolrField
Configuration: isotc.eastBoundCoord
Index.westBoundCoord False False
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox/gmd:westBoundLongitude/
gco:Decimal/text()
Processor: SolrField
Configuration: isotc.westBoundCoord
Index.southBoundCoord False False
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox/gmd:southBoundLatitude/
gco:Decimal/text()
Processor: SolrField
Configuration: isotc.southBoundCoord
Index.northBoundCoord False False
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox/gmd:northBoundLatitude/
gco:Decimal/text()
Processor: SolrField
Configuration: isotc.northBoundCoord
Index.geohash_9 False  
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = gmd:northBoundLatitude/
gco:Decimal/text(); southBoundingCoordinate =
gmd:southBoundLatitude/gco:Decimal/text();
eastBoundingCoordinate = gmd:eastBoundLongitude/
gco:Decimal/text(); westBoundingCoordinate =
gmd:westBoundLongitude/gco:Decimal/text()
Configuration: isotc.geohash9
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_1 False  
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = gmd:northBoundLatitude/
gco:Decimal/text(); southBoundingCoordinate =
gmd:southBoundLatitude/gco:Decimal/text();
eastBoundingCoordinate = gmd:eastBoundLongitude/
gco:Decimal/text(); westBoundingCoordinate =
gmd:westBoundLongitude/gco:Decimal/text()
Configuration: isotc.geohash1
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_2 False  
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = gmd:northBoundLatitude/
gco:Decimal/text(); southBoundingCoordinate =
gmd:southBoundLatitude/gco:Decimal/text();
eastBoundingCoordinate = gmd:eastBoundLongitude/
gco:Decimal/text(); westBoundingCoordinate =
gmd:westBoundLongitude/gco:Decimal/text()
Configuration: isotc.geohash2
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_3 False  
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = gmd:northBoundLatitude/
gco:Decimal/text(); southBoundingCoordinate =
gmd:southBoundLatitude/gco:Decimal/text();
eastBoundingCoordinate = gmd:eastBoundLongitude/
gco:Decimal/text(); westBoundingCoordinate =
gmd:westBoundLongitude/gco:Decimal/text()
Configuration: isotc.geohash3
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_4 False  
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = gmd:northBoundLatitude/
gco:Decimal/text(); southBoundingCoordinate =
gmd:southBoundLatitude/gco:Decimal/text();
eastBoundingCoordinate = gmd:eastBoundLongitude/
gco:Decimal/text(); westBoundingCoordinate =
gmd:westBoundLongitude/gco:Decimal/text()
Configuration: isotc.geohash4
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_5 False  
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = gmd:northBoundLatitude/
gco:Decimal/text(); southBoundingCoordinate =
gmd:southBoundLatitude/gco:Decimal/text();
eastBoundingCoordinate = gmd:eastBoundLongitude/
gco:Decimal/text(); westBoundingCoordinate =
gmd:westBoundLongitude/gco:Decimal/text()
Configuration: isotc.geohash5
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_6 False  
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = gmd:northBoundLatitude/
gco:Decimal/text(); southBoundingCoordinate =
gmd:southBoundLatitude/gco:Decimal/text();
eastBoundingCoordinate = gmd:eastBoundLongitude/
gco:Decimal/text(); westBoundingCoordinate =
gmd:westBoundLongitude/gco:Decimal/text()
Configuration: isotc.geohash6
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_7 False  
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = gmd:northBoundLatitude/
gco:Decimal/text(); southBoundingCoordinate =
gmd:southBoundLatitude/gco:Decimal/text();
eastBoundingCoordinate = gmd:eastBoundLongitude/
gco:Decimal/text(); westBoundingCoordinate =
gmd:westBoundLongitude/gco:Decimal/text()
Configuration: isotc.geohash7
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_8 False  
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = gmd:northBoundLatitude/
gco:Decimal/text(); southBoundingCoordinate =
gmd:southBoundLatitude/gco:Decimal/text();
eastBoundingCoordinate = gmd:eastBoundLongitude/
gco:Decimal/text(); westBoundingCoordinate =
gmd:westBoundLongitude/gco:Decimal/text()
Configuration: isotc.geohash8
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.isService False False
boolean(//srv:SV_ServiceIdentification or //
gmd:distributionInfo/gmd:MD_Distribution)
Processor: SolrField
Configuration: isotc.isService
Index.serviceCoupling False False
concat( substring('loose', 1 div number(boolean( //
srv:SV_ServiceIdentification/srv:couplingType/
srv:SV_CouplingType/@codeListValue = 'loose'))),
    substring('tight', 1 div number(boolean( //
srv:SV_ServiceIdentification/srv:couplingType/
srv:SV_CouplingType/@codeListValue = 'tight'))),
    substring('tight', 1 div number(boolean( //
gmd:distributionInfo/gmd:MD_Distribution and not(//
srv:SV_ServiceIdentification/srv:couplingType/
srv:SV_CouplingType/@codeListValue)))),
substring('',  1 div number(boolean( not(   //
srv:SV_ServiceIdentification/srv:couplingType/
srv:SV_CouplingType/@codeListValue)
 and not(   //gmd:distributionInfo/
gmd:MD_Distribution)))))
Processor: SolrField
Configuration: isotc.serviceCoupling
Index.serviceTitle False False
(//srv:SV_ServiceIdentification/gmd:citation/
gmd:CI_Citation/gmd:title/gco:CharacterString | //
gmd:distributionInfo/gmd:MD_Distribution/
gmd:distributor/gmd:MD_Distributor/
gmd:distributorTransferOptions/
gmd:MD_DigitalTransferOptions/gmd:onLine/
gmd:CI_OnlineResource/gmd:name/gco:CharacterString)/
text()
Processor: SolrField
Configuration: isotc.serviceTitle
Index.serviceDescription False False
(//srv:SV_ServiceIdentification/gmd:abstract/
gco:CharacterString | //gmd:distributionInfo/
gmd:MD_Distribution/gmd:distributor/
gmd:MD_Distributor/gmd:distributorTransferOptions/
gmd:MD_DigitalTransferOptions/gmd:onLine/
gmd:CI_OnlineResource/gmd:description/
gco:CharacterString)/text()
Processor: SolrField
Index.serviceType True False
//srv:SV_ServiceIdentification/srv:serviceType/
gco:LocalName/text()
Processor: SolrField
Configuration: isotc.serviceType
Index.serviceEndpoint True False
//srv:SV_ServiceIdentification/srv:containsOperations/
srv:SV_OperationMetadata/srv:connectPoint/
gmd:CI_OnlineResource/gmd:linkage/gmd:URL/text()
Processor: SolrField
Configuration: isotc.serviceEndpoint
Index.serviceInput True False
//srv:SV_ServiceIdentification/srv:operatesOn/@xlink:href
Processor: SolrField
Configuration: isotc.serviceInput
Index.serviceOutput True False
//srv:SV_ServiceIdentification/gmd:resourceFormat/
@xlink:href
Processor: SolrField
Configuration: isotc.serviceOutput
Index.serviceType True False
//gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/
gmd:MD_Distributor/gmd:distributorTransferOptions/
gmd:MD_DigitalTransferOptions/gmd:onLine/
gmd:CI_OnlineResource/gmd:protocol/
gco:CharacterString/text()
Processor: SolrField
Index.serviceEndpoint True False
//gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/
gmd:MD_Distributor/gmd:distributorTransferOptions/
gmd:MD_DigitalTransferOptions/gmd:onLine/
gmd:CI_OnlineResource/gmd:linkage/gmd:URL/text() | /
/gmd:distributionInfo/gmd:MD_Distribution/
gmd:transferOptions/gmd:MD_DigitalTransferOptions/
gmd:onLine/gmd:CI_OnlineResource/gmd:linkage/
gmd:URL/text()
Processor: SolrField
Index.serviceInput True False
//gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/
gmd:MD_Distributor/gmd:distributorTransferOptions/
@xlink:href
Processor: SolrField
Index.serviceOutput True False
//gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/
gmd:MD_Distributor/gmd:distributorFormat/
gmd:MD_Format/gmd:version/gco:CharacterString/text()
Processor: SolrField
Index.fileID    
Processor: ResolveSolrField
Configuration: isotc.fileID
Notes: SolrField which configures the resolve url for the document being processed.
Converter:
Index.text False False
//*/text()
Configuration: isotc.fullText

Bean Configurations

isotc.abstract

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.abstract" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="abstract"/>
             <constructor-arg name="xpath" value="//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:abstract/gco:CharacterString/text()"/>
     </bean>

isotc.author

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.author" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="author"/>
             <constructor-arg name="xpath" value="(//gmd:CI_ResponsibleParty/gmd:individualName/gco:CharacterString/text() | //gmd:CI_ResponsibleParty/gmd:individualName/gmx:Anchor/text())[1]"/>
     </bean>

isotc.authorSurName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.authorSurName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurName"/>
             <constructor-arg name="xpath" value="(//gmd:CI_ResponsibleParty/gmd:individualName/gco:CharacterString/text() | //gmd:CI_ResponsibleParty/gmd:individualName/gmx:Anchor/text())[1]"/>
             <property name="multivalue" value="false"/>
     </bean>

isotc.authorSurNameSort

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.authorSurNameSort" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurNameSort"/>
             <constructor-arg name="xpath" value="(//gmd:CI_ResponsibleParty/gmd:individualName/gco:CharacterString/text() | //gmd:CI_ResponsibleParty/gmd:individualName/gmx:Anchor/text())[1]"/>
             <property name="multivalue" value="false"/>
     </bean>

isotc.contactOrganization

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.contactOrganization" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="contactOrganization"/>
             <constructor-arg name="xpath" value="(//gmd:CI_ResponsibleParty/gmd:organisationName/gco:CharacterString/text())[1]"/>
     </bean>

isotc.origin

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.origin" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="origin"/>
             <constructor-arg name="xpath" value="//gmd:CI_ResponsibleParty[gmd:role/gmd:CI_RoleCode/text() = &quot;owner&quot; or gmd:role/gmd:CI_RoleCode/text() = &quot;originator&quot; or gmd:role/gmd:CI_RoleCode/text() = &quot;principalInvestigator&quot; or gmd:role/gmd:CI_RoleCode/text() = &quot;author&quot;]/gmd:individualName/gco:CharacterString/text() | //gmd:CI_ResponsibleParty[(gmd:role/gmd:CI_RoleCode/text() = &quot;owner&quot; or gmd:role/gmd:CI_RoleCode/text() = &quot;originator&quot; or gmd:role/gmd:CI_RoleCode/text() = &quot;principalInvestigator&quot; or gmd:role/gmd:CI_RoleCode/text() = &quot;author&quot;) and (not(gmd:individualName) or gmd:individualName[@gco:nilReason = &quot;missing&quot;])]/gmd:organisationName/gco:CharacterString/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

isotc.investigator

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.investigator" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="investigator"/>
             <constructor-arg name="xpath" value="//gmd:CI_ResponsibleParty/gmd:individualName/gco:CharacterString/text() | //gmd:CI_ResponsibleParty/gmd:individualName/gmx:Anchor/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

isotc.pubDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.pubDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="pubDate"/>
             <constructor-arg name="xpath" value="if (//gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date[following-sibling::gmd:dateType/gmd:CI_DateTypeCode/text() = 'publication']/gco:Date/text())                 then //gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date[following-sibling::gmd:dateType/gmd:CI_DateTypeCode/text() = 'publication']/gco:Date/text()           else if (//gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date[following-sibling::gmd:dateType/gmd:CI_DateTypeCode/text() = 'publication']/gco:DateTime/text())                 then //gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date[following-sibling::gmd:dateType/gmd:CI_DateTypeCode/text() = 'publication']/gco:DateTime/text()            else if (//gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date/gco:Date[1]/text())                 then //gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date/gco:Date[1]/text()           else if (//gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date/gco:DateTime[1]/text())                 then //gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date/gco:DateTime[1]/text()           else ()"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

isotc.beginDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.beginDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="beginDate"/>
             <constructor-arg name="xpath" value="//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:temporalElement/gmd:EX_TemporalExtent/gmd:extent/*[local-name() = 'TimePeriod']/*[local-name() = 'beginPosition']/text()"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

isotc.endDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.endDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="endDate"/>
             <constructor-arg name="xpath" value="//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:temporalElement/gmd:EX_TemporalExtent/gmd:extent/*[local-name() = 'TimePeriod']/*[local-name() = 'endPosition']/text()"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

isotc.title

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.title" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="title"/>
             <constructor-arg name="xpath" value="//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:title/gco:CharacterString/text() | //gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:title/gmx:Anchor/text()"/>
     </bean>

isotc.keywords

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.keywords" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="keywords"/>
             <constructor-arg name="xpath" value="//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:descriptiveKeywords/gmd:MD_Keywords/gmd:keyword/gmx:Anchor/text() | //gmd:identificationInfo/gmd:MD_DataIdentification/gmd:descriptiveKeywords/gmd:MD_Keywords/gmd:keyword/gco:CharacterString/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

isotc.eastBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.eastBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="eastBoundCoord"/>
             <constructor-arg name="xpath" value="//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:geographicElement/gmd:EX_GeographicBoundingBox/gmd:eastBoundLongitude/gco:Decimal/text()"/>
     </bean>

isotc.westBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.westBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="westBoundCoord"/>
             <constructor-arg name="xpath" value="//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:geographicElement/gmd:EX_GeographicBoundingBox/gmd:westBoundLongitude/gco:Decimal/text()"/>
     </bean>

isotc.southBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.southBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="southBoundCoord"/>
             <constructor-arg name="xpath" value="//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:geographicElement/gmd:EX_GeographicBoundingBox/gmd:southBoundLatitude/gco:Decimal/text()"/>
     </bean>

isotc.northBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.northBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="northBoundCoord"/>
             <constructor-arg name="xpath" value="//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:geographicElement/gmd:EX_GeographicBoundingBox/gmd:northBoundLatitude/gco:Decimal/text()"/>
     </bean>

isotc.geohash9

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.geohash9" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="isotc.geohashRoot">
             <constructor-arg name="name" value="geohash_9"/>
             <property name="converter" ref="geohashConverter_9"/>
     </bean>

isotc.geohash1

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.geohash1" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="isotc.geohashRoot">
             <constructor-arg name="name" value="geohash_1"/>
             <property name="converter" ref="geohashConverter_1"/>
     </bean>

isotc.geohash2

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.geohash2" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="isotc.geohashRoot">
             <constructor-arg name="name" value="geohash_2"/>
             <property name="converter" ref="geohashConverter_2"/>
     </bean>

isotc.geohash3

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.geohash3" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="isotc.geohashRoot">
             <constructor-arg name="name" value="geohash_3"/>
             <property name="converter" ref="geohashConverter_3"/>
     </bean>

isotc.geohash4

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.geohash4" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="isotc.geohashRoot">
             <constructor-arg name="name" value="geohash_4"/>
             <property name="converter" ref="geohashConverter_4"/>
     </bean>

isotc.geohash5

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.geohash5" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="isotc.geohashRoot">
             <constructor-arg name="name" value="geohash_5"/>
             <property name="converter" ref="geohashConverter_5"/>
     </bean>

isotc.geohash6

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.geohash6" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="isotc.geohashRoot">
             <constructor-arg name="name" value="geohash_6"/>
             <property name="converter" ref="geohashConverter_6"/>
     </bean>

isotc.geohash7

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.geohash7" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="isotc.geohashRoot">
             <constructor-arg name="name" value="geohash_7"/>
             <property name="converter" ref="geohashConverter_7"/>
     </bean>

isotc.geohash8

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.geohash8" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="isotc.geohashRoot">
             <constructor-arg name="name" value="geohash_8"/>
             <property name="converter" ref="geohashConverter_8"/>
     </bean>

isotc.isService

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.isService" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="isService"/>
             <constructor-arg name="xpath" value="boolean(//srv:SV_ServiceIdentification or //gmd:distributionInfo/gmd:MD_Distribution)"/>
     </bean>

isotc.serviceCoupling

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.serviceCoupling" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceCoupling"/>
             <constructor-arg name="xpath" value="concat( substring('loose', 1 div number(boolean( //srv:SV_ServiceIdentification/srv:couplingType/srv:SV_CouplingType/@codeListValue = 'loose'))),        substring('tight', 1 div number(boolean( //srv:SV_ServiceIdentification/srv:couplingType/srv:SV_CouplingType/@codeListValue = 'tight'))),        substring('tight', 1 div number(boolean( //gmd:distributionInfo/gmd:MD_Distribution and not(//srv:SV_ServiceIdentification/srv:couplingType/srv:SV_CouplingType/@codeListValue)))),        substring('',  1 div number(boolean( not(   //srv:SV_ServiceIdentification/srv:couplingType/srv:SV_CouplingType/@codeListValue)                  and not(   //gmd:distributionInfo/gmd:MD_Distribution)))))"/>
     </bean>

isotc.serviceTitle

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.serviceTitle" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceTitle"/>
             <constructor-arg name="xpath" value="(//srv:SV_ServiceIdentification/gmd:citation/gmd:CI_Citation/gmd:title/gco:CharacterString | //gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/gmd:MD_Distributor/gmd:distributorTransferOptions/gmd:MD_DigitalTransferOptions/gmd:onLine/gmd:CI_OnlineResource/gmd:name/gco:CharacterString)/text()"/>
             <property name="combineNodes" value="true"/>
             <property name="combineDelimiter" value=":"/>
     </bean>

isotc.serviceDescription

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.serviceDescription" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceDescription"/>
             <constructor-arg name="xpath" value="(//srv:SV_ServiceIdentification/gmd:abstract/gco:CharacterString | //gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/gmd:MD_Distributor/gmd:distributorTransferOptions/gmd:MD_DigitalTransferOptions/gmd:onLine/gmd:CI_OnlineResource/gmd:description/gco:CharacterString)/text()"/>
             <property name="combineNodes" value="true"/>
             <property name="combineDelimiter" value=":"/>
     </bean>

isotc.serviceType

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.serviceType" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceType"/>
             <constructor-arg name="xpath" value="//srv:SV_ServiceIdentification/srv:serviceType/gco:LocalName/text()"/>
             <property name="multivalue" value="true"/>
             <property name="converter" ref="serviceTypesConverter"/>
     </bean>

isotc.serviceEndpoint

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.serviceEndpoint" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceEndpoint"/>
             <constructor-arg name="xpath" value="//srv:SV_ServiceIdentification/srv:containsOperations/srv:SV_OperationMetadata/srv:connectPoint/gmd:CI_OnlineResource/gmd:linkage/gmd:URL/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

isotc.serviceInput

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.serviceInput" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceInput"/>
             <constructor-arg name="xpath" value="//srv:SV_ServiceIdentification/srv:operatesOn/@xlink:href"/>
             <property name="multivalue" value="true"/>
     </bean>

isotc.serviceOutput

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.serviceOutput" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceOutput"/>
             <constructor-arg name="xpath" value="//srv:SV_ServiceIdentification/gmd:resourceFormat/@xlink:href"/>
             <property name="multivalue" value="true"/>
     </bean>

isotc.distribServiceType

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.distribServiceType" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceType"/>
             <constructor-arg name="xpath" value="//gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/gmd:MD_Distributor/gmd:distributorTransferOptions/gmd:MD_DigitalTransferOptions/gmd:onLine/gmd:CI_OnlineResource/gmd:protocol/gco:CharacterString/text()"/>
             <property name="multivalue" value="true"/>
             <property name="converter" ref="serviceTypesConverter"/>
     </bean>

isotc.distribServiceEndpoint

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.distribServiceEndpoint" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceEndpoint"/>
             <constructor-arg name="xpath" value="//gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/gmd:MD_Distributor/gmd:distributorTransferOptions/gmd:MD_DigitalTransferOptions/gmd:onLine/gmd:CI_OnlineResource/gmd:linkage/gmd:URL/text() | //gmd:distributionInfo/gmd:MD_Distribution/gmd:transferOptions/gmd:MD_DigitalTransferOptions/gmd:onLine/gmd:CI_OnlineResource/gmd:linkage/gmd:URL/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

isotc.distribServiceInput

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.distribServiceInput" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceInput"/>
             <constructor-arg name="xpath" value="//gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/gmd:MD_Distributor/gmd:distributorTransferOptions/@xlink:href"/>
             <property name="multivalue" value="true"/>
     </bean>

isotc.distribServiceOutput

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.distribServiceOutput" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceOutput"/>
             <constructor-arg name="xpath" value="//gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/gmd:MD_Distributor/gmd:distributorFormat/gmd:MD_Format/gmd:version/gco:CharacterString/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

isotc.fileID

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.fileID" class="org.dataone.cn.indexer.parser.ResolveSolrField">
             <constructor-arg name="name" value="fileID"/>
     </bean>

isotc.fullText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.fullText" class="org.dataone.cn.indexer.parser.FullTextSolrField">
             <constructor-arg name="name" value="text"/>
             <constructor-arg name="xpath" value="//*/text()"/>
             <property name="combineNodes" value="true"/>
     </bean>

ISO TC-211

Describes parser configuration for: isotc211Subprocessor

Format IDs Processed

This parser processes the following DataONE format IDs:

  • Geographic MetaData (GMD) Extensible Markup Language
    formatId: http://www.isotc211.org/2005/gmd

A full list of DataONE format IDs can be found at https://cn.dataone.org/cn/v2/formats/

Fields

The following fields in the solr index are populated from values retrieved from this type of metadata document. Note that these are in addition to the information extracted from System Metadata Parser.

Solr Field Multi Dedupe Source
Index.abstract False False
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:abstract/gco:CharacterString/text()
Processor: SolrField
Configuration: isotc.abstract
Index.author False False
(//gmd:CI_ResponsibleParty/gmd:individualName/
gco:CharacterString/text() | //
gmd:CI_ResponsibleParty/gmd:individualName/
gmx:Anchor/text())[1]
Processor: SolrField
Configuration: isotc.author
Index.authorSurName False False
(//gmd:CI_ResponsibleParty/gmd:individualName/
gco:CharacterString/text() | //
gmd:CI_ResponsibleParty/gmd:individualName/
gmx:Anchor/text())[1]
Processor: SolrField
Configuration: isotc.authorSurName
Index.authorSurNameSort False False
(//gmd:CI_ResponsibleParty/gmd:individualName/
gco:CharacterString/text() | //
gmd:CI_ResponsibleParty/gmd:individualName/
gmx:Anchor/text())[1]
Processor: SolrField
Index.contactOrganization False False
(//gmd:CI_ResponsibleParty/gmd:organisationName/
gco:CharacterString/text())[1]
Processor: SolrField
Index.origin True True
//gmd:CI_ResponsibleParty[gmd:role/gmd:CI_RoleCode/text() =
"owner" or gmd:role/gmd:CI_RoleCode/text() =
"originator" or gmd:role/gmd:CI_RoleCode/text() =
"principalInvestigator" or gmd:role/gmd:CI_RoleCode/
text() = "author"]/gmd:individualName/
gco:CharacterString/text() | //
gmd:CI_ResponsibleParty[(gmd:role/gmd:CI_RoleCode/
text() = "owner" or gmd:role/gmd:CI_RoleCode/text()
= "originator" or gmd:role/gmd:CI_RoleCode/text() =
"principalInvestigator" or gmd:role/gmd:CI_RoleCode/
text() = "author") and (not(gmd:individualName) or
gmd:individualName[@gco:nilReason = "missing"])]/
gmd:organisationName/gco:CharacterString/text()
Processor: SolrField
Configuration: isotc.origin
Index.investigator True True
//gmd:CI_ResponsibleParty/gmd:individualName/
gco:CharacterString/text() | //
gmd:CI_ResponsibleParty/gmd:individualName/
gmx:Anchor/text()
Processor: SolrField
Configuration: isotc.investigator
Index.pubDate False False
if (//gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/
gmd:date/gmd:CI_Date/gmd:date[
following-sibling::gmd:dateType/gmd:CI_DateTypeCode/
text() = 'publication']/gco:Date/text())
     then //gmd:identificationInfo/*/gmd:citation/
gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date[
following-sibling::gmd:dateType/gmd:CI_DateTypeCode/
text() = 'publication']/gco:Date/text()
else if (//gmd:identificationInfo/*/gmd:citation/
gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date[
following-sibling::gmd:dateType/gmd:CI_DateTypeCode/
text() = 'publication']/gco:DateTime/text())
         then //gmd:identificationInfo/*/
gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/
gmd:date[following-sibling::gmd:dateType/
gmd:CI_DateTypeCode/text() = 'publication']/
gco:DateTime/text()            else if (//
gmd:identificationInfo/*/gmd:citation/
gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date/
gco:Date[1]/text())                 then //
gmd:identificationInfo/*/gmd:citation/
gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date/
gco:Date[1]/text()           else if (//
gmd:identificationInfo/*/gmd:citation/
gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date/
gco:DateTime[1]/text())                 then //
gmd:identificationInfo/*/gmd:citation/
gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date/
gco:DateTime[1]/text()           else ()
Processor: SolrField
Configuration: isotc.pubDate
Index.beginDate False False
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:temporalElement/
gmd:EX_TemporalExtent/gmd:extent/*[local-name() =
'TimePeriod']/*[local-name() = 'beginPosition']/
text()
Processor: SolrField
Configuration: isotc.beginDate
Index.endDate False False
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:temporalElement/
gmd:EX_TemporalExtent/gmd:extent/*[local-name() =
'TimePeriod']/*[local-name() = 'endPosition']/text()
Processor: SolrField
Configuration: isotc.endDate
Index.title False False
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:citation/gmd:CI_Citation/gmd:title/
gco:CharacterString/text() | //
gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:citation/gmd:CI_Citation/gmd:title/gmx:Anchor/
text()
Processor: SolrField
Configuration: isotc.title
Index.keywords True False
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:descriptiveKeywords/gmd:MD_Keywords/gmd:keyword/
gmx:Anchor/text() | //gmd:identificationInfo/
gmd:MD_DataIdentification/gmd:descriptiveKeywords/
gmd:MD_Keywords/gmd:keyword/gco:CharacterString/
text()
Processor: SolrField
Configuration: isotc.keywords
Index.eastBoundCoord False False
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox/gmd:eastBoundLongitude/
gco:Decimal/text()
Processor: SolrField
Configuration: isotc.eastBoundCoord
Index.westBoundCoord False False
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox/gmd:westBoundLongitude/
gco:Decimal/text()
Processor: SolrField
Configuration: isotc.westBoundCoord
Index.southBoundCoord False False
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox/gmd:southBoundLatitude/
gco:Decimal/text()
Processor: SolrField
Configuration: isotc.southBoundCoord
Index.northBoundCoord False False
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox/gmd:northBoundLatitude/
gco:Decimal/text()
Processor: SolrField
Configuration: isotc.northBoundCoord
Index.geohash_9 False  
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = gmd:northBoundLatitude/
gco:Decimal/text(); southBoundingCoordinate =
gmd:southBoundLatitude/gco:Decimal/text();
eastBoundingCoordinate = gmd:eastBoundLongitude/
gco:Decimal/text(); westBoundingCoordinate =
gmd:westBoundLongitude/gco:Decimal/text()
Configuration: isotc.geohash9
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_1 False  
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = gmd:northBoundLatitude/
gco:Decimal/text(); southBoundingCoordinate =
gmd:southBoundLatitude/gco:Decimal/text();
eastBoundingCoordinate = gmd:eastBoundLongitude/
gco:Decimal/text(); westBoundingCoordinate =
gmd:westBoundLongitude/gco:Decimal/text()
Configuration: isotc.geohash1
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_2 False  
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = gmd:northBoundLatitude/
gco:Decimal/text(); southBoundingCoordinate =
gmd:southBoundLatitude/gco:Decimal/text();
eastBoundingCoordinate = gmd:eastBoundLongitude/
gco:Decimal/text(); westBoundingCoordinate =
gmd:westBoundLongitude/gco:Decimal/text()
Configuration: isotc.geohash2
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_3 False  
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = gmd:northBoundLatitude/
gco:Decimal/text(); southBoundingCoordinate =
gmd:southBoundLatitude/gco:Decimal/text();
eastBoundingCoordinate = gmd:eastBoundLongitude/
gco:Decimal/text(); westBoundingCoordinate =
gmd:westBoundLongitude/gco:Decimal/text()
Configuration: isotc.geohash3
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_4 False  
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = gmd:northBoundLatitude/
gco:Decimal/text(); southBoundingCoordinate =
gmd:southBoundLatitude/gco:Decimal/text();
eastBoundingCoordinate = gmd:eastBoundLongitude/
gco:Decimal/text(); westBoundingCoordinate =
gmd:westBoundLongitude/gco:Decimal/text()
Configuration: isotc.geohash4
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_5 False  
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = gmd:northBoundLatitude/
gco:Decimal/text(); southBoundingCoordinate =
gmd:southBoundLatitude/gco:Decimal/text();
eastBoundingCoordinate = gmd:eastBoundLongitude/
gco:Decimal/text(); westBoundingCoordinate =
gmd:westBoundLongitude/gco:Decimal/text()
Configuration: isotc.geohash5
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_6 False  
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = gmd:northBoundLatitude/
gco:Decimal/text(); southBoundingCoordinate =
gmd:southBoundLatitude/gco:Decimal/text();
eastBoundingCoordinate = gmd:eastBoundLongitude/
gco:Decimal/text(); westBoundingCoordinate =
gmd:westBoundLongitude/gco:Decimal/text()
Configuration: isotc.geohash6
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_7 False  
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = gmd:northBoundLatitude/
gco:Decimal/text(); southBoundingCoordinate =
gmd:southBoundLatitude/gco:Decimal/text();
eastBoundingCoordinate = gmd:eastBoundLongitude/
gco:Decimal/text(); westBoundingCoordinate =
gmd:westBoundLongitude/gco:Decimal/text()
Configuration: isotc.geohash7
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_8 False  
//gmd:identificationInfo/gmd:MD_DataIdentification/
gmd:extent/gmd:EX_Extent/gmd:geographicElement/
gmd:EX_GeographicBoundingBox ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = gmd:northBoundLatitude/
gco:Decimal/text(); southBoundingCoordinate =
gmd:southBoundLatitude/gco:Decimal/text();
eastBoundingCoordinate = gmd:eastBoundLongitude/
gco:Decimal/text(); westBoundingCoordinate =
gmd:westBoundLongitude/gco:Decimal/text()
Configuration: isotc.geohash8
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.isService False False
boolean(//srv:SV_ServiceIdentification or //
gmd:distributionInfo/gmd:MD_Distribution)
Processor: SolrField
Configuration: isotc.isService
Index.serviceCoupling False False
concat( substring('loose', 1 div number(boolean( //
srv:SV_ServiceIdentification/srv:couplingType/
srv:SV_CouplingType/@codeListValue = 'loose'))),
    substring('tight', 1 div number(boolean( //
srv:SV_ServiceIdentification/srv:couplingType/
srv:SV_CouplingType/@codeListValue = 'tight'))),
    substring('tight', 1 div number(boolean( //
gmd:distributionInfo/gmd:MD_Distribution and not(//
srv:SV_ServiceIdentification/srv:couplingType/
srv:SV_CouplingType/@codeListValue)))),
substring('',  1 div number(boolean( not(   //
srv:SV_ServiceIdentification/srv:couplingType/
srv:SV_CouplingType/@codeListValue)
 and not(   //gmd:distributionInfo/
gmd:MD_Distribution)))))
Processor: SolrField
Configuration: isotc.serviceCoupling
Index.serviceTitle False False
(//srv:SV_ServiceIdentification/gmd:citation/
gmd:CI_Citation/gmd:title/gco:CharacterString | //
gmd:distributionInfo/gmd:MD_Distribution/
gmd:distributor/gmd:MD_Distributor/
gmd:distributorTransferOptions/
gmd:MD_DigitalTransferOptions/gmd:onLine/
gmd:CI_OnlineResource/gmd:name/gco:CharacterString)/
text()
Processor: SolrField
Configuration: isotc.serviceTitle
Index.serviceDescription False False
(//srv:SV_ServiceIdentification/gmd:abstract/
gco:CharacterString | //gmd:distributionInfo/
gmd:MD_Distribution/gmd:distributor/
gmd:MD_Distributor/gmd:distributorTransferOptions/
gmd:MD_DigitalTransferOptions/gmd:onLine/
gmd:CI_OnlineResource/gmd:description/
gco:CharacterString)/text()
Processor: SolrField
Index.serviceType True False
//srv:SV_ServiceIdentification/srv:serviceType/
gco:LocalName/text()
Processor: SolrField
Configuration: isotc.serviceType
Index.serviceEndpoint True False
//srv:SV_ServiceIdentification/srv:containsOperations/
srv:SV_OperationMetadata/srv:connectPoint/
gmd:CI_OnlineResource/gmd:linkage/gmd:URL/text()
Processor: SolrField
Configuration: isotc.serviceEndpoint
Index.serviceInput True False
//srv:SV_ServiceIdentification/srv:operatesOn/@xlink:href
Processor: SolrField
Configuration: isotc.serviceInput
Index.serviceOutput True False
//srv:SV_ServiceIdentification/gmd:resourceFormat/
@xlink:href
Processor: SolrField
Configuration: isotc.serviceOutput
Index.serviceType True False
//gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/
gmd:MD_Distributor/gmd:distributorTransferOptions/
gmd:MD_DigitalTransferOptions/gmd:onLine/
gmd:CI_OnlineResource/gmd:protocol/
gco:CharacterString/text()
Processor: SolrField
Index.serviceEndpoint True False
//gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/
gmd:MD_Distributor/gmd:distributorTransferOptions/
gmd:MD_DigitalTransferOptions/gmd:onLine/
gmd:CI_OnlineResource/gmd:linkage/gmd:URL/text() | /
/gmd:distributionInfo/gmd:MD_Distribution/
gmd:transferOptions/gmd:MD_DigitalTransferOptions/
gmd:onLine/gmd:CI_OnlineResource/gmd:linkage/
gmd:URL/text()
Processor: SolrField
Index.serviceInput True False
//gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/
gmd:MD_Distributor/gmd:distributorTransferOptions/
@xlink:href
Processor: SolrField
Index.serviceOutput True False
//gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/
gmd:MD_Distributor/gmd:distributorFormat/
gmd:MD_Format/gmd:version/gco:CharacterString/text()
Processor: SolrField
Index.fileID    
Processor: ResolveSolrField
Configuration: isotc.fileID
Notes: SolrField which configures the resolve url for the document being processed.
Converter:
Index.text False False
//*/text()
Configuration: isotc.fullText

Bean Configurations

isotc.abstract

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.abstract" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="abstract"/>
             <constructor-arg name="xpath" value="//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:abstract/gco:CharacterString/text()"/>
     </bean>

isotc.author

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.author" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="author"/>
             <constructor-arg name="xpath" value="(//gmd:CI_ResponsibleParty/gmd:individualName/gco:CharacterString/text() | //gmd:CI_ResponsibleParty/gmd:individualName/gmx:Anchor/text())[1]"/>
     </bean>

isotc.authorSurName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.authorSurName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurName"/>
             <constructor-arg name="xpath" value="(//gmd:CI_ResponsibleParty/gmd:individualName/gco:CharacterString/text() | //gmd:CI_ResponsibleParty/gmd:individualName/gmx:Anchor/text())[1]"/>
             <property name="multivalue" value="false"/>
     </bean>

isotc.authorSurNameSort

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.authorSurNameSort" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurNameSort"/>
             <constructor-arg name="xpath" value="(//gmd:CI_ResponsibleParty/gmd:individualName/gco:CharacterString/text() | //gmd:CI_ResponsibleParty/gmd:individualName/gmx:Anchor/text())[1]"/>
             <property name="multivalue" value="false"/>
     </bean>

isotc.contactOrganization

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.contactOrganization" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="contactOrganization"/>
             <constructor-arg name="xpath" value="(//gmd:CI_ResponsibleParty/gmd:organisationName/gco:CharacterString/text())[1]"/>
     </bean>

isotc.origin

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.origin" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="origin"/>
             <constructor-arg name="xpath" value="//gmd:CI_ResponsibleParty[gmd:role/gmd:CI_RoleCode/text() = &quot;owner&quot; or gmd:role/gmd:CI_RoleCode/text() = &quot;originator&quot; or gmd:role/gmd:CI_RoleCode/text() = &quot;principalInvestigator&quot; or gmd:role/gmd:CI_RoleCode/text() = &quot;author&quot;]/gmd:individualName/gco:CharacterString/text() | //gmd:CI_ResponsibleParty[(gmd:role/gmd:CI_RoleCode/text() = &quot;owner&quot; or gmd:role/gmd:CI_RoleCode/text() = &quot;originator&quot; or gmd:role/gmd:CI_RoleCode/text() = &quot;principalInvestigator&quot; or gmd:role/gmd:CI_RoleCode/text() = &quot;author&quot;) and (not(gmd:individualName) or gmd:individualName[@gco:nilReason = &quot;missing&quot;])]/gmd:organisationName/gco:CharacterString/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

isotc.investigator

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.investigator" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="investigator"/>
             <constructor-arg name="xpath" value="//gmd:CI_ResponsibleParty/gmd:individualName/gco:CharacterString/text() | //gmd:CI_ResponsibleParty/gmd:individualName/gmx:Anchor/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

isotc.pubDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.pubDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="pubDate"/>
             <constructor-arg name="xpath" value="if (//gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date[following-sibling::gmd:dateType/gmd:CI_DateTypeCode/text() = 'publication']/gco:Date/text())                 then //gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date[following-sibling::gmd:dateType/gmd:CI_DateTypeCode/text() = 'publication']/gco:Date/text()           else if (//gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date[following-sibling::gmd:dateType/gmd:CI_DateTypeCode/text() = 'publication']/gco:DateTime/text())                 then //gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date[following-sibling::gmd:dateType/gmd:CI_DateTypeCode/text() = 'publication']/gco:DateTime/text()            else if (//gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date/gco:Date[1]/text())                 then //gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date/gco:Date[1]/text()           else if (//gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date/gco:DateTime[1]/text())                 then //gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date/gco:DateTime[1]/text()           else ()"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

isotc.beginDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.beginDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="beginDate"/>
             <constructor-arg name="xpath" value="//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:temporalElement/gmd:EX_TemporalExtent/gmd:extent/*[local-name() = 'TimePeriod']/*[local-name() = 'beginPosition']/text()"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

isotc.endDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.endDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="endDate"/>
             <constructor-arg name="xpath" value="//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:temporalElement/gmd:EX_TemporalExtent/gmd:extent/*[local-name() = 'TimePeriod']/*[local-name() = 'endPosition']/text()"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

isotc.title

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.title" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="title"/>
             <constructor-arg name="xpath" value="//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:title/gco:CharacterString/text() | //gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:title/gmx:Anchor/text()"/>
     </bean>

isotc.keywords

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.keywords" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="keywords"/>
             <constructor-arg name="xpath" value="//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:descriptiveKeywords/gmd:MD_Keywords/gmd:keyword/gmx:Anchor/text() | //gmd:identificationInfo/gmd:MD_DataIdentification/gmd:descriptiveKeywords/gmd:MD_Keywords/gmd:keyword/gco:CharacterString/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

isotc.eastBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.eastBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="eastBoundCoord"/>
             <constructor-arg name="xpath" value="//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:geographicElement/gmd:EX_GeographicBoundingBox/gmd:eastBoundLongitude/gco:Decimal/text()"/>
     </bean>

isotc.westBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.westBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="westBoundCoord"/>
             <constructor-arg name="xpath" value="//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:geographicElement/gmd:EX_GeographicBoundingBox/gmd:westBoundLongitude/gco:Decimal/text()"/>
     </bean>

isotc.southBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.southBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="southBoundCoord"/>
             <constructor-arg name="xpath" value="//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:geographicElement/gmd:EX_GeographicBoundingBox/gmd:southBoundLatitude/gco:Decimal/text()"/>
     </bean>

isotc.northBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.northBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="northBoundCoord"/>
             <constructor-arg name="xpath" value="//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:geographicElement/gmd:EX_GeographicBoundingBox/gmd:northBoundLatitude/gco:Decimal/text()"/>
     </bean>

isotc.geohash9

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.geohash9" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="isotc.geohashRoot">
             <constructor-arg name="name" value="geohash_9"/>
             <property name="converter" ref="geohashConverter_9"/>
     </bean>

isotc.geohash1

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.geohash1" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="isotc.geohashRoot">
             <constructor-arg name="name" value="geohash_1"/>
             <property name="converter" ref="geohashConverter_1"/>
     </bean>

isotc.geohash2

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.geohash2" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="isotc.geohashRoot">
             <constructor-arg name="name" value="geohash_2"/>
             <property name="converter" ref="geohashConverter_2"/>
     </bean>

isotc.geohash3

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.geohash3" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="isotc.geohashRoot">
             <constructor-arg name="name" value="geohash_3"/>
             <property name="converter" ref="geohashConverter_3"/>
     </bean>

isotc.geohash4

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.geohash4" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="isotc.geohashRoot">
             <constructor-arg name="name" value="geohash_4"/>
             <property name="converter" ref="geohashConverter_4"/>
     </bean>

isotc.geohash5

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.geohash5" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="isotc.geohashRoot">
             <constructor-arg name="name" value="geohash_5"/>
             <property name="converter" ref="geohashConverter_5"/>
     </bean>

isotc.geohash6

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.geohash6" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="isotc.geohashRoot">
             <constructor-arg name="name" value="geohash_6"/>
             <property name="converter" ref="geohashConverter_6"/>
     </bean>

isotc.geohash7

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.geohash7" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="isotc.geohashRoot">
             <constructor-arg name="name" value="geohash_7"/>
             <property name="converter" ref="geohashConverter_7"/>
     </bean>

isotc.geohash8

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.geohash8" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="isotc.geohashRoot">
             <constructor-arg name="name" value="geohash_8"/>
             <property name="converter" ref="geohashConverter_8"/>
     </bean>

isotc.isService

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.isService" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="isService"/>
             <constructor-arg name="xpath" value="boolean(//srv:SV_ServiceIdentification or //gmd:distributionInfo/gmd:MD_Distribution)"/>
     </bean>

isotc.serviceCoupling

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.serviceCoupling" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceCoupling"/>
             <constructor-arg name="xpath" value="concat( substring('loose', 1 div number(boolean( //srv:SV_ServiceIdentification/srv:couplingType/srv:SV_CouplingType/@codeListValue = 'loose'))),        substring('tight', 1 div number(boolean( //srv:SV_ServiceIdentification/srv:couplingType/srv:SV_CouplingType/@codeListValue = 'tight'))),        substring('tight', 1 div number(boolean( //gmd:distributionInfo/gmd:MD_Distribution and not(//srv:SV_ServiceIdentification/srv:couplingType/srv:SV_CouplingType/@codeListValue)))),        substring('',  1 div number(boolean( not(   //srv:SV_ServiceIdentification/srv:couplingType/srv:SV_CouplingType/@codeListValue)                  and not(   //gmd:distributionInfo/gmd:MD_Distribution)))))"/>
     </bean>

isotc.serviceTitle

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.serviceTitle" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceTitle"/>
             <constructor-arg name="xpath" value="(//srv:SV_ServiceIdentification/gmd:citation/gmd:CI_Citation/gmd:title/gco:CharacterString | //gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/gmd:MD_Distributor/gmd:distributorTransferOptions/gmd:MD_DigitalTransferOptions/gmd:onLine/gmd:CI_OnlineResource/gmd:name/gco:CharacterString)/text()"/>
             <property name="combineNodes" value="true"/>
             <property name="combineDelimiter" value=":"/>
     </bean>

isotc.serviceDescription

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.serviceDescription" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceDescription"/>
             <constructor-arg name="xpath" value="(//srv:SV_ServiceIdentification/gmd:abstract/gco:CharacterString | //gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/gmd:MD_Distributor/gmd:distributorTransferOptions/gmd:MD_DigitalTransferOptions/gmd:onLine/gmd:CI_OnlineResource/gmd:description/gco:CharacterString)/text()"/>
             <property name="combineNodes" value="true"/>
             <property name="combineDelimiter" value=":"/>
     </bean>

isotc.serviceType

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.serviceType" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceType"/>
             <constructor-arg name="xpath" value="//srv:SV_ServiceIdentification/srv:serviceType/gco:LocalName/text()"/>
             <property name="multivalue" value="true"/>
             <property name="converter" ref="serviceTypesConverter"/>
     </bean>

isotc.serviceEndpoint

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.serviceEndpoint" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceEndpoint"/>
             <constructor-arg name="xpath" value="//srv:SV_ServiceIdentification/srv:containsOperations/srv:SV_OperationMetadata/srv:connectPoint/gmd:CI_OnlineResource/gmd:linkage/gmd:URL/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

isotc.serviceInput

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.serviceInput" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceInput"/>
             <constructor-arg name="xpath" value="//srv:SV_ServiceIdentification/srv:operatesOn/@xlink:href"/>
             <property name="multivalue" value="true"/>
     </bean>

isotc.serviceOutput

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.serviceOutput" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceOutput"/>
             <constructor-arg name="xpath" value="//srv:SV_ServiceIdentification/gmd:resourceFormat/@xlink:href"/>
             <property name="multivalue" value="true"/>
     </bean>

isotc.distribServiceType

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.distribServiceType" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceType"/>
             <constructor-arg name="xpath" value="//gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/gmd:MD_Distributor/gmd:distributorTransferOptions/gmd:MD_DigitalTransferOptions/gmd:onLine/gmd:CI_OnlineResource/gmd:protocol/gco:CharacterString/text()"/>
             <property name="multivalue" value="true"/>
             <property name="converter" ref="serviceTypesConverter"/>
     </bean>

isotc.distribServiceEndpoint

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.distribServiceEndpoint" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceEndpoint"/>
             <constructor-arg name="xpath" value="//gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/gmd:MD_Distributor/gmd:distributorTransferOptions/gmd:MD_DigitalTransferOptions/gmd:onLine/gmd:CI_OnlineResource/gmd:linkage/gmd:URL/text() | //gmd:distributionInfo/gmd:MD_Distribution/gmd:transferOptions/gmd:MD_DigitalTransferOptions/gmd:onLine/gmd:CI_OnlineResource/gmd:linkage/gmd:URL/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

isotc.distribServiceInput

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.distribServiceInput" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceInput"/>
             <constructor-arg name="xpath" value="//gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/gmd:MD_Distributor/gmd:distributorTransferOptions/@xlink:href"/>
             <property name="multivalue" value="true"/>
     </bean>

isotc.distribServiceOutput

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.distribServiceOutput" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="serviceOutput"/>
             <constructor-arg name="xpath" value="//gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/gmd:MD_Distributor/gmd:distributorFormat/gmd:MD_Format/gmd:version/gco:CharacterString/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

isotc.fileID

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.fileID" class="org.dataone.cn.indexer.parser.ResolveSolrField">
             <constructor-arg name="name" value="fileID"/>
     </bean>

isotc.fullText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="isotc.fullText" class="org.dataone.cn.indexer.parser.FullTextSolrField">
             <constructor-arg name="name" value="text"/>
             <constructor-arg name="xpath" value="//*/text()"/>
             <property name="combineNodes" value="true"/>
     </bean>

Mercury metadata

Describes parser configuration for: ornlMercury10Subprocessor

Format IDs Processed

This parser processes the following DataONE format IDs:

  • Oak Ridge National Lab Mercury Metadata version 1.0
    formatId: http://purl.org/ornl/schema/mercury/terms/v1.0

A full list of DataONE format IDs can be found at https://cn.dataone.org/cn/v2/formats/

Fields

The following fields in the solr index are populated from values retrieved from this type of metadata document. Note that these are in addition to the information extracted from System Metadata Parser.

Solr Field Multi Dedupe Source
Index.abstract False False
/*[local-name() = 'metadata']/idinfo/descript/abstract/
descendant::text()
Processor: MergeSolrField
Configuration: fgdc.abstract
Index.beginDate False False
/*[local-name() = 'metadata']/idinfo/timeperd/timeinfo/
rngdates/begdate/text()
Processor: SolrField
Configuration: fgdc.beginDate
Index.contactOrganization True True
/*[local-name() = 'metadata']/distinfo/distrib/cntinfo/
cntperp/cntorg/text() | /*[local-name() =
'metadata']/distinfo/distrib/cntinfo/cntorgp/cntorg/
text()
Processor: SolrField
Index.eastBoundCoord False False
/*[local-name() = 'metadata']/idinfo/spdom/bounding/eastbc/
text()
Processor: SolrField
Configuration: fgdc.eastBoundCoord
Index.westBoundCoord False False
/*[local-name() = 'metadata']/idinfo/spdom/bounding/westbc/
text()
Processor: SolrField
Configuration: fgdc.westBoundCoord
Index.northBoundCoord False False
/*[local-name() = 'metadata']/idinfo/spdom/bounding/northbc/
text()
Processor: SolrField
Configuration: fgdc.northBoundCoord
Index.southBoundCoord False False
/*[local-name() = 'metadata']/idinfo/spdom/bounding/southbc/
text()
Processor: SolrField
Configuration: fgdc.southBoundCoord
Index.edition False False
/*[local-name() = 'metadata']/idinfo/citeinfo/edition/text()
Processor: SolrField
Configuration: fgdc.edition
Index.endDate False False
/*[local-name() = 'metadata']/idinfo/timeperd/timeinfo/
rngdates/enddate/text()
Processor: SolrField
Configuration: fgdc.endDate
Index.gcmdKeyword True False
/*[local-name() = 'metadata']/idinfo/keywords/theme[themekt=
'GCMD Science Keywords']/themekey/text()
Processor: SolrField
Configuration: fgdc.gcmdKeyword
Index.keywords True True
/*[local-name() = 'metadata']/idinfo/keywords/theme/
themekey/text() | /*[local-name() = 'metadata']/
idinfo/keywords/place/placekey/text()
Processor: SolrField
Configuration: fgdc.keywords
Index.geoform False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
geoform/text()
Processor: SolrField
Configuration: fgdc.geoform
Index.genus True False
//taxoncl/taxonrv[../taxonrn="Genus"]/text()
Processor: SolrField
Configuration: fgdc.genus
Index.kingdom True False
//taxoncl/taxonrv[../taxonrn="Kingdom"]/text()
Processor: SolrField
Configuration: fgdc.kingdom
Index.order True False
//taxoncl/taxonrv[../taxonrn="Order"]/text()
Processor: SolrField
Configuration: fgdc.order
Index.phylum True False
//taxoncl/taxonrv[../taxonrn="Phylum"]/text() | //taxoncl/
taxonrv[../taxonrn="Division"]/text()
Processor: SolrField
Configuration: fgdc.phylum
Index.species True False
//taxoncl/taxonrv[../taxonrn="Species"]/text()
Processor: SolrField
Configuration: fgdc.species
Index.family True False
//taxoncl/taxonrv[../taxonrn="Family"]/text()
Processor: SolrField
Configuration: fgdc.family
Index.class True False
//taxoncl/taxonrv[../taxonrn="Class"]/text()
Processor: SolrField
Configuration: fgdc.class
Index.scientificName False  
//taxoncl/taxonrv[../taxonrn="Genus"] ->{{[genus] [species]
}}; genus = ../taxonrv/text(); species = taxonrv/
text()
Configuration: fgdc.scientificName
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.origin True False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
origin/text()
Processor: SolrField
Configuration: fgdc.origin
Index.placeKey True False
/*[local-name() = 'metadata']/idinfo/keywords/place/
placekey/text()
Processor: SolrField
Configuration: fgdc.placeKey
Index.pubDate False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
pubdate/text()
Processor: SolrField
Configuration: fgdc.pubDate
Index.purpose False False
/*[local-name() = 'metadata']/idinfo/descript/purpose/
descendant::text()
Processor: MergeSolrField
Configuration: fgdc.purpose
Index.title False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
title/text()
Processor: SolrField
Configuration: fgdc.title
Index.webUrl True False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
onlink/text()
Processor: SolrField
Configuration: fgdc.web_url
Index.fileID    
Processor: ResolveSolrField
Configuration: fgdc.fileID
Notes: SolrField which configures the resolve url for the document being processed.
Converter:
Index.text    
Configuration: fgdc.fullText
Converter:
Index.presentationCat False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
geoform/text()
Processor: SolrField
Configuration: fgdc.presentationCat
Index.author False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
origin/text()
Processor: SolrField
Configuration: fgdc.author
Index.authorSurName False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
origin[1]/text()
Processor: SolrField
Configuration: fgdc.authorSurName
Index.authorSurNameSort False False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
origin[1]/text()
Processor: SolrField
Configuration: fgdc.authorSurNameSort
Index.investigator True False
/*[local-name() = 'metadata']/idinfo/citation/citeinfo/
origin/text()
Processor: SolrField
Configuration: fgdc.investigator
Index.site True False
/*[local-name() = 'metadata']/idinfo/spdom/descgeog/text()
Processor: SolrField
Configuration: fgdc.site
Index.attributeName True False
//attr/attrlabl/text()
Processor: SolrField
Configuration: fgdc.attributeName
Index.attributeLabel True False
//attr/attalias/text()
Processor: SolrField
Configuration: fgdc.attributeLabel
Index.attributeDescription True False
//attr/attrdef/text()
Processor: SolrField
Index.attributeUnit True False
//attr/attrdomv//attrunit/text() | //attr//attrdomv//edomv/
text()
Processor: SolrField
Configuration: fgdc.attributeUnit
Index.attribute False  
//attr ->{{[attributeName] [attributeLabel] [
attributeDescription] [attributeUnit]}};
attributeName = attrlabl/text(); attributeLabel =
attalias/text(); attributeDescription = attrdef/
text(); attributeUnit = attrdomv//attrunit/text() |
.//attrdomv//edomv/text()
Configuration: fgdc.attributeText
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Index.geohash_1 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash1
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_2 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash2
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_3 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash3
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_4 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash4
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_5 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash5
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_6 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash6
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_7 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash7
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_8 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash8
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter
Index.geohash_9 False  
/*[local-name() = 'metadata']/idinfo/spdom/bounding ->{{[
northBoundingCoordinate] [southBoundingCoordinate] [
eastBoundingCoordinate] [westBoundingCoordinate]}};
northBoundingCoordinate = northbc/text();
southBoundingCoordinate = southbc/text();
eastBoundingCoordinate = eastbc/text();
westBoundingCoordinate = westbc/text()
Configuration: fgdc.geohash9
Notes: This bean uses a template populated from additional sources. See configuration for more details.
Converter: GeohashConverter

Bean Configurations

fgdc.abstract

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.abstract" class="org.dataone.cn.indexer.parser.MergeSolrField">
       <constructor-arg name="name" value="abstract"/>
       <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/descript/abstract/descendant::text()"/>
       <constructor-arg name="delimiter" value=" "/>
       <property name="multivalue" value="false"/>
       <property name="dedupe" value="false"/>
     </bean>

fgdc.beginDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.beginDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="beginDate"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/timeperd/timeinfo/rngdates/begdate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="fgdcDateConverter"/>
     </bean>

fgdc.contactOrganization

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.contactOrganization" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="contactOrganization"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/distinfo/distrib/cntinfo/cntperp/cntorg/text() | /*[local-name() = 'metadata']/distinfo/distrib/cntinfo/cntorgp/cntorg/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

fgdc.eastBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.eastBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="eastBoundCoord"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/spdom/bounding/eastbc/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

fgdc.westBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.westBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="westBoundCoord"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/spdom/bounding/westbc/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

fgdc.northBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.northBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="northBoundCoord"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/spdom/bounding/northbc/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

fgdc.southBoundCoord

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.southBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="southBoundCoord"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/spdom/bounding/southbc/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="solrLongitudeConverter"/>
     </bean>

fgdc.edition

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.edition" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="edition"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citeinfo/edition/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.endDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.endDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="endDate"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/timeperd/timeinfo/rngdates/enddate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="fgdcDateConverter"/>
     </bean>

fgdc.gcmdKeyword

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.gcmdKeyword" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="gcmdKeyword"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/keywords/theme[themekt='GCMD Science Keywords']/themekey/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.keywords

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.keywords" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="keywords"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/keywords/theme/themekey/text() | /*[local-name() = 'metadata']/idinfo/keywords/place/placekey/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
             <property name="disallowedValues">
                     <list>
                             <value>none</value>
                     </list>
             </property>
     </bean>

fgdc.geoform

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geoform" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="geoform"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/geoform/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.genus

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.genus" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="genus"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Genus&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.kingdom

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.kingdom" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="kingdom"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Kingdom&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.order

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.order" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="order"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Order&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.phylum

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.phylum" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="phylum"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Phylum&quot;]/text() | //taxoncl/taxonrv[../taxonrn=&quot;Division&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.species

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.species" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="species"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Species&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.family

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.family" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="family"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Family&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.class

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.class" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="class"/>
             <constructor-arg name="xpath" value="//taxoncl/taxonrv[../taxonrn=&quot;Class&quot;]/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.scientificName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.scientificName" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="fgdc.scientificNameRoot">
                     <constructor-arg name="name" value="scientificName"/>
     </bean>

fgdc.origin

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.origin" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="origin"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/origin/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.placeKey

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.placeKey" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="placeKey"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/keywords/place/placekey/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.pubDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.pubDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="pubDate"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/pubdate/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="fgdcDateConverter"/>
     </bean>

fgdc.purpose

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.purpose" class="org.dataone.cn.indexer.parser.MergeSolrField">
       <constructor-arg name="name" value="purpose"/>
       <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/descript/purpose/descendant::text()"/>
       <constructor-arg name="delimiter" value=" "/>
       <property name="multivalue" value="false"/>
       <property name="dedupe" value="false"/>
     </bean>

fgdc.title

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.title" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="title"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/title/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.web_url

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.web_url" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="webUrl"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/onlink/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.fileID

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.fileID" class="org.dataone.cn.indexer.parser.ResolveSolrField">
             <constructor-arg name="name" value="fileID"/>
     </bean>

fgdc.fullText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.fullText" class="org.dataone.cn.indexer.parser.AggregateSolrField">
             <property name="name" value="text"/>
             <property name="solrFields">
                     <list>
                     <ref bean="fgdc.text"/>
             </list>
             </property>
     </bean>

fgdc.presentationCat

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.presentationCat" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="presentationCat"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/geoform/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.author

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.author" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="author"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/origin/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.authorSurName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.authorSurName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurName"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/origin[1]/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.authorSurNameSort

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.authorSurNameSort" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurNameSort"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/origin[1]/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

fgdc.investigator

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.investigator" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="investigator"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/citation/citeinfo/origin/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.site

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.site" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="site"/>
             <constructor-arg name="xpath" value="/*[local-name() = 'metadata']/idinfo/spdom/descgeog/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

fgdc.attributeName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.attributeName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeName"/>
             <constructor-arg name="xpath" value="//attr/attrlabl/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

fgdc.attributeLabel

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.attributeLabel" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeLabel"/>
             <constructor-arg name="xpath" value="//attr/attalias/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

fgdc.attributeDescription

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.attributeDescription" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeDescription"/>
             <constructor-arg name="xpath" value="//attr/attrdef/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

fgdc.attributeUnit

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.attributeUnit" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="attributeUnit"/>
             <constructor-arg name="xpath" value="//attr/attrdomv//attrunit/text() | //attr//attrdomv//edomv/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="false"/>
     </bean>

fgdc.attributeText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.attributeText" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="true" p:root-ref="fgdc.attributeTextRoot">
                     <constructor-arg name="name" value="attribute"/>
     </bean>

fgdc.geohash1

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash1" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_1"/>
             <property name="converter" ref="geohashConverter_1"/>
     </bean>

fgdc.geohash2

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash2" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_2"/>
             <property name="converter" ref="geohashConverter_2"/>
     </bean>

fgdc.geohash3

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash3" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_3"/>
             <property name="converter" ref="geohashConverter_3"/>
     </bean>

fgdc.geohash4

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash4" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_4"/>
             <property name="converter" ref="geohashConverter_4"/>
     </bean>

fgdc.geohash5

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash5" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_5"/>
             <property name="converter" ref="geohashConverter_5"/>
     </bean>

fgdc.geohash6

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash6" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_6"/>
             <property name="converter" ref="geohashConverter_6"/>
     </bean>

fgdc.geohash7

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash7" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_7"/>
             <property name="converter" ref="geohashConverter_7"/>
     </bean>

fgdc.geohash8

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash8" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_8"/>
             <property name="converter" ref="geohashConverter_8"/>
     </bean>

fgdc.geohash9

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="fgdc.geohash9" class="org.dataone.cn.indexer.parser.CommonRootSolrField" p:multivalue="false" p:root-ref="fgdc.geohashRoot">
             <constructor-arg name="name" value="geohash_9"/>
             <property name="converter" ref="geohashConverter_9"/>
     </bean>

Provenance

Describes parser configuration for: prov20150115RdfXmlSubprocessor

Format IDs Processed

This parser processes the following DataONE format IDs:

  • RDF/XML
    formatId: http://www.w3.org/TR/rdf-syntax-grammar
  • Object Reuse and Exchange Vocabulary
    formatId: http://www.openarchives.org/ore/terms

A full list of DataONE format IDs can be found at https://cn.dataone.org/cn/v2/formats/

Fields

The following fields in the solr index are populated from values retrieved from this type of metadata document. Note that these are in addition to the information extracted from System Metadata Parser.

Solr Field Multi Dedupe Source
Index.prov_wasDerivedFrom False False
SELECT (str(?pidValue) as ?pid) (str(?wasDerivedFromValue) as ?prov_wasDerivedFrom)
FROM <$GRAPH_NAME>
WHERE {

    ?derived_data       prov:wasDerivedFrom ?primary_data .
    ?derived_data       dcterms:identifier  ?pidValue .
    ?primary_data       dcterms:identifier  ?wasDerivedFromValue .

    }
Processor: SparqlField
Index.prov_wasInformedBy False False
SELECT (str(?pidValue) as ?pid) (str(?wasInformedByValue) as ?prov_wasInformedBy)
FROM <$GRAPH_NAME>
WHERE {

    ?activity               prov:wasInformedBy  ?previousActivity .
    ?activity               dcterms:identifier  ?pidValue .
    ?previousActivity       dcterms:identifier  ?wasInformedByValue .

    }
Processor: SparqlField
Index.prov_used False False
SELECT (str(?pidValue) as ?pid) (str(?usedValue) as ?prov_used)
FROM <$GRAPH_NAME>
WHERE {

    ?activity       prov:used                 ?data .
    ?activity       prov:qualifiedAssociation ?association .
    ?association    prov:hadPlan              ?program .
    ?program        dcterms:identifier        ?pidValue .
    ?data           dcterms:identifier        ?usedValue .

    }
Processor: SparqlField
Configuration: prov20150115.used
Index.prov_generated False False
SELECT (str(?pidValue) as ?pid) (str(?generatedValue) as ?prov_generated)
FROM <$GRAPH_NAME>
WHERE {

    ?result         prov:wasGeneratedBy       ?activity .
    ?activity       prov:qualifiedAssociation ?association .
    ?association    prov:hadPlan              ?program .
    ?result         dcterms:identifier        ?generatedValue .
    ?program        dcterms:identifier        ?pidValue .

    }
Processor: SparqlField
Configuration: prov20150115.generated
Index.prov_generatedByProgram False False
SELECT (str(?pidValue) as ?pid) (str(?programPidValue) as ?prov_generatedByProgram)
FROM <$GRAPH_NAME>
WHERE {

    ?derived_data prov:wasGeneratedBy ?execution .
    ?execution prov:qualifiedAssociation ?association .
    ?association prov:hadPlan ?program .
    ?program dcterms:identifier ?programPidValue .
    ?derived_data dcterms:identifier ?pidValue .
}
Processor: SparqlField
Index.prov_generatedByExecution False False
SELECT (str(?pidValue) as ?pid) (str(?executionPidValue) as ?prov_generatedByExecution)
FROM <$GRAPH_NAME>
WHERE {

    ?derived_data prov:wasGeneratedBy ?execution .
    ?execution dcterms:identifier ?executionPidValue .
    ?derived_data dcterms:identifier ?pidValue .
}
Index.prov_generatedByUser False False
SELECT (str(?pidValue) as ?pid) ?prov_generatedByUser
FROM <$GRAPH_NAME>
WHERE {

    ?derived_data prov:wasGeneratedBy ?execution .
    ?execution prov:qualifiedAssociation ?association .
    ?association prov:agent ?prov_generatedByUser .
    ?derived_data dcterms:identifier ?pidValue .
}
Processor: SparqlField
Index.prov_usedByProgram False False
SELECT (str(?pidValue) as ?pid) (str(?programPidValue) as ?prov_usedByProgram)
FROM <$GRAPH_NAME>
WHERE {

    ?execution prov:used ?primary_data .
    ?execution prov:qualifiedAssociation ?association .
    ?association prov:hadPlan ?program .
    ?program dcterms:identifier ?programPidValue .
    ?primary_data dcterms:identifier ?pidValue .
}
Processor: SparqlField
Index.prov_usedByExecution False False
SELECT (str(?pidValue) as ?pid) (str(?executionIdValue) as ?prov_usedByExecution)
FROM <$GRAPH_NAME>
WHERE {

    ?execution prov:used ?primary_data .
    ?primary_data dcterms:identifier ?pidValue .
    ?execution dcterms:identifier ?executionIdValue .
}
Processor: SparqlField
Index.prov_usedByUser False False
SELECT (str(?pidValue) as ?pid) ?prov_usedByUser
FROM <$GRAPH_NAME>
WHERE {

    ?execution prov:used ?primary_data .
    ?execution prov:qualifiedAssociation ?association .
    ?association prov:agent ?prov_usedByUser .
    ?primary_data dcterms:identifier ?pidValue .
}
Processor: SparqlField
Index.prov_wasExecutedByExecution False False
SELECT (str(?pidValue) as ?pid) (str(?executionIdValue) as ?prov_wasExecutedByExecution)
FROM <$GRAPH_NAME>
WHERE {

    ?execution prov:qualifiedAssociation ?association .
    ?association prov:hadPlan ?program .
    ?execution dcterms:identifier ?executionIdValue .
    ?program dcterms:identifier ?pidValue .
}
Index.prov_wasExecutedByUser False False
SELECT (str(?pidValue) as ?pid) ?prov_wasExecutedByUser
FROM <$GRAPH_NAME>
WHERE {

    ?execution prov:qualifiedAssociation ?association .
    ?association prov:hadPlan ?program .
    ?association prov:agent ?prov_wasExecutedByUser .
    ?program dcterms:identifier ?pidValue .
}
Processor: SparqlField
Index.prov_instanceOfClass False False
SELECT (str(?pidValue) as ?pid) ?prov_instanceOfClass
FROM <$GRAPH_NAME>
WHERE {

    ?subject rdf:type ?prov_instanceOfClass .
    ?subject dcterms:identifier ?pidValue .
}
Processor: SparqlField
Index.prov_hasDerivations False False
SELECT (str(?pidValue) as ?pid) (str(?derivedDataPidValue) as ?prov_hasDerivations)
FROM <$GRAPH_NAME>
WHERE {
    ?derived_data prov:wasDerivedFrom ?source_data .
    ?source_data dcterms:identifier ?pidValue .
    ?derived_data dcterms:identifier ?derivedDataPidValue .
}
Processor: SparqlField

Bean Configurations

prov20150115.wasDerivedFrom

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="prov20150115.wasDerivedFrom" class="org.dataone.cn.indexer.annotation.SparqlField">
     <constructor-arg name="name" value="prov_wasDerivedFrom"/>
     <constructor-arg name="query">
         <value>
             <![CDATA[
             PREFIX rdf:     <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
             PREFIX rdfs:    <http://www.w3.org/2000/01/rdf-schema#>
             PREFIX owl:     <http://www.w3.org/2002/07/owl#>
             PREFIX prov:    <http://www.w3.org/ns/prov#>
             PREFIX provone: <http://purl.dataone.org/provone/2015/01/15/ontology#>
             PREFIX ore:     <http://www.openarchives.org/ore/terms/>
             PREFIX dcterms: <http://purl.org/dc/terms/>

             SELECT (str(?pidValue) as ?pid) (str(?wasDerivedFromValue) as ?prov_wasDerivedFrom)
             FROM <$GRAPH_NAME>
             WHERE {

                 ?derived_data       prov:wasDerivedFrom ?primary_data .
                 ?derived_data       dcterms:identifier  ?pidValue .
                 ?primary_data       dcterms:identifier  ?wasDerivedFromValue .

                 }
              ]]>
         </value>
     </constructor-arg>
 </bean>

prov20150115.wasInformedBy

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="prov20150115.wasInformedBy" class="org.dataone.cn.indexer.annotation.SparqlField">
     <constructor-arg name="name" value="prov_wasInformedBy"/>
     <constructor-arg name="query">
         <value>
             <![CDATA[
             PREFIX rdf:     <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
             PREFIX rdfs:    <http://www.w3.org/2000/01/rdf-schema#>
             PREFIX owl:     <http://www.w3.org/2002/07/owl#>
             PREFIX prov:    <http://www.w3.org/ns/prov#>
             PREFIX provone: <http://purl.dataone.org/provone/2015/01/15/ontology#>
             PREFIX ore:     <http://www.openarchives.org/ore/terms/>
             PREFIX dcterms: <http://purl.org/dc/terms/>

             SELECT (str(?pidValue) as ?pid) (str(?wasInformedByValue) as ?prov_wasInformedBy)
             FROM <$GRAPH_NAME>
             WHERE {

                 ?activity               prov:wasInformedBy  ?previousActivity .
                 ?activity               dcterms:identifier  ?pidValue .
                 ?previousActivity       dcterms:identifier  ?wasInformedByValue .

                 }
              ]]>
         </value>
     </constructor-arg>
 </bean>

prov20150115.used

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="prov20150115.used" class="org.dataone.cn.indexer.annotation.SparqlField">
     <constructor-arg name="name" value="prov_used"/>
     <constructor-arg name="query">
         <value>
             <![CDATA[
             PREFIX rdf:     <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
             PREFIX rdfs:    <http://www.w3.org/2000/01/rdf-schema#>
             PREFIX owl:     <http://www.w3.org/2002/07/owl#>
             PREFIX prov:    <http://www.w3.org/ns/prov#>
             PREFIX provone: <http://purl.dataone.org/provone/2015/01/15/ontology#>
             PREFIX ore:     <http://www.openarchives.org/ore/terms/>
             PREFIX dcterms: <http://purl.org/dc/terms/>

             SELECT (str(?pidValue) as ?pid) (str(?usedValue) as ?prov_used)
             FROM <$GRAPH_NAME>
             WHERE {

                 ?activity       prov:used                 ?data .
                 ?activity       prov:qualifiedAssociation ?association .
                 ?association    prov:hadPlan              ?program .
                 ?program        dcterms:identifier        ?pidValue .
                 ?data           dcterms:identifier        ?usedValue .

                 }
              ]]>
         </value>
     </constructor-arg>
 </bean>

prov20150115.generated

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="prov20150115.generated" class="org.dataone.cn.indexer.annotation.SparqlField">
     <constructor-arg name="name" value="prov_generated"/>
     <constructor-arg name="query">
         <value>
             <![CDATA[
             PREFIX rdf:     <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
             PREFIX rdfs:    <http://www.w3.org/2000/01/rdf-schema#>
             PREFIX owl:     <http://www.w3.org/2002/07/owl#>
             PREFIX prov:    <http://www.w3.org/ns/prov#>
             PREFIX provone: <http://purl.dataone.org/provone/2015/01/15/ontology#>
             PREFIX ore:     <http://www.openarchives.org/ore/terms/>
             PREFIX dcterms: <http://purl.org/dc/terms/>

             SELECT (str(?pidValue) as ?pid) (str(?generatedValue) as ?prov_generated)
             FROM <$GRAPH_NAME>
             WHERE {

                 ?result         prov:wasGeneratedBy       ?activity .
                 ?activity       prov:qualifiedAssociation ?association .
                 ?association    prov:hadPlan              ?program .
                 ?result         dcterms:identifier        ?generatedValue .
                 ?program        dcterms:identifier        ?pidValue .

                 }
              ]]>
         </value>
     </constructor-arg>
 </bean>

prov20150115.generatedByProgram

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="prov20150115.generatedByProgram" class="org.dataone.cn.indexer.annotation.SparqlField">
     <constructor-arg name="name" value="prov_generatedByProgram"/>
     <constructor-arg name="query">
         <value>
             <![CDATA[
             PREFIX rdf:     <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
             PREFIX rdfs:    <http://www.w3.org/2000/01/rdf-schema#>
             PREFIX owl:     <http://www.w3.org/2002/07/owl#>
             PREFIX prov:    <http://www.w3.org/ns/prov#>
             PREFIX provone: <http://purl.dataone.org/provone/2015/01/15/ontology#>
             PREFIX ore:     <http://www.openarchives.org/ore/terms/>
             PREFIX dcterms: <http://purl.org/dc/terms/>

             SELECT (str(?pidValue) as ?pid) (str(?programPidValue) as ?prov_generatedByProgram)
             FROM <$GRAPH_NAME>
             WHERE {

                 ?derived_data prov:wasGeneratedBy ?execution .
                 ?execution prov:qualifiedAssociation ?association .
                 ?association prov:hadPlan ?program .
                 ?program dcterms:identifier ?programPidValue .
                 ?derived_data dcterms:identifier ?pidValue .
             }
             ]]>
         </value>
     </constructor-arg>
 </bean>

prov20150115.generatedByExecution

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="prov20150115.generatedByExecution" class="org.dataone.cn.indexer.annotation.SparqlField">
     <constructor-arg name="name" value="prov_generatedByExecution"/>
     <constructor-arg name="query">
         <value>
             <![CDATA[
             PREFIX rdf:     <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
             PREFIX rdfs:    <http://www.w3.org/2000/01/rdf-schema#>
             PREFIX owl:     <http://www.w3.org/2002/07/owl#>
             PREFIX prov:    <http://www.w3.org/ns/prov#>
             PREFIX provone: <http://purl.dataone.org/provone/2015/01/15/ontology#>
             PREFIX ore:     <http://www.openarchives.org/ore/terms/>
             PREFIX dcterms: <http://purl.org/dc/terms/>

             SELECT (str(?pidValue) as ?pid) (str(?executionPidValue) as ?prov_generatedByExecution)
             FROM <$GRAPH_NAME>
             WHERE {

                 ?derived_data prov:wasGeneratedBy ?execution .
                 ?execution dcterms:identifier ?executionPidValue .
                 ?derived_data dcterms:identifier ?pidValue .
             }
             ]]>
         </value>
     </constructor-arg>
 </bean>

prov20150115.generatedByUser

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="prov20150115.generatedByUser" class="org.dataone.cn.indexer.annotation.SparqlField">
     <constructor-arg name="name" value="prov_generatedByUser"/>
     <constructor-arg name="query">
         <value>
             <![CDATA[
             PREFIX rdf:     <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
             PREFIX rdfs:    <http://www.w3.org/2000/01/rdf-schema#>
             PREFIX owl:     <http://www.w3.org/2002/07/owl#>
             PREFIX prov:    <http://www.w3.org/ns/prov#>
             PREFIX provone: <http://purl.dataone.org/provone/2015/01/15/ontology#>
             PREFIX ore:     <http://www.openarchives.org/ore/terms/>
             PREFIX dcterms: <http://purl.org/dc/terms/>

             SELECT (str(?pidValue) as ?pid) ?prov_generatedByUser
             FROM <$GRAPH_NAME>
             WHERE {

                 ?derived_data prov:wasGeneratedBy ?execution .
                 ?execution prov:qualifiedAssociation ?association .
                 ?association prov:agent ?prov_generatedByUser .
                 ?derived_data dcterms:identifier ?pidValue .
             }
             ]]>
         </value>
     </constructor-arg>
 </bean>

prov20150115.usedByProgram

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="prov20150115.usedByProgram" class="org.dataone.cn.indexer.annotation.SparqlField">
     <constructor-arg name="name" value="prov_usedByProgram"/>
     <constructor-arg name="query">
         <value>
             <![CDATA[
             PREFIX rdf:     <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
             PREFIX rdfs:    <http://www.w3.org/2000/01/rdf-schema#>
             PREFIX owl:     <http://www.w3.org/2002/07/owl#>
             PREFIX prov:    <http://www.w3.org/ns/prov#>
             PREFIX provone: <http://purl.dataone.org/provone/2015/01/15/ontology#>
             PREFIX ore:     <http://www.openarchives.org/ore/terms/>
             PREFIX dcterms: <http://purl.org/dc/terms/>

             SELECT (str(?pidValue) as ?pid) (str(?programPidValue) as ?prov_usedByProgram)
             FROM <$GRAPH_NAME>
             WHERE {

                 ?execution prov:used ?primary_data .
                 ?execution prov:qualifiedAssociation ?association .
                 ?association prov:hadPlan ?program .
                 ?program dcterms:identifier ?programPidValue .
                 ?primary_data dcterms:identifier ?pidValue .
             }
             ]]>
         </value>
     </constructor-arg>
 </bean>

prov20150115.usedByExecution

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="prov20150115.usedByExecution" class="org.dataone.cn.indexer.annotation.SparqlField">
     <constructor-arg name="name" value="prov_usedByExecution"/>
     <constructor-arg name="query">
         <value>
             <![CDATA[
             PREFIX rdf:     <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
             PREFIX rdfs:    <http://www.w3.org/2000/01/rdf-schema#>
             PREFIX owl:     <http://www.w3.org/2002/07/owl#>
             PREFIX prov:    <http://www.w3.org/ns/prov#>
             PREFIX provone: <http://purl.dataone.org/provone/2015/01/15/ontology#>
             PREFIX ore:     <http://www.openarchives.org/ore/terms/>
             PREFIX dcterms: <http://purl.org/dc/terms/>

             SELECT (str(?pidValue) as ?pid) (str(?executionIdValue) as ?prov_usedByExecution)
             FROM <$GRAPH_NAME>
             WHERE {

                 ?execution prov:used ?primary_data .
                 ?primary_data dcterms:identifier ?pidValue .
                 ?execution dcterms:identifier ?executionIdValue .
             }
             ]]>
         </value>
     </constructor-arg>
 </bean>

prov20150115.usedByUser

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="prov20150115.usedByUser" class="org.dataone.cn.indexer.annotation.SparqlField">
     <constructor-arg name="name" value="prov_usedByUser"/>
     <constructor-arg name="query">
         <value>
             <![CDATA[
             PREFIX rdf:     <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
             PREFIX rdfs:    <http://www.w3.org/2000/01/rdf-schema#>
             PREFIX owl:     <http://www.w3.org/2002/07/owl#>
             PREFIX prov:    <http://www.w3.org/ns/prov#>
             PREFIX provone: <http://purl.dataone.org/provone/2015/01/15/ontology#>
             PREFIX ore:     <http://www.openarchives.org/ore/terms/>
             PREFIX dcterms: <http://purl.org/dc/terms/>

             SELECT (str(?pidValue) as ?pid) ?prov_usedByUser
             FROM <$GRAPH_NAME>
             WHERE {

                 ?execution prov:used ?primary_data .
                 ?execution prov:qualifiedAssociation ?association .
                 ?association prov:agent ?prov_usedByUser .
                 ?primary_data dcterms:identifier ?pidValue .
             }
             ]]>
         </value>
     </constructor-arg>
 </bean>

prov20150115.wasExecutedByExecution

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="prov20150115.wasExecutedByExecution" class="org.dataone.cn.indexer.annotation.SparqlField">
     <constructor-arg name="name" value="prov_wasExecutedByExecution"/>
     <constructor-arg name="query">
         <value>
             <![CDATA[
             PREFIX rdf:     <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
             PREFIX rdfs:    <http://www.w3.org/2000/01/rdf-schema#>
             PREFIX owl:     <http://www.w3.org/2002/07/owl#>
             PREFIX prov:    <http://www.w3.org/ns/prov#>
             PREFIX provone: <http://purl.dataone.org/provone/2015/01/15/ontology#>
             PREFIX ore:     <http://www.openarchives.org/ore/terms/>
             PREFIX dcterms: <http://purl.org/dc/terms/>

             SELECT (str(?pidValue) as ?pid) (str(?executionIdValue) as ?prov_wasExecutedByExecution)
             FROM <$GRAPH_NAME>
             WHERE {

                 ?execution prov:qualifiedAssociation ?association .
                 ?association prov:hadPlan ?program .
                 ?execution dcterms:identifier ?executionIdValue .
                 ?program dcterms:identifier ?pidValue .
             }
             ]]>
         </value>
     </constructor-arg>
 </bean>

prov20150115.wasExecutedByUser

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="prov20150115.wasExecutedByUser" class="org.dataone.cn.indexer.annotation.SparqlField">
     <constructor-arg name="name" value="prov_wasExecutedByUser"/>
     <constructor-arg name="query">
         <value>
             <![CDATA[
             PREFIX rdf:     <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
             PREFIX rdfs:    <http://www.w3.org/2000/01/rdf-schema#>
             PREFIX owl:     <http://www.w3.org/2002/07/owl#>
             PREFIX prov:    <http://www.w3.org/ns/prov#>
             PREFIX provone: <http://purl.dataone.org/provone/2015/01/15/ontology#>
             PREFIX ore:     <http://www.openarchives.org/ore/terms/>
             PREFIX dcterms: <http://purl.org/dc/terms/>

             SELECT (str(?pidValue) as ?pid) ?prov_wasExecutedByUser
             FROM <$GRAPH_NAME>
             WHERE {

                 ?execution prov:qualifiedAssociation ?association .
                 ?association prov:hadPlan ?program .
                 ?association prov:agent ?prov_wasExecutedByUser .
                 ?program dcterms:identifier ?pidValue .
             }
             ]]>
         </value>
     </constructor-arg>
 </bean>

prov20150115.instanceOfClass

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="prov20150115.instanceOfClass" class="org.dataone.cn.indexer.annotation.SparqlField">
     <constructor-arg name="name" value="prov_instanceOfClass"/>
     <constructor-arg name="query">
         <value>
             <![CDATA[
             PREFIX rdf:     <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
             PREFIX rdfs:    <http://www.w3.org/2000/01/rdf-schema#>
             PREFIX owl:     <http://www.w3.org/2002/07/owl#>
             PREFIX prov:    <http://www.w3.org/ns/prov#>
             PREFIX provone: <http://purl.dataone.org/provone/2015/01/15/ontology#>
             PREFIX ore:     <http://www.openarchives.org/ore/terms/>
             PREFIX dcterms: <http://purl.org/dc/terms/>

             SELECT (str(?pidValue) as ?pid) ?prov_instanceOfClass
             FROM <$GRAPH_NAME>
             WHERE {

                 ?subject rdf:type ?prov_instanceOfClass .
                 ?subject dcterms:identifier ?pidValue .
             }
             ]]>
         </value>
     </constructor-arg>
 </bean>

prov20150115.hasDerivations

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="prov20150115.hasDerivations" class="org.dataone.cn.indexer.annotation.SparqlField">
     <constructor-arg name="name" value="prov_hasDerivations"/>
     <constructor-arg name="query">
         <value>
             <![CDATA[
             PREFIX rdf:     <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
             PREFIX rdfs:    <http://www.w3.org/2000/01/rdf-schema#>
             PREFIX owl:     <http://www.w3.org/2002/07/owl#>
             PREFIX prov:    <http://www.w3.org/ns/prov#>
             PREFIX provone: <http://purl.dataone.org/provone/2015/01/15/ontology#>
             PREFIX ore:     <http://www.openarchives.org/ore/terms/>
             PREFIX dcterms: <http://purl.org/dc/terms/>
             PREFIX cito:    <http://purl.org/spar/cito/>

             SELECT (str(?pidValue) as ?pid) (str(?derivedDataPidValue) as ?prov_hasDerivations)
             FROM <$GRAPH_NAME>
             WHERE {
                 ?derived_data prov:wasDerivedFrom ?source_data .
                 ?source_data dcterms:identifier ?pidValue .
                 ?derived_data dcterms:identifier ?derivedDataPidValue .
             }
             ]]>
         </value>
     </constructor-arg>
 </bean>

Dublin Core, Qualified

Describes parser configuration for: qualifiedDublicCoreSubprocessor

Format IDs Processed

This parser processes the following DataONE format IDs:

  • Unknown
    formatId: http://dublincore.org/schemas/xmls/qdc/2008/02/11/qualifieddc.xsd

A full list of DataONE format IDs can be found at https://cn.dataone.org/cn/v2/formats/

Fields

The following fields in the solr index are populated from values retrieved from this type of metadata document. Note that these are in addition to the information extracted from System Metadata Parser.

Solr Field Multi Dedupe Source
Index.abstract False False
//*[local-name() = 'abstract'][1]/text()
Processor: SolrField
Configuration: dc.abstract
Index.author False False
//*[local-name() = 'creator'][1]/text()
Processor: SolrField
Configuration: dc.author
Index.authorSurName False False
//*[local-name() = 'creator'][1]/text()
Processor: SolrField
Configuration: dc.authorSurName
Index.authorSurNameSort False False
//*[local-name() = 'creator'][1]/text()
Processor: SolrField
Configuration: dc.authorSurNameSort
Index.contactOrganization True True
//*[local-name() = 'creator']/text()
Processor: SolrField
Configuration: dc.contactOrganization
Index.investigator True True
//*[local-name() = 'creator']/text()
Processor: SolrField
Configuration: dc.investigator
Index.origin True True
//*[local-name() = 'creator']/text()
Processor: SolrField
Configuration: dc.origin
Index.pubDate False False
//*[local-name() = 'dateSubmitted']/text()
Processor: SolrField
Configuration: dc.pubDate
Index.title False False
(//*[local-name() = 'title'][1]/text())[1]
Processor: SolrField
Configuration: dc.title
Index.keywords True False
//*[local-name() = 'subject']/text()
Processor: SolrField
Configuration: dc.keywords
Index.beginDate False False
//*[local-name() = 'temporal'][not(@xsi:type=
'dcterms:Period') and not(@xsi:type='dc:Period')
and not(@xsi:type='Period')]/text()
Processor: SolrField
Configuration: dc.beginDate
Index.endDate False False
//*[local-name() = 'temporal'][not(@xsi:type=
'dcterms:Period') and not(@xsi:type='dc:Period')
and not(@xsi:type='Period')]/text()
Processor: SolrField
Configuration: dc.endDate
Index.site True True
//*[local-name() = 'spatial'][not(@xsi:type = 'dcterms:Box')
 and not(@xsi:type = 'dc:Box') and not(@xsi:type =
'Box')]/text()
Processor: SolrField
Configuration: dc.site
Index.northBoundCoord, Index.southBoundCoord, Index.eastBoundCoord, Index.westBoundCoord False False
//*[local-name() = 'spatial'][@xsi:type='dcterms:Box' or
@xsi:type='dc:Box' or @xsi:type='Box'][1]/text()[1]
Index.geohash_1, Index.geohash_2, Index.geohash_3, Index.geohash_4, Index.geohash_5, Index.geohash_6, Index.geohash_7, Index.geohash_8, Index.geohash_9 False False
//*[local-name() = 'spatial'][@xsi:type='dcterms:Box' or
@xsi:type='dc:Box' or @xsi:type='Box'][1]/text()[1]
Index.fileID    
Processor: ResolveSolrField
Configuration: dc.fileID
Notes: SolrField which configures the resolve url for the document being processed.
Converter:
Index.text False False
//*/text()
Configuration: dc.fullText

Bean Configurations

dc.abstract

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.abstract" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="abstract"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'abstract'][1]/text()"/>
     </bean>

dc.author

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.author" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="author"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'creator'][1]/text()"/>
     </bean>

dc.authorSurName

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.authorSurName" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurName"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'creator'][1]/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

dc.authorSurNameSort

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.authorSurNameSort" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="authorSurNameSort"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'creator'][1]/text()"/>
             <property name="multivalue" value="false"/>
     </bean>

dc.contactOrganization

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.contactOrganization" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="contactOrganization"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'creator']/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

dc.investigator

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.investigator" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="investigator"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'creator']/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

dc.origin

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.origin" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="origin"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'creator']/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

dc.pubDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.pubDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="pubDate"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'dateSubmitted']/text()"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

dc.title

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.title" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="title"/>
             <constructor-arg name="xpath" value="(//*[local-name() = 'title'][1]/text())[1]"/>
     </bean>

dc.keywords

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.keywords" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="keywords"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'subject']/text()"/>
             <property name="multivalue" value="true"/>
     </bean>

dc.beginDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.beginDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="beginDate"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'temporal'][not(@xsi:type='dcterms:Period') and not(@xsi:type='dc:Period') and not(@xsi:type='Period')]/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

dc.endDate

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.endDate" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="endDate"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'temporal'][not(@xsi:type='dcterms:Period') and not(@xsi:type='dc:Period') and not(@xsi:type='Period')]/text()"/>
             <property name="multivalue" value="false"/>
             <property name="converter" ref="dateConverter"/>
     </bean>

dc.site

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.site" class="org.dataone.cn.indexer.parser.SolrField">
             <constructor-arg name="name" value="site"/>
             <constructor-arg name="xpath" value="//*[local-name() = 'spatial'][not(@xsi:type = 'dcterms:Box') and not(@xsi:type = 'dc:Box') and not(@xsi:type = 'Box')]/text()"/>
             <property name="multivalue" value="true"/>
             <property name="dedupe" value="true"/>
     </bean>

dc.boxSpatialBoundCoordinates

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.boxSpatialBoundCoordinates" class="org.dataone.cn.indexer.parser.DublinCoreSpatialBoxBoundingCoordinatesSolrField">
             <constructor-arg name="xpath" value="//*[local-name() = 'spatial'][@xsi:type='dcterms:Box' or @xsi:type='dc:Box' or @xsi:type='Box'][1]/text()[1]"/>
     </bean>

dc.boxSpatialGeohash

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.boxSpatialGeohash" class="org.dataone.cn.indexer.parser.DublinCoreSpatialBoxGeohashSolrField">
             <constructor-arg name="xpath" value="//*[local-name() = 'spatial'][@xsi:type='dcterms:Box' or @xsi:type='dc:Box' or @xsi:type='Box'][1]/text()[1]"/>
     </bean>

dc.fileID

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.fileID" class="org.dataone.cn.indexer.parser.ResolveSolrField">
             <constructor-arg name="name" value="fileID"/>
     </bean>

dc.fullText

<bean xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="dc.fullText" class="org.dataone.cn.indexer.parser.FullTextSolrField">
             <constructor-arg name="name" value="text"/>
             <constructor-arg name="xpath" value="//*/text()"/>
             <property name="combineNodes" value="true"/>
     </bean>

OAI-ORE processor

Describes parser configuration for: resourceMapSubprocessor

Format IDs Processed

This parser processes the following DataONE format IDs:

  • Object Reuse and Exchange Vocabulary
    formatId: http://www.openarchives.org/ore/terms

A full list of DataONE format IDs can be found at https://cn.dataone.org/cn/v2/formats/

Fields

The following fields in the solr index are populated from values retrieved from this type of metadata document. Note that these are in addition to the information extracted from System Metadata Parser.

Bean Configurations

Indices and tables

Source for these documents and the generator is held in GitHub.