JavaRush /جاوا بلاگ /Random-SD /جاوا ۾ XML: اهو ڇا آهي؟

جاوا ۾ XML: اهو ڇا آهي؟

گروپ ۾ شايع ٿيل
سلام! اڄ اسان XML نالي هڪ ٻئي ڊيٽا فارميٽ سان واقف ٿينداسين. هي هڪ تمام اهم موضوع آهي. جڏهن حقيقي جاوا ايپليڪيشنن تي ڪم ڪري رهيا آهيو، توهان تقريبن ضرور ضرور منهن ڪندا ايڪس ايم ايل سان لاڳاپيل مسئلا. هي فارميٽ جاوا ڊولپمينٽ ۾ لڳ ڀڳ هر هنڌ استعمال ٿيندو آهي (اسان اهو معلوم ڪنداسين ته ڇو بلڪل هيٺ)، تنهن ڪري مان سفارش ڪريان ٿو ته توهان ليڪچر پڙهو ”ترقي“ نه، پر هر شيءِ کي چڱي طرح سمجھو ۽ ساڳئي وقت اضافي ادب/لنڪن جو مطالعو ڪريو :) هي وقت ضرور ضايع نه ٿيندو. تنهن ڪري، اچو ته سادي سان شروع ڪريون - "ڇا" ۽ "ڇو"!

XML ڇا آهي؟

XML جو مطلب آهي ايڪسٽينيبل مارڪ اپ ٻولي. توھان شايد اڳ ۾ ئي ھڪڙي مارڪ اپ ٻولين مان واقف ھجو: توھان HTML بابت ٻڌو آھي، جيڪو ويب صفحا ٺاھڻ لاءِ استعمال ڪيو ويندو آھي :) XML ڇا آهي - 1HTML ۽ XML ڏسڻ ۾ بہ ساڳيا آھن:
HTML 1
<h1>title</h1>
<p>paragraph</p>
<p>paragraph</p>
ايڪس ايم ايل 1
<headline>title</headline>
<paragraph>paragraph</paragraph>
<paragraph>paragraph</paragraph>
HTML 2
<h1>title</h1>
<p>paragraph</p>
<p>paragraph</p>
ايڪس ايم ايل 2
<chief>title</chief>
<paragraph>paragraph</paragraph>
<paragraph>paragraph</paragraph>
ٻين لفظن ۾، XML ڊيٽا بيان ڪرڻ لاء هڪ ٻولي آهي.

XML ڇو ضروري آهي؟

XML اصل ۾ وڌيڪ آسان اسٽوريج ۽ ڊيٽا جي منتقلي لاء ايجاد ڪئي وئي، بشمول انٽرنيٽ تي. ان ۾ ڪيترائي فائدا آھن جيڪي ان کي ڪاميابي سان ھن ڪم کي منهن ڏيڻ جي اجازت ڏين ٿا. پهريون، انسانن ۽ ڪمپيوٽرن ٻنهي کي پڙهڻ آسان آهي. منهنجو خيال آهي ته توهان آساني سان سمجهي سگهو ٿا ته هي xml فائل ڇا بيان ڪري ٿو:
<?xml version="1.0" encoding="UTF-8"?>
<book>
   <title>Harry Potter and the Philosopher’s Stone</title>
   <author>J. K. Rowling</author>
   <year>1997</year>
</book>
ڪمپيوٽر به هن فارميٽ کي آساني سان سمجهي ٿو. ٻيو، جيئن ته ڊيٽا هڪ سادي ٽيڪسٽ فارميٽ ۾ ذخيرو ٿيل آهي، ان کي هڪ ڪمپيوٽر کان ٻئي ڏانهن منتقل ڪرڻ وقت ڪو به مطابقت وارو مسئلو نه هوندو. اهو سمجهڻ ضروري آهي ته XML قابل عمل ڪوڊ نه آهي، پر هڪ ڊيٽا جي وضاحت جي ٻولي آهي . توهان XML استعمال ڪندي ڊيٽا کي بيان ڪرڻ کان پوء، توهان کي ڪوڊ لکڻ جي ضرورت آهي (مثال طور، جاوا ۾) جيڪو هن ڊيٽا کي موڪلي / وصول / پروسيس ڪري سگهي ٿو.

XML ڪيئن ڪم ڪندو آهي؟

