2008 Aug 2008 2

XSL में DOCTYPE स्थापना

पिछले सप्ताह मैं एक ग्राहक के लिए एक progessive HTML / सीएसएस लेआउट बनाया, यह IE6 के IE7, और एफएफ 3 में परीक्षण किया, पूरी तरह से ठीक लग रहा था ... जब तक! लेआउट manufacting चक्र नीचे आगे चला गया. यह असफल रहा. पेज लेआउट तत्व सभी जगह जब HTML लेआउट में परिवर्तित किया गया था XSL और XML इसे लागू ... Bummer! पर चला गया!

सप्ताहांत में सो नहीं ठीक कर सकता है, सोमवार की सुबह की प्रत्याशा में, जब मैं इस ** एसएच तय करना होगा. लेकिन अब इन प्रकार की स्थितियों (ब्राउज़र Quirks, मेरा मतलब है) के साथ निपटने में एक छोटे से experince है, मुझे पता था कि यह और कुछ नहीं के साथ है, लेकिन DOCTYPE था .... और यह था ...

समस्या:
DOCTYPE पर नियंत्रण चाहते हैं, के बाद से आपके परिवर्तन डिफ़ॉल्ट DOCTYPE विशेष रूप से शामिल होंगे, और आप लेआउट एक टॉस के लिए बाहर हो जाएगा.

समाधान:
XSLT चश्मा उत्पादन विधियों choise की एक DOCTYPE सेट प्रदान करता है. इसके अलावा, हमारे लिए यूआई डेवलपर्स, हित के विषयों होगा HTML उत्पादन विधियों और XML उत्पादन विधियों .

अच्छी तरह से! इससे पहले कि आप ऊब मिलता है, यहाँ तय है.

उदाहरण के लिए, अगर आप अपने HTML संस्करण में निम्नलिखित टैग: -

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

तब XSL में आप के लिए निम्नलिखित है: -

<xsl:output method="html" doctype-system="http://www.w3.org/TR/html4/loose.dtd" doctype-public="-//W3C//DTD HTML 4.01 Transitional//EN" indent="yes" />

और अंतत:! सुनिश्चित करें कि आपके XSLT उत्पादन DOCTYPE तुम्हें चुना है अनुसरण करता है.


2008 4 मई 2008

शामिल करें XSL के अंदर XSL

यदि XML / XSL के बदल अपने domian है, तो वहाँ कई बार जब हम पुस्तकालय मद में इस्तेमाल किया जा (के लिए फिर से प्रयोग करने योग्य बनाया जा) गतिशील कोड का एक टुकड़ा चाहते हैं. मैं क्या मतलब है, शायद इस उदाहरण परिदृश्य के साथ और अधिक स्पष्ट किया जा सकता है.

कल्पना कीजिए कि आप एक वेबसाइट का निर्माण कर रहे हैं (और एक्सएमएल, XSL transfroms बिल्कुल का उपयोग करके) और पृष्ठों की सबसे टिप्पणियां मॉड्यूल होगा. अच्छी तरह से! तो या तो आप कॉपी या प्रत्येक पृष्ठ (जो मैं कहना है लेकिन रखरखाव और rework एक बुरा सपना है) टेम्पलेट या और भी बेहतर में इस कोड को पेस्ट करने के लिए, आप एक फ़ाइल शामिल है जो कभी जहाँ आप यह चाहते हैं अपने पृष्ठ में खींचा जा सकता है (बनाने ) है ...
तो हम एक XSL शामिल फ़ाइल कैसे बना सकता हूँ और यह एक और XSL फ़ाइल के अंदर शामिल हैं? यहाँ है कैसे ...

बस बातें स्पष्ट करने के लिए ... यहाँ फ़ाइलों के त्वरित सूची है कि आप बना होता है ... यहाँ, हम एक माता पिता कहा जाता है पृष्ठ भोजन में फलों और सब्जियों के बारे में जानकारी सहित जाएगा.

1. XML डेटा फ़ाइल जिस पर परिवर्तन लागू किया जाएगा - food.xml
2. food.xsl मुख्य XSL फ़ाइल है, जो हमारे food.xml बदलना होगा
3. inc_fruits.xsl - XSL फ़ाइल है कि फल डेटा प्रस्तुत करना होगा शामिल
4. inc_vegtables.xsl - XSL फ़ाइल कि vetetables डेटा प्रस्तुत करना होगा शामिल

मैं न लगता है कि मैं बहुत समझाने, ऊपर तत्वों के लिए कोड, आत्म व्याख्यात्मक हो जाएगा ...

FOOD.XML


<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="food.xsl"?>
<food>
<date>July 2008</date>
<description>All about things we eat everyday</description>
<fruits type="tropical">
<item name="mango" moreinfo="http://www.mango.com">Mango is the king of fruits</item>
<item name="banana" moreinfo="http://www.banana.com">Banana once a day , keeps the doctor away</item>
<item name="orange" moreinfo="http://www.orange.com">Orange is the color and rich in vitamin C</item>
<item name="Papaya" moreinfo="http://www.papaya.com">Papaya - Hot when raw, cold when ripe</item>
</fruits>

