上传到Alfresco

时间:2018-11-20 12:38:10

标签: pdf metadata alfresco

我无法在Alfresco 5.2社区中设置自定义元数据提取器。我已经读过documentation。这是我到目前为止所做的:

首先,我创建了一个新模型,该模型包含一个具有所需字段的自定义类型(例如:DOI,volume,issn),并在该文件夹中创建了一条规则,以便添加到该文件夹​​的任何文档都将专门用于该类型。

然后,我需要创建一个新的映射,但是为此,我首先需要根据Alfresco知道属性的名称。为此,我修改了log4j.properties,以使log4j.logger.org.alfresco.repo.content.metadata.AbstractMappingMetadataExtracter = debug。这样,在上传包含所需元数据的文档后,我可以检查应在映射中使用的属性的名称。

这是我发现问题的地方。在Alfresco日志文件中,当我上载这些文档之一时,并非PDF中所有可用的元数据都显示为原始属性。例如:

PDF文档具有以下XMP元数据(这只是摘录,它具有更多字段):

<prism:url>https://doi.org/10.1007/s11192-018-2820-9</prism:url>
<prism:doi>10.1007/s11192-018-2820-9</prism:doi>
<prism:issn>1588-2861</prism:issn>
<prism:volume>116</prism:volume>
<prism:number>3</prism:number>
<prism:startingPage>2175</prism:startingPage>
<prism:endingPage>2188</prism:endingPage>
<prism:aggregationType>journal</prism:aggregationType>
<prism:publicationName>Scientometrics</prism:publicationName>
<prism:copyright>Akadémiai Kiadó, Budapest, Hungary</prism:copyright>
<pdfx:CrossmarkMajorVersionDate>2010-04-23</pdfx:CrossmarkMajorVersionDate>
<pdfx:CrossmarkDomainExclusive>true</pdfx:CrossmarkDomainExclusive>
<pdfx:doi>10.1007/s11192-018-2820-9</pdfx:doi>
<pdfx:robots>noindex</pdfx:robots>
<pdfx:CrossMarkDomains>

但是,当我将其上传到Alfresco时,日志文件会显示这些原始属性

  

原始属性:{date = 2018-08-13T08:56:21Z,pdf:PDFVersion = 1.6,   xmp:CreatorTool = Springer,关键字=高引用文档,Google   学者,科学网络,范围,覆盖面,学术期刊,经典   论文,主题=科学计量学,   https://doi.org/10.1007/s11192-018-2820-9,pdfa:PDFVersion = A-2b,   dc:creator = Enrique Orduna-Malea,Emilio DelgadoLópez-Cózar,Alberto   Martín-Martín,描述=科学计量学,   https://doi.org/10.1007/s11192-018-2820-9,   dcterms:created = 2018-06-26T11:18:02Z,   Last-Modified = 2018-08-13T08:56:21Z,   dcterms:modified = 2018-08-13T08:56:21Z,dc:format = application / pdf;   版本= 1.6,应用程序/ pdf;版本=“ A-2b”,标题=覆盖范围   Google学术搜索,Web of Science和Scopus中的高引用文献:   多学科比较,Last-Save-Date = 2018-08-13T08:56:21Z,   CrossMarkDomains 1 = springer.com,meta:save-date = 2018-08-13T08:56:21Z,   dc:title = Web of Google Scholar中高引用文档的覆盖范围   科学与Scopus:多学科比较,   pdf:encrypted = false,Modify = 2018-08-13T08:56:21Z,   cp:subject =科学计量学,https://doi.org/10.1007/s11192-018-2820-9,   机械手= noindex,内容类型=应用程序/ pdf,   TIKA_PARSER_PARSE_SHAPES = false,创建者= Enrique Orduna-Malea,Emilio   DelgadoLópez-Cózar,AlbertoMartín-Martín,pdfaid:conformance = B,   comments = null,meta:author = Enrique Orduna-Malea,Emilio Delgado   洛佩斯·库萨尔(López-Cózar),阿尔贝托·马丁·马丁(AlbertoMartín-Martín),   dc:subject = [Ljava.lang.String; @ 91aba4,   meta:creation-date = 2018-06-26T11:18:02Z,created = 2018-06-26T11:18:02Z,   作者= Enrique Orduna-Malea,Emilio DelgadoLópez-Cózar,Alberto   马丁·马丁,xmpTPg:NPages = 14,Creation-Date = 2018-06-26T11:18:02Z,   pdfaid:part = 2,CrossMarkDomains [2] = springerlink.com,   meta:keyword =高引用文档,Google学术搜索,Web of   科学,范围,覆盖面,学术期刊,经典论文,   作者= Enrique Orduna-Malea,Emilio DelgadoLópez-Cózar,Alberto   马丁·马丁(Martín-Martín),生产者= Acrobat Distiller 10.1.8(Windows),   CrossmarkDomainExclusive = true,CrossmarkMajorVersionDate = 2010-04-23,   doi = 10.1007 / s11192-018-2820-9}

如您所见,导入了与pdfx名称空间相关的属性,但缺少了与棱柱模型相关的属性。

因此,我的主要问题是,为什么Alfresco无法将PDF中的所有可用元数据都检测为原始属性?

尽管未检测到某些属性,但我还是尝试配置其余的自定义元数据提取器。当然,这意味着因为未检测到我需要的某些属性,所以我不得不猜测它们的名称。

我配置了以下自定义映射:

<bean id="extracter.PDFBox" class="org.alfresco.repo.content.metadata.PdfBoxMetadataExtracter"
parent="baseMetadataExtracter">
<property name="documentSelector" ref="pdfBoxEmbededDocumentSelector" />
<property name="inheritDefaultMapping">
<value>true</value>
</property>
<property name="mappingProperties">
<props>
<prop key="namespace.prefix.prism">http://prismstandard.org/namespaces/basic/2.0</prop>
<prop key="doi">prism:doi</prop>
<prop key="prism:volume">prism:volume</prop>
<prop key="issn">prism:issn</prop>
</props>
</property>
</bean>

设置完成后,我重新启动了Alfresco,并尝试上传带有此元数据的文档。

由于原始属性中提供了“ doi”属性(它是pdfx命名空间的字段之一),因此DOI已成功导入。但是,正如我担心的那样,ISSN和卷字段没有填充。

关于Alfresco的PDF提取器为何未检测到PDF中的某些元数据的任何想法吗?

非常感谢您的提前帮助。

0 个答案:

没有答案