ان جو مکيه حصو ٽيگ آهي: اهي شيون آهن زاوي بریکٹ ۾:
<book>
</book>
اتي اوپننگ ۽ بند ڪرڻ جا ٽيگ آھن. بند ڪرڻ واري وٽ هڪ اضافي علامت آهي - “ /”، اهو مٿي ڏنل مثال ۾ ڏسي سگهجي ٿو. هر افتتاحي ٽيگ کي لازمي طور تي لاڳاپيل بند ٿيڻ واري ٽيگ هجڻ گهرجي. اهي ڏيکاريندا آهن جتي فائل ۾ هر عنصر جي وضاحت شروع ٿئي ٿي ۽ ختم ٿئي ٿي. ٽيگ nested ٿي سگهي ٿو! اسان جي ڪتاب جي مثال ۾، <book> ٽيگ ۾ 3 ذيلي ٽيگ آهن - <title> ، <author> ۽ <year> . ھي ھڪڙي سطح تائين محدود نه آھي: ذيلي ٽيگ کي پنھنجا ذيلي ٽيگ ٿي سگھن ٿا، وغيره. ھن ڊيزائن کي ٽيگ ٽري سڏيو ويندو آھي. اچو ته ڪار ڊيلرشپ جي وضاحت سان XML فائل جو مثال استعمال ڪندي وڻ کي ڏسو:
<?xml version="1.0" encoding="UTF-8"?>
<carstore>
   <car category="truck">
       <model lang="en">Scania R 770</model>
       <year>2005</year>
       <price currency="US dollar">200000.00</price>
   </car>
   <car category="sedan">
       <title lang="en">Ford Focus</title>
       <year>2012</year>
       <price currency="US dollar">20000.00</price>
   </car>
   <car category="sport">
       <title lang="en">Ferrari 360 Spider</title>
       <year>2018</year>
       <price currency="US dollar">150000.00</price>
   </car>
</carstore>
هتي اسان وٽ هڪ اعلي سطحي ٽيگ آهي - <carstore> . اهو پڻ سڏيو ويندو آهي "روٽ" - روٽ ٽيگ. <carstore> وٽ ھڪڙو ٻار ٽيگ آھي، <car>. <car>، موڙ ۾، پڻ 3 پنھنجي ٻارن جا ٽيگ آھن - <model>، <year> ۽ <price>. هر ٽيگ ۾ خاصيتون ٿي سگهن ٿيون - اضافي اهم معلومات. اسان جي مثال ۾، <model> ٽيگ ۾ هڪ صفت آهي "lang" - ٻولي جنهن ۾ ماڊل جو نالو لکيل آهي:
<model lang="en">Scania R 770</model>
هن طريقي سان اسان اهو ظاهر ڪري سگهون ٿا ته عنوان انگريزيء ۾ لکيل آهي. اسان جي <قيمت> ٽيگ ۾ ”ڪرنسي“ خاصيت آهي.
<price currency="US dollar">150000.00</price>
هن طريقي سان اسان اشارو ڪري سگهون ٿا ته ڪار جي قيمت آمريڪي ڊالر ۾ آهي. اهڙيء طرح، XML هڪ "خود بيان ڪندڙ" نحو آهي . توهان ڊيٽا کي بيان ڪرڻ لاءِ گهربل معلومات شامل ڪري سگهو ٿا. توھان پڻ فائل جي شروعات ۾ ھڪڙي لائن شامل ڪري سگھو ٿا XML ورزن ۽ انڪوڊنگ کي اشارو ڪندي جنھن ۾ ڊيٽا لکيل آھي. ان کي سڏيو ويندو آهي " prolog " ۽ هن وانگر ڏسڻ ۾ اچي ٿو:
<?xml version="1.0" encoding="UTF-8"?>
اسان استعمال ڪريون ٿا XML ورجن 1.0 ۽ UTF-8 انڪوڊنگ. اهو ضروري ناهي، پر اهو ڪارائتو ٿي سگهي ٿو جيڪڏهن، مثال طور، توهان پنهنجي فائل ۾ مختلف ٻولين ۾ متن استعمال ڪريو. اسان ذڪر ڪيو آهي ته XML "وڌائيندڙ مارڪ اپ ٻولي" لاء بيٺو آهي، پر ڇا مطلب آهي "وڌيڪ لائق"؟ ان جو مطلب اهو آهي ته اهو توهان جي شين ۽ فائلن جا نوان ورزن ٺاهڻ لاءِ بلڪل موزون آهي. مثال طور، اسان چاهيون ٿا ته اسان جو ڪار شو روم به موٽر سائيڪلون وڪڻڻ شروع ڪري! ساڳئي وقت، پروگرام ۾ اسان کي <carstore> جي ٻنهي نسخن کي سپورٽ ڪرڻ جي ضرورت آهي - ٻئي پراڻي (بغير موٽر سائيڪل) ۽ نئين. هتي اسان جو پراڻو نسخو آهي:
<?xml version="1.0" encoding="UTF-8"?>
<carstore>
   <car category="truck">
       <model lang="en">Scania R 770</model>
       <year>2005</year>
       <price currency="US dollar">200000.00</price>
   </car>
   <car category="sedan">
       <title lang="en">Ford Focus</title>
       <year>2012</year>
       <price currency="US dollar">20000.00</price>
   </car>
   <car category="sport">
       <title lang="en">Ferrari 360 Spider</title>
       <year>2018</year>
       <price currency="US dollar">150000.00</price>
   </car>
