xml एक्सएसएलटी ने नेमस्पेस के साथ एक्सएमएल ट्रांसफॉर्म किया




xslt namespaces (2)

मेरे पास कुछ एक्सएमएल है जो मैं एक्सएसएलटी का उपयोग कर एचटीएमएल में बदलने की कोशिश कर रहा हूं, लेकिन मैं इसे अपने जीवन के लिए काम नहीं कर सकता। क्या कोई बता सकता है कि मुझसे क्या गलत हो रहा है?

एक्सएमएल

<ArrayOfBrokerage xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.test.com/">
    <Brokerage>
        <BrokerageID>91</BrokerageID>
        <LastYodleeUpdate>0001-01-01T00:00:00</LastYodleeUpdate>
        <Name>E*TRADE</Name>
        <Validation i:nil="true" />
        <Username>PersonalTradingTesting</Username>
    </Brokerage>
</ArrayOfBrokerage>

XSLT

<xsl:stylesheet version="1.0" xmlns="http://www.test.com/" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xslFormatting="urn:xslFormatting">

    <xsl:output method="html" indent="no"/>

    <xsl:template match="/ArrayOfBrokerage">
        <xsl:for-each select="Brokerage">
            Test
       </xsl:for-each>
    </xsl:template>

</xsl:stylesheet>

आप परिवर्तन कैसे निष्पादित करते हैं? हो सकता है कि आप XSLT स्टाइलशीट को XML दस्तावेज़ से लिंक करना भूल गए:

<?xml-stylesheet type="text/xsl" href="cdcatalog.xsl"?>

एक्सएमएल दस्तावेज़ की शुरुआत में। यहां अधिक स्पष्टीकरण


आपके द्वारा परिवर्तित किए जा रहे तत्वों के लिए आपको अपने xslt में एक नामस्थान उपसर्ग प्रदान करने की आवश्यकता है। किसी कारण से (कम से कम जावा जेएक्सपी पार्सर में) आप बस एक डिफ़ॉल्ट नेमस्पेस घोषित नहीं कर सकते हैं। यह मेरे लिए काम किया:

<xsl:stylesheet version="1.0" xmlns:t="http://www.test.com/" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xslFormatting="urn:xslFormatting">

    <xsl:output method="html" indent="no"/>

    <xsl:template match="/t:ArrayOfBrokerage">
        <xsl:for-each select="t:Brokerage">
            Test
        </xsl:for-each>
    </xsl:template>

</xsl:stylesheet>

यह आपके एक्सएमएल दस्तावेज़ में नामित सबकुछ पकड़ लेगा।







datacontractserializer