<vegetables>
<item name="spinach" moreinfo="http://www.spinach.com">Spinach is full of iron</item>
<item name="asparagus" moreinfo="http://www.asparagus.com">Asparagus contains loads of vitamin D </item>
<item name="fenugreek" moreinfo="http://www.fenugreek.com">Fenugreek is rich in vitamin C</item>
</vegetables>
</food>


FOOD.XSL


<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:include href="inc_fruits.xsl" />
<xsl:include href="inc_vegetables.xsl" />
<xsl:template match="/">
<html>
<head>
<title>Title</title>
</head>
<body>
<h3><xsl:value-of select="/food/description" /></h3>
Modification Date : <xsl:value-of select="/food/date" />
<hr/>
<h5> About Fruits</h5>
<xsl:call-template name="about_fruits"/>

<hr/>
<h5> About Vegetables</h5>
<xsl:call-template name="about_vegetables"/>

<hr/>
</ Body>
</ Html>
</ Xsl: टेम्पलेट>
</ Xsl: स्टाइलशीट>


INC_FRUITS.XSL

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" encoding="iso-8859-1" />
<xsl:template name="about_fruits">
<xsl:for-each select="/food/fruits/item/@*">
attribute name : <xsl:value-of select="name()"/>
attribute value : <xsl:value-of select="."/> <br />
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>


INC_VEGETABLES.XSL

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" encoding="iso-8859-1" />
<xsl:template name="about_vegetables">
<xsl:for-each select="/food/vegetables/item/@*">
attribute name : <xsl:value-of select="name()"/>
attribute value : <xsl:value-of select="."/> <br/>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>

सब से ऊपर यहाँ फ़ाइलें (249 डाउनलोड)


2008 Apr 4, 2008

XSLT में XML नोड गुण के साथ कार्य करना

यदि आप XML और XSL का उपयोग करें, तो आप एक बार भर में आ गए हो सकता है, जब आप विशेषताओं और आप XSL में XML नोड के मूल्यों के साथ खेलने के आसपास है. वे इस बारे में घना जानकारी के साथ साइटों की लोड कर रहे हैं, लेकिन कोई भी मैंने पाया संक्षिप्त और सटीक थे ... यह सं XML / XSL ट्यूटोरियल है, लेकिन मेरे धोखा सूची के कुछ प्रकार के एक साथ रखा करने की कोशिश ...

नमूना एक्सएमएल कि हम साथ काम करना होगा इस तरह दिखता है ...

<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="food.xsl"?>
<food>
<fruits type="tropical">
<item name="mango" moreinfo="http://www.mango.com">Mango is the king of fruits</item>
<item name="banana" moreinfo="http://www.banana.com">Banana once a day , keeps the doctor away</item>
<item name="orange" moreinfo="http://www.orange.com">Orange is the color and rich in vitamin C</item>
<item name="Papaya" moreinfo="http://www.papaya.com">Papaya - Hot when raw, cold when ripe</item>
</fruits>
</food>

तो चलो हमारे ऊपर XSL का उपयोग एक्सएमएल बदलने शुरू

उदाहरण 1: एक चुना गुण मान प्रदर्शित

<xsl:value-of select="/food/fruits/item[@name='orange']" /><br />
to get more information about <a href="{/food/fruits/item[@name='orange']/@moreinfo}" target="new" ><xsl:value-of select="/food/fruits/item[@name='orange']/@name" /> </a>

HTML परिणाम की तरह दिखेगा

Orange is the color and rich in vitamin C,
to get more information about <a href="http://www.orange.com" target="new">


उदाहरण 2: के माध्यम से पाशन और सभी XML विशेषता नाम और उनके मान प्रदर्शित

<xsl:for-each select="/food/fruits/item/@*">
attribute name : <xsl:value-of select="name()"/>,
attribute value : <xsl:value-of select="."/> <br />
</xsl:for-each>

HTML परिणाम की तरह दिखेगा


attribute name : name, attribute value : mango
attribute name : moreinfo, attribute value : http://www.mango.com
attribute name : name, attribute value : banana
attribute name : moreinfo, attribute value : http://www.banana.com
attribute name : name, attribute value : orange
attribute name : moreinfo, attribute value : http://www.orange.com
attribute name : name, attribute value : Papaya
attribute name : moreinfo, attribute value : http://www.papaya.com


सब से ऊपर यहाँ फ़ाइलें (243 डाउनलोड)



इस अंतरिक्ष देखो, मैं इस नए निष्कर्ष के साथ अद्यतन रखेंगे ...


NDK घर | आईटी व्यक्त | व्यक्त तालु | व्यक्त Penmenship | श्रद्धा व्यक्त | अपने आप को व्यक्त