</carstore>
۽ ھتي ھڪڙو نئون، وڌايو ويو آھي:
<?xml version="1.0" encoding="UTF-8"?>
<carstore>
   <car category="truck">
       <model lang="en">Scania R 770</model>
       <year>2005</year>
       <price currency="US dollar">200000.00</price>
   </car>
   <car category="sedan">
       <title lang="en">Ford Focus</title>
       <year>2012</year>
       <price currency="US dollar">20000.00</price>
   </car>
   <car category="sport">
       <title lang="en">Ferrari 360 Spider</title>
       <year>2018</year>
       <price currency="US dollar">150000.00</price>
   </car>
   <motorcycle>
       <title lang="en">Yamaha YZF-R6</title>
       <year>2018</year>
       <price currency="Russian Ruble">1000000.00</price>
       <owner>Vasia</owner>
   </motorcycle>
   <motorcycle>
       <title lang="en">Harley Davidson Sportster 1200</title>
       <year>2011</year>
       <price currency="Euro">15000.00</price>
       <owner>Petia</owner>
   </motorcycle>
</carstore>
اسان آسانيءَ سان ۽ آسانيءَ سان اسان جي فائل ۾ موٽرسائيڪلن جي وضاحت شامل ڪئي :) ساڳئي وقت، اسان کي بلڪل ضرورت نه آهي ته موٽر سائيڪلن لاءِ ساڳي ٻار ٽيگ سيٽ ڪريو جيئن ڪارن لاءِ. مهرباني ڪري نوٽ ڪريو ته موٽر سائيڪل، ڪارن جي برعڪس، هڪ عنصر آهي <مالڪ> - مالڪ. هي ڪمپيوٽر (يا هڪ شخص) کي ڊيٽا پڙهڻ کان روڪي نه سگهندو.

XML ۽ HTML جي وچ ۾ فرق

اسان اڳ ۾ ئي چيو آهي ته XML ۽ HTML ظاهر ۾ تمام گهڻو هڪجهڙا آهن. تنهن ڪري، اهو ڄاڻڻ تمام ضروري آهي ته اهي ڪيئن مختلف آهن. پهرين، اهي مختلف مقصدن لاء استعمال ٿيندا آهن. HTML - ويب صفحن کي نشانو بڻائڻ لاءِ. مثال طور، جيڪڏهن توهان کي ويب سائيٽ ٺاهڻ جي ضرورت آهي، HTML استعمال ڪندي توهان وضاحت ڪري سگهو ٿا: "مينيو مٿي ساڄي ڪنڊ ۾ هجڻ گهرجي. ان ۾ اهڙيون ۽ اهڙيون بٽڻون هجڻ گهرجن. ٻين لفظن ۾، HTML جو مقصد ڊيٽا کي ظاهر ڪرڻ آهي. XML - معلومات کي محفوظ ڪرڻ ۽ منتقل ڪرڻ لاءِ هڪ فارم ۾ انسانن ۽ ڪمپيوٽرن لاءِ آسان. هن فارميٽ ۾ ڪا به هدايت نه آهي ته هي ڊيٽا ڪيئن ڏيکاري وڃي: اهو خود پروگرام جي ڪوڊ تي منحصر آهي. ٻيو، انهن وٽ هڪ بنيادي ٽيڪنيڪل فرق آهي. HTML ٽيگ اڳواٽ بيان ڪيل آهن. ٻين لفظن ۾، هيڊنگ ٺاهڻ لاءِ (مثال طور، صفحي جي شروعات ۾ هڪ وڏو لکت)، HTML ۾ صرف <h1></h1> ٽيگ استعمال ڪيا ويندا آهن (ننڍن عنوانن لاءِ - <h2></h2>, < h3></h3>). توهان مختلف عنوانن سان ٽيگ استعمال ڪندي HTML ۾ عنوان ٺاهڻ جي قابل نه هوندا. XML اڳواٽ طئي ٿيل ٽيگ استعمال نٿو ڪري. توھان ٽيگ ڏئي سگھوٿا ڪي به نالا توھان چاھيو - <header>, <title>, <idontknow2121>.

