导出记录

GeoNetwork有三种不同的导出选项来导出元数据。它们对搜索结果中选定的元数据集进行操作。因此,可以从“actions on selection”菜单访问它们,如下例所示:

../../_images/export.png

导出为ZIP存档

当选定的一组元数据记录导出为ZIP存档时,每个元数据记录都作为包含元数据、随元数据记录上载的任何数据和缩略图的目录插入到ZIP存档中。这种类型的ZIP存档是MEF(元数据交换格式)2.0版。您可以在GeoNetwork开发人员手册中找到更多有关MEF V2的详细信息。

导出为CSV文件

当选定的元数据记录集导出为CSV/TXT文件时,将对每个元数据记录执行以下过程:

  • 通过应用元数据模式中的简要模板,可以生成每个选定元数据记录中某些元素的简要摘要。不同可用架构的主文件夹是 GEONETWORK_DATA_DIR/config/schema_plugins/ 。特别是,对于ISO 19115-3.2018,它位于: GEONETWORK_DATA_DIR/config/schema_plugins/iso19115-3.2018/layout/tpl-csv.xsl

  • 提取所有元数据记录的简要摘要元素所共有的元素(因为它们根据元数据模式可能有所不同)

  • 创建一个以逗号分隔的元素名的标题记录

  • 每个元素的内容以逗号分隔的形式排列。如果brief元素中有多个子元素(例如,对于geoBox),则每个子元素的内容都使用“35;###”分隔。

CSV格式的ISO元数据记录的示例如下所示:

"schema","uuid","id","title","metadatacreationdate","geoBox"

"iso19115-3.2018","27b5f8b8-053a-11ea-aa46-02000a08f492","1312","S2A_MSIL1C_20161218T102432_N0204_R065_T32TMS_20161218T102606","2019-11-12T10:49:52,"7.691141905380134###9.128266945124432###45.958258688896564###46.95363733424615"

通过在元数据模式的表示XSLT中创建特殊模板,可以覆盖元数据元素的简要摘要。作为如何做到这一点的一个例子,我们将重写iso19115-3.2018模式的摘要,并用其他可能有用的信息替换它。

对于iso19115-3.2018,有两个文件需要修改:

  1. geonetwork/WEB-INF/data/config/schema_插件/iso19115-3.2018/layout/tpl-csv.xsl文件

  2. 地理网络/xslt/services/csv/csv-搜索.xsl

例如,要导出以下元素:

"uuid","title","cloud_coverage_percentage","category","date-creation"

在第一个文件中,必须按以下步骤进行:

  • 注释元素 id, title, abstract 除了

<uuid>
      <xsl:value-of select="gn:info/uuid"/>
</uuid>
  • 要在抽象元素和类别元素之间添加类似的行,请执行以下操作:

<myfield>myfieldvalue</myfield>

例如:

<title>
   <xsl:copy-of select="mdb:identificationInfo/*/mri:citation/*/cit:title"/>
</title>
<cloud_coverage_percentage>
   <xsl:copy-of select="mdb:contentInfo/mrc:MD_ImageDescription/mrc:cloudCoverPercentage/gco:Real"/>
</cloud_coverage_percentage>
<category>
  <xsl:value-of select="mdb:metadataScope/*/mdb:resourceScope/*/@codeListValue"/>
</category>

关于云覆盖率,特别是,如果缺少,请记住添加命名空间:

xmlns:mrc="http://standards.iso.org/iso/19115/-3/mrc/2.0"

如果对其他信息不感兴趣,请评论所有其他行,除了:

<xsl:copy-of select="gn:info"/>

因为它用于按架构对结果排序。

关于第二个文件, csv-search.xsl ,以避免自动打印3列:

"schema","uuid","id",

您必须注释以下行:

<xsl:text>"schema"</xsl:text>
<xsl:value-of select="$sep"/>
<xsl:text>"uuid"</xsl:text>
<xsl:value-of select="$sep"/>
<xsl:text>"id"</xsl:text>
<xsl:value-of select="$sep"/>

<xsl:value-of select="concat('&quot;', $metadata/geonet:info/schema, '&quot;', $sep,
'&quot;', $metadata/geonet:info/uuid, '&quot;', $sep,
'&quot;', $metadata/geonet:info/id, '&quot;', $sep)"/>

这些更改将创建所需的输出:

"uuid","title","cloud_coverage_percentage","category","date-creation"
"c94da70e-066e-11ea-aa22-02000a08f492","S2A_MSIL1C_20180320T101021_N0206_R022_T33TUM_20180320T122057","36.0368","dataset","2018-03-20T12:20:57",