2017-01-31 12 views
3

DSpace 인스턴스의 OAI-PMH를 통해 추가 메타 데이터를 노출하고 싶습니다. 새로운 메타 데이터 스키마 "lrmi"를 추가했으며 일부 메타 데이터 필드도 추가했습니다. 제출 양식을 통해 필자의 lrmi 스키마에서 필드를 사용할 수있었습니다. 그러나 DSpace OAI-PMH 인터페이스에서 이러한 필드를 노출 할 수없는 것처럼 보입니다.이 필드는 dc 스키마의 필드 만 노출하기 때문입니다. OAI-PMH 인터페이스에서 새로운 스키마의 사용자 정의 필드를 노출하려면 어떻게해야합니까? "IEEE-LOM"스키마에서도 동일한 문제가 발생합니다. 나는 질문이이 포럼에 대해 충분한 관련성을 가지고 있다고 생각하지만 이것이 왜 나의 이전 포스트 중 하나에서 닫혔는지 확신 할 수 없다.DSpace OAI-PMH 메타 데이터 내보내기 수집

+0

질문을 다시 게시하게되어 기쁩니다. DSpace 관점에서 이것은 적절한 질문입니다. – terrywb

+0

OAI 저장소를 살펴보고 맞춤 메타 데이터 스키마가 있는지 확인했습니다. 이 필드에 액세스하려고 시도하는 사용자 정의 XSLT 횡단 보도를 만들었습니까? – terrywb

+0

나보다이 주제에 대해 더 잘 알고있는 누군가의 답변을 기다리는 동안, https://github.com/DSpace/DSpace/tree/master/dspace/config 파일을 살펴 보는 것이 좋습니다./crosswalks/oai/metadataFormats. 내가 아는 한, 각 가능한 접두사에 대해 OAI 출력을 정의하는 XLS 변환을 포함합니다. –

답변

1

나는 당신의 질문에 대해 궁금해서 몇 가지 더 연구하고 테스트했다. 내가 이전에 언급 한 편집 those files이 실제로 당신이 성취하려는 것을 할 것이라는 것을 알았습니다.

는 직류 스키마 당신은 단순히 XSL에 추가해야

에서 사용자 정의 필드를 노출 할 경우

, 이미 존재하는 것과 유사한 블록. 예 : 당신은 직류로 custom.test 필드의 내용을 노출 할 : 설명, 당신은 추가 할 수 있습니다

<xsl:for-each select="doc:metadata/doc:element[@name='custom']/doc:element[@name='test']/doc:element/doc:field[@name='value']"> 
    <dc:description><xsl:value-of select="." /></dc:description> 
</xsl:for-each> 

당신이

당신은 정확히 동일한 할 수있는 사용자 정의 스키마에서 사용자 정의 필드를 노출 할 경우 dc : description 태그를 사용자 정의 schema : 엘리먼트로 대체하면됩니다. 당신은 xmlns에서 주요 <oai_dc:dc> 태그가 사용자 정의 스키마를 선언해야합니다 : 다음

<oai_dc:dc xmlns:oai_dc="http://www.openarchives.org/OAI/2.0/oai_dc/" 
    xmlns:dc="http://purl.org/dc/elements/1.1/" 
    xmlns:custom="SOME_URL" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/oai_dc/ http://www.openarchives.org/OAI/2.0/oai_dc.xsd"> 

<xsl:for-each select="doc:metadata/doc:element[@name='custom']/doc:element[@name='test']/doc:element/doc:field[@name='value']"> 
       <custom:test><xsl:value-of select="." /></custom:test> 
     </xsl:for-each> 
</oai_dc:dc> 

참고 :이 기술적 인 관점에서 작동하지만, 그것은 그러나 충돌 수 있습니다 기능적 권장 사항/비즈니스 모범 사례가 포함되어 있습니다.