جھيڙي جھڳڙي جو حل

آزادي جيڪا XML مهيا ڪري ٿي شايد ڪجهه مسئلا پيدا ڪري ٿي. مثال طور، ساڳيو ادارو (مثال طور، هڪ ڪار) مختلف مقصدن لاء هڪ پروگرام جي استعمال ڪري سگهجي ٿو. مثال طور، اسان وٽ ھڪڙو XML فائل آھي جيڪو بيان ڪري ٿو مشين. بهرحال، اسان جا پروگرامر اڳ ۾ پاڻ ۾ متفق نه هئا. ۽ ھاڻي، حقيقي ڪارن جي ڊيٽا کان علاوه، اسان جي xml ۾ رانديڪن جي ماڊل جي ڊيٽا پڻ شامل آھي! ان کان سواء، اهي ساڳيون خاصيتون آهن. اسان جو پروگرام ھيٺ ڏنل XML فائل وصول ڪري ٿو. اسان کي ڪيئن هڪ رانديڪن ماڊل مان هڪ حقيقي ڪار ٻڌائي سگهي ٿو؟
<?xml version="1.0" encoding="UTF-8"?>
<carstore>
   <car category="truck">
       <model lang="en">Scania R 770</model>
       <year>2005</year>
       <price currency="US dollar">200000.00</price>
   </car>
   <car category="sedan">
       <title lang="en">Ford Focus</title>
       <year>2012</year>
       <price currency="US dollar">100.00</price>
   </car>
</carstore>
اڳڪٿيون ۽ نالا جاءِ هتي اسان جي مدد ڪندا. اسان جي پروگرام ۾ حقيقي ڪارن کان رانديڪن ڪارن کي الڳ ڪرڻ لاء (۽ عام طور تي، ڪنهن به رانديڪن جي شين کي انهن جي حقيقي پروٽوٽائپ کان)، اسان متعارف ڪرايون ٿا ٻه اڳڪٿيون - "حقيقي" ۽ "راند".
<real:car category="truck">
   <model lang="en">Scania R 770</model>
   <year>2005</year>
   <price currency="US dollar">200000.00</price>
</real:car>
<toy:car category="sedan">
   <title lang="en">Ford Focus</title>
   <year>2012</year>
   <price currency="US dollar">100.00</price>
</toy:car>
هاڻي اسان جو پروگرام ادارن جي وچ ۾ فرق ڪرڻ جي قابل هوندو! رانديڪن جي اڳڪٿي سان ڪا به شيءِ رانديڪن جي طور تي درجه بندي ڪئي ويندي :) بهرحال، اسان اڃا تائين ختم نه ٿيا آهيون. اڳياڙين کي استعمال ڪرڻ لاءِ، اسان کي انهن مان هر هڪ کي نالي جي جاءِ طور رجسٽر ڪرڻ جي ضرورت آهي. يقينن، اصل ۾، "رجسٽر" هڪ مضبوط لفظ آهي :) توهان کي صرف انهن مان هر هڪ لاء هڪ منفرد نالو وٺڻ جي ضرورت آهي. اهو طبقن سان گڏ آهي: هڪ طبقي جو هڪ مختصر نالو آهي ( Cat) ۽ سڀني پيڪيجز سان پورو نالو ( zoo.animals.Cat) منفرد نالو اسپيس ٺاهڻ لاءِ، هڪ URI عام طور استعمال ڪيو ويندو آهي . ڪڏهن ڪڏهن انٽرنيٽ ايڊريس کي هتي متبادل بڻايو ويندو آهي، جتي هن نالي جي جاءِ جا ڪم ۽ مقصد تفصيل سان بيان ڪيا ويندا آهن. پر اهو ضروري ناهي ته صحيح انٽرنيٽ ايڊريس هجي. گهڻو ڪري، منصوبا صرف URI-like strings استعمال ڪندا آھن جيڪي مدد ڪن ٿا نالو جڳھن جي درجه بندي کي ٽريڪ ڪرڻ ۾. هتي هڪ مثال آهي:
<?xml version="1.0" encoding="UTF-8"?>
<carstore xmlns:real="http://testproject.developersgroup1.companyname/department2/namespaces/real"
         xmlns:toy="http://testproject.developersgroup1.companyname/department2/namespaces/toy">
