请参阅下面Gleif Xml文件的摘录:
<?xml version='1.0' encoding='UTF-8'?>
<lei:LEIData xmlns:lei="http://www.leiroc.org/data/schema/leidata/2014" xmlns:gleif="http://www.gleif.org/concatenated-file/header-extension/1.1">
<lei:LEIRecords>
<lei:LEIRecord>
<lei:LEI>01J4SO3XTWZF4PP38209</lei:LEI>
<lei:Entity>
<lei:LegalName>Trustmark National Bank</lei:LegalName>
<lei:LegalAddress>
<lei:Line1>248 East Capitol Street</lei:Line1>
<lei:City>Jackson</lei:City>
<lei:Region>US-MS</lei:Region>
<lei:Country>US</lei:Country>
<lei:PostalCode>39201-2503</lei:PostalCode>
</lei:LegalAddress>
<lei:HeadquartersAddress>
<lei:Line1>248 East Capitol Street</lei:Line1>
<lei:City>Jackson</lei:City>
<lei:Region>US-MS</lei:Region>
<lei:Country>US</lei:Country>
<lei:PostalCode>39201-2503</lei:PostalCode>
</lei:HeadquartersAddress>
<lei:BusinessRegisterEntityID register="RA888888">4988</lei:BusinessRegisterEntityID>
<lei:LegalJurisdiction>US-MS</lei:LegalJurisdiction>
<lei:LegalForm>OTHER</lei:LegalForm>
<lei:EntityStatus>ACTIVE</lei:EntityStatus>
</lei:Entity>
<lei:Registration>
<lei:InitialRegistrationDate>2012-06-06T15:51:37.855Z</lei:InitialRegistrationDate>
<lei:LastUpdateDate>2017-12-02T10:41:33.347Z</lei:LastUpdateDate>
<lei:RegistrationStatus>ISSUED</lei:RegistrationStatus>
<lei:NextRenewalDate>2018-12-02T10:41:33.348Z</lei:NextRenewalDate>
<lei:ManagingLOU>5493001KJTIIGC8Y1R12</lei:ManagingLOU>
<lei:ValidationSources>FULLY_CORROBORATED</lei:ValidationSources>
</lei:Registration>
</lei:LEIRecord>
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml" indent="yes"/>
<xsl:template match="/">
<lei_LEIData>
<lei_LEIRecords>
<xsl:apply-templates select="lei_LEIData/lei_LEIRecords/lei_LEIRecord"/>
</lei_LEIRecords>
</lei_LEIData>
</xsl:template>
<xsl:template match="lei_LEIData/lei_LEIRecords/lei_LEIRecord">
<lei_LEIRecord>
<xsl:for-each select="
lei_LEI|lei_Entity/lei_LegalName|lei_Entity/lei_BusinessRegisterEntityID|
lei_Entity/lei_LegalJurisdiction|lei_Entity/lei_LegalForm|
lei_LegalForm/lei_EntityStatus|
lei_Registration/lei_InitialRegistrationDate|
lei_Registration/lei_LastUpdateDate|
lei_Registration/lei_RegistrationStatus|
lei_Registration/lei_NextRenewalDate|
lei_Registration/lei_ManagingLOU|
lei_Registration/lei_ValidationSources
">
<xsl:attribute name="{name()}">
<xsl:value-of select="text()"/>
</xsl:attribute>
</xsl:for-each>
<xsl:for-each select="
lei_Entity/lei_BusinessRegisterEntityID/@register
">
<xsl:attribute name="register">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:for-each>
<xsl:for-each select="
lei_Entity/lei_LegalAddress/lei_Line1|
lei_Entity/lei_LegalAddress/lei_City|
lei_Entity/lei_LegalAddress/lei_Country|
lei_Entity/lei_LegalAddress/lei_PostalCode
">
<xsl:attribute name="legaladdress_{name()}">
<xsl:value-of select="text()"/>
</xsl:attribute>
</xsl:for-each>
<xsl:for-each select="
lei_Entity/lei_HeadquartersAddress/lei_Line1|
lei_Entity/lei_HeadquartersAddress/lei_City|
lei_Entity/lei_HeadquartersAddress/lei_Country|
lei_Entity/lei_HeadquartersAddress/lei_PostalCode
">
<xsl:attribute name="headquarter_{name()}">
<xsl:value-of select="text()"/>
</xsl:attribute>
</xsl:for-each>
</lei_LEIRecord>
</xsl:template>
</xsl:stylesheet>
嗨......:)
我有上面的Xml文件和下面的XSLT文件我不明白为什么当我使用xslt文件进行转换时,它不会产生任何输出。
提前感谢您的回答和帮助......
答案 0 :(得分:0)
我在您的XSLT文件上执行了字符串替换,并将所有lei_
替换为lei:
,以将它们用作前缀。然后我添加了命名空间
xmlns:lei="http://www.leiroc.org/data/schema/leidata/2014"
<{1>}元素上的。然后我用xsl:stylesheet
表达式替换了name()
XPath表达式。这就是我为使其发挥作用所做的一切。
这是固定的XSLT:
local-name()