xslt - Show items by category xml -


मेरे पास इस तरह के एक XML आउटपुट है:

  & lt; डेटा & gt; & LT; मद-प्रकार & gt; & Lt; एंट्री आईडी = "1" आइटम = "5" & gt; & LT; श्रेणी & gt; जमे हुए & lt; / श्रेणी & gt; & Lt; / प्रविष्टि & gt; & Lt; एंट्री आईडी = "2" आइटम = "4" & gt; & LT; श्रेणी & gt; नाश्ता & lt; / श्रेणी & gt; & Lt; / प्रविष्टि & gt; & Lt; / मद-प्रकार & gt; & LT; आइटम & gt; & Lt; एंट्री आईडी = "28" & gt; & LT; आइटम नंबर & gt; 1115 & lt; / आइटम नंबर & gt; & Lt; नाम & gt; मैरियन बेरीज, IQF & lt; / name & gt; & LT; क्षेत्र & gt; & Lt; आइटम आईडी = "1" & gt; किराने का सामान - फ्रोजन & lt; / item & gt; & Lt; / क्षेत्र & gt; & Lt; / प्रविष्टि & gt; & Lt; एंट्री आईडी = "2 9" & gt; & LT; आइटम नंबर & gt; 1117 & lt; / आइटम नंबर & gt; & Lt; नाम & gt; पीच कप & lt; / name & gt; & LT; क्षेत्र & gt; & Lt; आइटम आईडी = "1" & gt; किराने का सामान - फ्रोजन & lt; / item & gt; & Lt; / क्षेत्र & gt; & Lt; / प्रविष्टि & gt; & Lt; एंट्री आईडी = "35" & gt; & LT; आइटम नंबर & gt; 1570 & lt; / आइटम नंबर & gt; & Lt; name & gt; सॉसेज पैटी & lt; / name & gt; & LT; क्षेत्र & gt; & Lt; आइटम आईडी = "2" & gt; किराने का सामान - नाश्ता & lt; / आइटम & gt; & Lt; / क्षेत्र & gt; & Lt; / प्रविष्टि & gt; & Lt; एंट्री आईडी = "32" & gt; & LT; आइटम नंबर & gt; 1575 & lt; / आइटम नंबर & gt; & Lt; नाम & gt; फ्रेंच टोस्ट Stix, WG & lt; / name & gt; & LT; क्षेत्र & gt; & Lt; आइटम आईडी = "2" & gt; किराने का सामान - नाश्ता & lt; / आइटम & gt; & Lt; / क्षेत्र & gt; & Lt; / प्रविष्टि & gt; & Lt; / आइटम & gt; & Lt; / डेटा & gt;  

आइटम-प्रकार नीचे दिए गए आइटम की श्रेणियां हैं आइटम-प्रकार / एंट्री / आई आईडी सीधे आइटम / प्रविष्टि / क्षेत्र / आइटम / आई आईडी से संबंधित है और मैं आइटमों को मेरी श्रेणियों में व्यवस्थित करने की कोशिश कर रहा हूं आउटपुट।

अब तक मैं निम्नलिखित XSL परिवर्तन का उपयोग कर रहा हूं।

  & lt; xsl: टेम्पलेट मैच = "आइटम-प्रकार / प्रविष्टि" & gt; & Lt; h3 & gt; & lt; xsl: मान का चयन करें = "कॉन्सैट (@ आईडी, '।', श्रेणी)" / & gt; & lt; / h3 & gt; & LT; ul & gt; & Lt; xsl: लागू-टेम्पलेट चुनें = "/ डेटा / आइटम / प्रविष्ट [क्षेत्र / आइटम / @ आईडी = @आईडी]" / & gt; & Lt; / ul & gt; & Lt; / XSL: टेम्पलेट & gt; & Lt; xsl: टेम्पलेट मैच = "आइटम / प्रविष्टि" & gt; & Lt; li & gt; & Lt; xsl: मान का चयन करें = "कॉन्सैट (आइटम-संख्या, '।', नाम, '(', क्षेत्र / वस्तु / आई आईडी, ')')" / & gt; & Lt; / li & gt; & Lt; / XSL: टेम्पलेट & gt;  

समस्या यह है कि यह काम नहीं कर रहा है मेरा मानना ​​है कि समस्या परिवर्तन की रेखा 4 पर गड़बड़ी है: [area / item / @ id = @id] जब मैं इसे निकालता हूं, यह सभी श्रेणियों में सभी आइटम दिखाता है।

"फ्रोजन" श्रेणी में "फ्रोजन" आइटम और "नाश्ता" श्रेणी में "नाश्ता" आइटम दिखाने का कोई तरीका क्या है?

धन्यवाद!

  & lt; xsl: key name = "kEntryByAreaId" मैच = 

अब सवाल का जवाब देने के लिए कि आपका प्रयास क्यों नहीं चला।

यह अभिव्यक्ति:

  / data / items / entry [ क्षेत्र / आइटम / @ आईडी = @id]  

कहते हैं: "सभी / डेटा / आइटम / प्रविष्टि उनके क्षेत्र / आइटम / @ तत्वों के साथ आईडी मान उनके @id मान के बराबर है। समस्या है - उनके पास कोई @id मान नहीं है।

आप मतलब यह है:

  / डेटा /    

यह काम करेगा, लेकिन कुंजी तेजी से हो जाएगी। एचटीएमएल>

Comments

Popular posts from this blog

c++ - Linux and clipboard -

Visual Studio 2005: How to speed up builds when a VSMDI is open? -

booting ubuntu from usb using virtualbox -