<real:car category="truck">
   <model lang="en">Scania R 770</model>
   <year>2005</year>
   <price currency="US dollar">200000.00</price>
</real:car>
<toy:car category="sedan">
   <title lang="en">Ford Focus</title>
   <year>2012</year>
   <price currency="US dollar">100.00</price>
</toy:car>
</carstore>
يقينن، انٽرنيٽ تي ڪا به سائيٽ نه آهي ايڊريس تي http://testproject.developersgroup1.companyname/department2/namespaces/real پر هتي مفيد معلومات آهي: ڊولپر گروپ “developersgroup1” مان “department2” ڊپارٽمينٽ ٺاهڻ جو ذميوار آهي. "حقيقي" نالي جي جڳھ. جيڪڏهن توهان کي نوان نالا شامل ڪرڻ جي ضرورت آهي، يا انهن سان ممڪن تڪرار تي بحث ڪرڻ جي ضرورت آهي، اسان ڄاڻون ٿا ته ڪٿي ڦيرايو وڃي. ڪڏهن ڪڏهن هڪ حقيقي انٽرنيٽ ايڊريس هن نالي جي جڳهه جي وضاحت سان گڏ هڪ نالي جي جڳهه لاء هڪ منفرد نالو طور استعمال ڪيو ويندو آهي. مثال طور، جيڪڏهن اها هڪ وڏي ڪمپني آهي ۽ ان جو منصوبو دنيا جي لکين ماڻهن طرفان استعمال ڪيو ويندو. پر اهو هميشه نه ڪيو ويو آهي: اتي هن مسئلي جو بحث آهي Stackoverflow . اصولي طور تي، URIs کي نالن جي نالن جي طور تي استعمال ڪرڻ جي گهرج سخت ناهي: توهان صرف بي ترتيب واري تار استعمال ڪري سگهو ٿا. هي اختيار پڻ ڪم ڪندو:
xmlns:real="nvjneasiognipni4435t9i4gpojrmeg"
پر URIs استعمال ڪرڻ جا ڪيترائي فائدا آھن. توھان ھن بابت وڌيڪ پڙھي سگھوٿا هتي .

بنيادي XML معيار

XML معيار ايڪسٽينشن جو هڪ سيٽ آهن جيڪي xml فائلن ۾ اضافي ڪارڪردگي شامل ڪن ٿا. XML جا ڪيترائي معيار آهن، پر اسان صرف سڀ کان اهم معيارن تي نظر وجهنداسين ۽ معلوم ڪنداسين ته اهي AJAX ، هڪ مشهور XML معيارن مان هڪ، ڪرڻ جي اجازت ڏين ٿا. اهو توهان کي اجازت ڏئي ٿو ته ويب پيج جي مواد کي بغير ان کي ٻيهر لوڊ ڪرڻ جي! آواز ٿڌو؟ :) توهان هن ٽيڪنالاجي کي ذاتي طور تي هتي آزمائي سگهو ٿا . XSLT - توهان کي XML متن کي ٻين فارميٽ ۾ تبديل ڪرڻ جي اجازت ڏئي ٿي. مثال طور، XSLT استعمال ڪندي، توهان XML کي HTML ۾ تبديل ڪري سگهو ٿا! XML جو مقصد، جيئن اسان اڳ ۾ ئي چيو آهي، ڊيٽا کي بيان ڪرڻ آهي، ان کي ظاهر ڪرڻ نه. پر XSLT استعمال ڪندي اسان هن حد کي نظرانداز ڪري سگھون ٿا! هتي هڪ ڪم ڪندڙ مثال سان هڪ سينڊ باڪس آهي، جتي توهان پاڻ لاءِ ڏسي سگهو ٿا ته اهو ڪيئن ڪم ڪري ٿو :) XML DOM - توهان کي اجازت ڏئي ٿو حاصل ڪرڻ، تبديل ڪرڻ، شامل ڪرڻ يا هڪ XML فائل مان انفرادي عناصر کي هٽائڻ. هتي هڪ ننڍڙو مثال آهي ته اهو ڪيئن ڪم ڪري ٿو. اسان وٽ هڪ books.xml فائل آهي:
<bookstore>
   <book category="cooking">
       <title lang="en">Everyday Italian</title>
       <author>Giada De Laurentiis</author>
       <year>2005</year>
       <price>30.00</price>
   </book>
   <book category="children">
       <title lang="en">Harry Potter</title>
       <author>J K. Rowling</author>
       <year>2005</year>
       <price>29.99</price>
   </book>
