<xsl:if test="string(oai:record/oai:metadata/easydb:objects/easydb:objekttyp/easydb:_nested__objekttyp__contributor/easydb:objekttyp__contributor/easydb:person/easydb:person_urheber/easydb:custom[@name='orcid']/easydb:string[@name='url'])!=''">
<xsl:if test="string(oai:record/oai:metadata/easydb:objects/easydb:objekttyp/easydb:_nested__objekttyp__contributor/easydb:objekttyp__contributor/easydb:person/easydb:person_urheber/easydb:custom[@name='gnd']/easydb:string[@name='conceptURI'])!=''">
<xsl:for-each select="/oai:record/oai:metadata/easydb:objects/easydb:objekttyp/easydb:_nested__objekttyp__contributor/easydb:objekttyp__contributor">
<dc:contributor>
<xsl:value-of select="concat(easydb:person/easydb:person_urheber/easydb:name[@type='text_oneline'] ,', ', 'ORCID: ', easydb:person/easydb:person_urheber/easydb:custom[@name='orcid']/easydb:string[@name='url'] ,', ', 'GND: ', easydb:person/easydb:person_urheber/easydb:custom[@name='gnd']/easydb:string[@name='conceptURI'] ,', ','(',easydb:rolle/easydb:person_rolle/easydb:name[@type='text_l10n_oneline']/easydb:de-DE,')')" />
</dc:contributor>
</xsl:for-each>
</xsl:if>
</xsl:if>
如果两个字符串都存在,那么我想做一个条件,然后连接以下部分。检查两个节点是否同时存在就足够了。问题是两个如果测试条件不起作用。是否应将它们合并为一种条件?
应检查是否存在<easydb:string name="url">orcid.org/0000-8628</easydb:string>
我的原始XML:
<record xmlns="http://www.openarchives.org/OAI/2.0/" xmlns:easydb="https://schema.de/EAB/1.0/objects/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<header>
<identifier>oai:b5-45c0-8ad4-8f5c3964bcdb</identifier>
<datestamp>2018-11-14T09:50:51Z</datestamp>
<setSpec>objecttype_pool:objekttyp:pool:2</setSpec>
<setSpec>pool:1</setSpec>
<setSpec>tagfilter:cc</setSpec>
<setSpec>objecttype:objekttyp</setSpec>
</header>
<metadata>
<easydb:objects base-schema="207" instance="lar" timestamp="2019-03-01T18:24:30+01:00" user-schema="227" uuid="334655-8c3d-b71241bbc99b">
<easydb:objekttyp>
<easydb:person>
<easydb:person_urheber>
<easydb:_version>2</easydb:_version>
<easydb:_id>2</easydb:_id>
<easydb:_system_object_id>413</easydb:_system_object_id>
<easydb:_standard>
<easydb:de-DE>Man</easydb:de-DE>
<easydb:en-US>asian</easydb:en-US>
<easydb:und>Minian</easydb:und>
</easydb:_standard>
<easydb:name type="text_oneline">Man</easydb:name>
<easydb:custom name="orcid" type="custom:base.custom-data-type-link.link">
<easydb:string name="url">orcid.org/0000-8628</easydb:string>
<easydb:string name="tld">org</easydb:string>
<easydb:string name="hostname">orcid.org</easydb:string>
<easydb:object name="_fulltext">
<easydb:string name="string">orcid.org/00628</easydb:string>
<easydb:object name="l10ntext">
<easydb:string name="de_DE"/>
<easydb:string name="en_US"/>
</easydb:object>
</easydb:object>
<easydb:object name="text">
<easydb:string name="de_DE"/>
<easydb:string name="en_US"/>
</easydb:object>
</easydb:custom>
</easydb:person_urheber>
</easydb:person>
<easydb:rolle>
<easydb:person_rolle>
<easydb:_version>4</easydb:_version>
<easydb:_id>14</easydb:_id>
<easydb:_system_object_id>579</easydb:_system_object_id>
<easydb:_standard>
<easydb:de-DE>ProjectBeteiligte</easydb:de-DE>
<easydb:en-US>ProjectMember</easydb:en-US>
<easydb:und>ProjectMember</easydb:und>
</easydb:_standard>
<easydb:name type="text_l10n_oneline">
<easydb:de-DE>ProjectBeteiligte</easydb:de-DE>
<easydb:en-US>ProjectMember</easydb:en-US>
<easydb:und>ProjectMember</easydb:und>
</easydb:name>
</easydb:person_rolle>
</easydb:rolle>
</easydb:objekttyp__contributor>
</easydb:_nested__objekttyp__contributor>
</easydb:objects>
</metadata>
</record>