</bookstore>
ان ۾ ٻه ڪتاب آهن. ڪتابن ۾ اهڙو عنصر هوندو آهي جيئن عنوان - <title>. ۽ ھتي اسان جاوا اسڪرپٽ استعمال ڪري سگھون ٿا پنھنجي XML فائل مان ڪتاب جا سڀ عنوان حاصل ڪرڻ ۽ انھن مان پھرين کي ڪنسول ڏانھن آئوٽ ڪريو:
<!DOCTYPE html>
<html>
<body>

<p id="demo"></p>

<script>
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
    if (this.readyState == 4 && this.status == 200) {
  myFunction(this);
  }
};
xhttp.open("GET", "books.xml", true);
xhttp.send();

function myFunction(xml) {
    var xmlDoc = xml.responseXML;
  document.getElementById("demo").innerHTML =
  xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue;
}
</script>

</body>
</html>
ٻيهر، مان سفارش ڪريان ٿو ته ڏسو ته هي مثال ڪيئن ڪم ڪري ٿو سينڊ باڪس استعمال ڪندي :) DTD ("دستاويزن جي قسم جي تعريف") - توهان کي اجازت ڏئي ٿي ته توهان کي اجازت ڏني عناصر جي فهرست بيان ڪرڻ لاءِ هڪ XML فائل ۾. مثال طور، اسان هڪ ڪتاب اسٽور جي ويب سائيٽ تي ڪم ڪري رهيا آهيون، ۽ سڀني ترقياتي ٽيمن تي اتفاق ڪيو آهي ته ڪتاب جي عنصر لاء، صرف عنوان، ليکڪ، ۽ سال جون خاصيتون XML فائلن ۾ بيان ڪيون وڃن. پر اسان پاڻ کي غفلت کان ڪيئن بچائي سگهون ٿا؟ تمام آسان!
<?xml version="1.0"?>
<!DOCTYPE book [
       <!ELEMENT book (title,author,year)>
       <!ELEMENT title (#PCDATA)>
       <!ELEMENT author (#PCDATA)>
       <!ELEMENT year (#PCDATA)>
       ]>

<book>
   <title>The Lord of The Rings</title>
   <author>John R.R. Tolkien</author>
   <year>1954</year>
</book>
هتي اسان <book> لاءِ صحيح خاصيتن جي فهرست بيان ڪئي آهي. اتي ھڪڙو نئون عنصر شامل ڪرڻ جي ڪوشش ڪريو ۽ توھان کي فوري طور تي غلطي ملندي!
<book>
   <title>The Lord of The Rings</title>
   <author>John R.R. Tolkien</author>
   <year>1954</year>
   <mainhero>Frodo Baggins</mainhero>
</book>
غلطي! "عنصر مکيه هيرو هتي اجازت ناهي" اتي ٻيا ڪيترائي XML معيار آهن. توھان انھن مان ھر ھڪ سان واقف ٿي سگھوٿا ۽ WC3 ويب سائيٽ تي ڪوڊ کي وڌيڪ گہرا ڪرڻ جي ڪوشش ڪريو (سيڪشن "اهم XML معيار"). ۽ عام طور تي، جيڪڏهن توهان کي XML تي معلومات جي ضرورت آهي، توهان اتي تقريبا هر شيء ڳولي سگهو ٿا :) خير، اسان جو ليڪچر ختم ٿي چڪو آهي. اهو وقت آهي ڪمن ڏانهن واپس وڃڻ جو! :) ملندا سين!
تبصرا
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION