JavaRush /جاوا بلاگ /Random-SD /XML بنياديات جاوا پروگرامر لاءِ - حصو 1 جو 3
Ярослав
سطح
Днепр

XML بنياديات جاوا پروگرامر لاءِ - حصو 1 جو 3

گروپ ۾ شايع ٿيل
XML اڄڪلهه هڪ تمام مشهور ۽ لچڪدار فارميٽ آهي. هر پروگرامر کي اهو سمجهڻ گهرجي، اهو صرف هڪ لازمي آهي. اڄ ڪيتريون ئي ٽيڪنالاجيون فعال طور تي استعمال ڪري رهيا آهن، ۽ جديد انهن مان آهن.
جاوا پروگرامر لاءِ XML بنياديات - حصو 1 جو 3 - 1

تعارف

هيلو، منهنجي مضمون جا پيارا پڙهندڙ. مان فوري طور تي چوڻ چاهيان ٿو ته هي منهنجي ٽن مضمونن جي سيريز ۾ صرف پهريون مضمون آهي. پوري سيريز جو بنيادي مقصد هر پڙهندڙ کي XML ۾ شروع ڪرڻ آهي ۽ ڏيو، جيڪڏهن مڪمل وضاحت ۽ سمجهه نه آهي، ته گهٽ ۾ گهٽ ان ڏانهن هڪ سٺو ڌڪ، بنيادي نقطي ۽ شين جي وضاحت ڪندي. سڄو چڪر هڪ نامزدگي لاءِ هوندو - ”تفصيل ڏانهن ڌيان“ ، ۽ 3 مضمونن ۾ ورهايو ويو آهي ته جيئن تحريرن ۾ ڪردار جي حد ۾ فٽ ٿئي ۽ مواد جي وڏي مقدار کي ننڍن حصن ۾ ورهايو وڃي، جيئن وڌيڪ سمجھڻ لاءِ. پهريون آرٽيڪل پاڻ کي وقف ڪيو ويندو XML ۽ اهو ڇا آهي، انهي سان گڏ هڪ اسڪيما ٺاهڻ جو هڪ طريقو XML فائلن لاءِ - DTD. شروع ڪرڻ سان، مان انھن لاءِ ھڪڙو ننڍڙو پيشڪش ڪرڻ چاھيان ٿو جيڪي اڃا تائين XML کان واقف نه آھن: خوفزده ٿيڻ جي ڪا ضرورت ناهي. XML تمام پيچيده نه آهي ۽ ڪنهن به پروگرامر کي سمجهڻ گهرجي، ڇاڪاڻ ته اهو هڪ تمام لچڪدار، موثر ۽ مشهور فائل فارميٽ آهي اڄڪلهه مختلف معلومات کي محفوظ ڪرڻ لاءِ جيڪو توهان چاهيو ٿا. XML Ant، ​​Maven، Spring ۾ استعمال ٿيندو آهي. ڪنهن به پروگرامر کي XML جي ڄاڻ جي ضرورت آهي. هاڻي ته توهان طاقت ۽ حوصلا گڏ ڪيو آهي، اچو ته پڙهائي شروع ڪريون. مان ڪوشش ڪندس ته سڀني مواد کي آسانيء سان ترتيب ڏيو، صرف سڀ کان اهم گڏ ڪري ۽ گھاس ۾ نه وڃان.

ايڪس ايم ايل

وڌيڪ واضح وضاحت لاءِ، بهتر ٿيندو ته XML کي مثال سان ڏسو.
<?xml version="1.0" encoding="UTF-8"?>
<company>
    <name>IT-Heaven</name>
    <offices>
        <office floor="1" room="1">
            <employees>
                <employee>
                    <name>Maksim</name>
                    <job>Middle Software Developer</job>
                </employee>
                <employee>
                    <name>Ivan</name>
                    <job>Junior Software Developer</job>
                </employee>
                <employee>
                    <name>Franklin</name>
                    <job>Junior Software Developer</job>
                </employee>
            </employees>
        </office>
        <office floor="1" room="2">
            <employees>
                <employee>
                    <name>Herald</name>
                    <job>Middle Software Developer</job>
                </employee>
                <employee>
                    <name>Adam</name>
                    <job>Middle Software Developer</job>
                </employee>
                <employee>
                    <name>Leroy</name>
                    <job>Junior Software Developer</job>
                </employee>
            </employees>
        </office>
    </offices>
</company>
HTML ۽ XML نحو ۾ هڪجهڙا آهن ڇاڪاڻ ته انهن وٽ هڪ عام والدين آهي - SGML. جڏهن ته، HTML ۾ صرف هڪ مخصوص معيار جا ٽيگ مقرر ٿيل آهن، جڏهن ته XML ۾ توهان پنهنجون ٽيگ، خاصيتون ٺاهي سگهو ٿا ۽، عام طور تي، جيڪو به توهان ڊيٽا کي ذخيرو ڪرڻ چاهيو ٿا، انهي طريقي سان جيڪو توهان لاء مناسب آهي. حقيقت ۾، XML فائلون هر ڪنهن کي پڙهي سگهي ٿو جيڪو انگريزي ڄاڻي ٿو. هي مثال هڪ وڻ استعمال ڪندي ڏيکاري سگهجي ٿو. XML بنياديات جاوا پروگرامر لاءِ - حصو 1 جو 3 - 2وڻ جي پاڙ ڪمپني آهي. اهو پڻ روٽ (روٽ) عنصر آهي جنهن مان ٻيا سڀئي عنصر ايندا آهن. هر XML فائل صرف هڪ روٽ عنصر رکي سگهي ٿو. اهو xml فائل جي اعلان کان پوء اعلان ڪيو وڃي (مثال ۾ پهرين لائن) ۽ ٻين سڀني عناصر تي مشتمل آهي. اعلان بابت ٿورڙو: اهو لازمي آهي ۽ دستاويز کي XML طور سڃاڻڻ جي ضرورت آهي. ان ۾ ٽي pseudo-صفات آهن (خاص اڳواٽ بيان ڪيل خاصيتون): ورجن (1.0 معيار جي مطابق)، انڪوڊنگ (انڪوڊنگ) ۽ اسٽينڊل (خودمختاري: جيڪڏهن ها ۽ خارجي اسڪيمون دستاويز سان ڳنڍيل آهن، پوء اتي هڪ غلطي هوندي، ڊفالٽ. نه آهي). عناصر اهي ادارا آهن جيڪي ڊيٽا کي ذخيرو ڪن ٿا ٻين عناصر ۽ خاصيتون استعمال ڪندي. خاصيتون هڪ عنصر بابت اضافي معلومات آهن جيڪي بيان ڪيل آهن جڏهن هڪ عنصر شامل ڪيو وڃي. جيڪڏهن اسان وضاحت کي OOP فيلڊ ۾ ترجمو ڪريون ٿا، اسان هيٺ ڏنل مثال ڏئي سگهون ٿا: اسان وٽ هڪ ڪار آهي، هر ڪار ۾ خاصيتون آهن (رنگ، ​​گنجائش، برانڊ، وغيره) - اهي خاصيتون آهن، ۽ اهڙا ادارا آهن جيڪي ڪار جي اندر آهن. : دروازا، ونڊوز، انجڻ، اسٽيرنگ ويل ٻيا عنصر آهن. توھان ذخيرو ڪري سگھو ٿا ملڪيت يا ته انفرادي عناصر جي طور تي يا خاصيتن جي طور تي، توھان جي خواهش تي منحصر آھي. سڀ کان پوء، XML هڪ انتهائي لچڪدار فارميٽ آهي جيڪو ڪنهن به شيء بابت معلومات کي محفوظ ڪرڻ لاء. وضاحتن کان پوء، اسان کي صرف مٿين مثال کي ڏسڻ جي ضرورت آهي ته هر شيء کي جاء تي گرڻ لاء. مثال ۾، اسان هڪ سادي ڪمپني جي جوڙجڪ کي بيان ڪيو آهي: اتي هڪ ڪمپني آهي جنهن جو نالو ۽ آفيسون آهن، ۽ آفيسن ۾ ملازم آهن. ملازم ۽ آفيسون عناصر لفافي عناصر آھن - اھي ھڪڙي قسم جي عناصر کي گڏ ڪرڻ جي خدمت ڪن ٿا، بنيادي طور تي انھن کي پروسيسنگ جي آسانيء لاء ھڪڙي سيٽ ۾ گڏ ڪن ٿا. فرش ۽ ڪمرو خاص ڌيان جي لائق آهي. اهي آفيس جون خاصيتون آهن (فرش ۽ نمبر)، ٻين لفظن ۾، ان جي ملڪيت. جيڪڏهن اسان وٽ "تصوير" عنصر هجي ها، ته پوء اسان ان جي طول و عرض کي منتقل ڪري سگهون ٿا. توھان شايد نوٽيس ڪري سگھو ٿا ته ڪمپني جو نالو وصف نه آھي، پر ھڪڙو نالو عنصر آھي. توهان آساني سان بيان ڪري سگهو ٿا اڏاوتن جو طريقو توهان چاهيو ٿا. ڪو به توهان کي مجبور نٿو ڪري ته عناصر جي سڀني ملڪيتن کي صرف خاصيتن ۾ لکو؛ توهان صرف عناصر استعمال ڪري سگهو ٿا ۽ انهن جي اندر ڪجهه ڊيٽا لکي سگهو ٿا. مثال طور، اسان پنهنجي ملازمن جو نالو ۽ پوزيشن درج ڪري سگھون ٿا خاصيتون:
<?xml version="1.0" encoding="UTF-8"?>
<company>
    <name>IT-Heaven</name>
    <offices>
        <office floor="1" room="1">
            <employees>
                <employee name="Maksim" job="Middle Software Developer">

                </employee>
                <employee name="Ivan" job="Junior Software Developer">

                </employee>
                <employee name="Franklin" job="Junior Software Developer">

                </employee>
            </employees>
        </office>
        <office floor="1" room="2">
            <employees>
                <employee name="Herald" job="Middle Software Developer">

                </employee>
                <employee name="Adam" job="Middle Software Developer">

                </employee>
                <employee name="Leroy" job="Junior Software Developer">

                </employee>
            </employees>
        </office>
    </offices>
</company>
جئين توهان ڏسي سگهو ٿا، هاڻي هر ملازم جو نالو ۽ پوزيشن سندس خاصيتون آهن. ۽ توهان نوٽيس ڪري سگهو ٿا ته ملازم جي اداري (ٽيگ) اندر ڪجھ به ناهي، سڀئي ملازم عناصر خالي آهن. پوء توهان ڪري سگهو ٿا ملازم هڪ خالي عنصر - ان کي بند ڪريو فوري طور تي اعلان ڪرڻ کان پوء. اهو بلڪل سادو ڪيو ويو آهي، صرف هڪ سليش شامل ڪريو:
<?xml version="1.0" encoding="UTF-8"?>
<company>
    <name>IT-Heaven</name>
    <offices>
        <office floor="1" room="1">
            <employees>
                <employee name="Maksim" job="Middle Software Developer" />
                <employee name="Ivan" job="Junior Software Developer" />
                <employee name="Franklin" job="Junior Software Developer" />
            </employees>
        </office>
        <office floor="1" room="2">
            <employees>
                <employee name="Herald" job="Middle Software Developer" />
                <employee name="Adam" job="Middle Software Developer" />
                <employee name="Leroy" job="Junior Software Developer" />
            </employees>
        </office>
    </offices>
</company>
جئين توهان ڏسي سگهو ٿا، خالي عناصر کي بند ڪرڻ سان، اسان معلومات جي مڪمل سالميت کي محفوظ ڪيو ۽ رڪارڊ کي تمام گهڻو مختصر ڪيو، معلومات کي وڌيڪ جامع ۽ پڙهڻ لائق بڻائي. XML ۾ تبصرو شامل ڪرڻ لاءِ (ٽيڪسٽ جيڪو ڇڏيو ويندو جڏهن فائل پارس ڪيو ويندو)، هيٺ ڏنل نحو آهي:
<!-- Ivan недавно уволился, только неделю отработать должен. Не забудьте потом удалить его из списка.-->
۽ آخري تعمير آهي CDATA ، جنهن جو مطلب آهي "ڪردار ڊيٽا". هن ڊيزائن جي مهرباني، اهو ممڪن آهي ته متن لکڻ لاء جيڪو XML مارڪ اپ طور تعبير نه ڪيو ويندو. اھو ڪارائتو آھي جيڪڏھن توھان وٽ ھڪڙو ادارو آھي XML فائل اندر جيڪو معلومات ۾ XML مارڪ اپ کي ذخيرو ڪري ٿو. مثال:
<?xml version="1.0" encoding="UTF-8" ?>
<bean>
    <information>
        <![CDATA[<name>Ivan</name><age>26</age>]]>
    </information>
</bean>
XML بابت شيء اها آهي ته توهان ان کي وڌائي سگهو ٿا جڏهن توهان چاهيو ٿا: استعمال ڪريو پنهنجا پنهنجا عنصر، توهان جي پنهنجي خاصيتون، ۽ ان کي ترتيب ڏيو جيئن توهان چاهيو. توھان ڊيٽا کي ذخيرو ڪرڻ لاءِ خاصيتون ۽ عنصر ٻئي استعمال ڪري سگھو ٿا (جيئن اڳئين مثال ۾ ڏيکاريو ويو آھي). تنهن هوندي، توهان کي اهو سمجهڻ جي ضرورت آهي ته توهان پرواز تي پنهنجا عنصر ۽ خاصيتون آڻي سگهو ٿا ۽ توهان چاهيو ٿا، پر ڇا جيڪڏهن توهان هڪ پروجيڪٽ تي ڪم ڪيو جتي ٻيو پروگرامر نالو عنصر کي خاصيتن ۾ منتقل ڪرڻ چاهي ٿو، ۽ توهان جي سموري پروگرام منطق. لکيو ويو آهي ته اهو نالو هڪ عنصر هو؟ توھان ڪيئن ٺاھي سگھوٿا پنھنجا قاعدا ان بابت ته ڪھڙا عنصر ھجڻ گھرجي، ڪھڙا خاصيتون آھن، ۽ ٻيون شيون، ته جيئن توھان XML فائلن جي تصديق ڪري سگھو ۽ پڪ ڪريو ته ضابطا توھان جي پروجيڪٽ ۾ معياري ٿي ويندا ۽ ڪو به انھن جي خلاف ورزي نه ڪندو؟ توھان جي پنھنجي XML مارڪ اپ جي سڀني قاعدن کي لکڻ لاء، خاص اوزار آھن. سڀ کان وڌيڪ مشهور: DTD ۽ XML اسڪيما. هي مضمون صرف پهرين بابت ڳالهائيندو.

ڊي ٽي ڊي

DTD دستاويزن جي قسمن کي بيان ڪرڻ لاء ٺهيل آهي. DTD اڳ ۾ ئي ختم ٿي رهيو آهي ۽ هاڻي فعال طور تي XML ۾ ڇڏي ويو آهي، پر اڃا تائين ڪيتريون ئي XML فائلون آهن جيڪي DTD استعمال ڪن ٿيون ۽، عام طور تي، اهو سمجهڻ لاء مفيد آهي. DTD XML دستاويزن جي تصديق لاءِ هڪ ٽيڪنالاجي آهي . A DTD هڪ دستاويز جي قسم لاءِ مخصوص قاعدن جو اعلان ڪري ٿو: ان جا عنصر، عنصر اندر ڪهڙا عنصر ٿي سگهن ٿا، خاصيتون، ڇا اهي گهربل آهن يا نه، انهن جي ورهاڱي جو تعداد، گڏوگڏ ادارو. XML سان ملندڙ جلندڙ، هڪ DTD هڪ واضح وضاحت لاءِ مثال سان ڏسي سگهجي ٿو.
<!-- Объявление возможных элементов -->
<!ELEMENT employee EMPTY>
<!ELEMENT employees (employee+)>
<!ELEMENT office (employees)>
<!ELEMENT offices (office+)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT company (name, offices)>

<!-- Добавление атрибутов для элементов employee и office -->
<!ATTLIST employee
        name CDATA #REQUIRED
        job  CDATA #REQUIRED
>

<!ATTLIST office
        floor CDATA #REQUIRED
        room  CDATA #REQUIRED
>

<!-- Добавление сущностей -->
<!ENTITY M "Maksim">
<!ENTITY I "Ivan">
<!ENTITY F "Franklin">
هتي اسان وٽ هڪ سادي مثال آهي. هن مثال ۾، اسان XML مثال مان اسان جي پوري درجي بندي جو اعلان ڪيو: ملازم، ملازم، آفيس، آفيسون، نالو، ڪمپني. DTD فائلون ٺاھڻ لاءِ، ڪنھن به XML فائلن کي بيان ڪرڻ لاءِ 3 مکيه ٺاھڻ استعمال ڪيا ويا آھن: ELEMENT (عناصر کي بيان ڪرڻ لاءِ)، ATTLIST (عناصرن لاءِ خاصيتون بيان ڪرڻ لاءِ) ۽ ENTITY (مختصر فارمن سان متن کي متبادل ڪرڻ لاءِ). ELEMENT ڪنهن عنصر کي بيان ڪرڻ لاءِ استعمال ڪيو ويندو آهي. عناصر جيڪي بيان ڪيل عنصر جي اندر استعمال ڪري سگھجن ٿيون، فهرست جي شڪل ۾ قوس ۾ درج ٿيل آھن. توھان استعمال ڪري سگھوٿا مقدار کي ظاھر ڪرڻ لاءِ quantifiers (اھي آھن ملندڙ آھن quantifiers from Regular expressions): +مطلب جو 1+ *مطلب 0+ ?آھي 0OR 1 جيڪڏھن ڪو مقدار ۾ شامل نه ڪيو ويو آھي، پوء اھو فرض ڪيو وڃي ٿو ته صرف 1 عنصر ھجڻ گھرجي. جيڪڏهن اسان کي عناصر جي هڪ گروهه جي ضرورت آهي، اسان ان کي هن طرح لکي سگهون ٿا:
<!ELEMENT company ((name | offices))>
پوءِ عنصرن مان ھڪڙو چونڊيو ويندو: نالو يا آفيسون، پر جيڪڏھن انھن مان ٻه آھن ڪمپنيءَ اندر، پوءِ تصديق پاس نه ٿيندي. توهان اهو پڻ نوٽيس ڪري سگهو ٿا ته ملازم ۾ لفظ EMPTY آهي - هن جو مطلب آهي ته عنصر خالي هجڻ گهرجي. هتي پڻ آهي ڪو به - ڪنهن به عنصر. #PCDATA - ٽيڪسٽ ڊيٽا. ATTLIST استعمال ڪيو ويو عناصرن ۾ خاصيتون شامل ڪرڻ لاءِ. ATTLIST کان پوءِ مطلوب عنصر جي نالي پٺيان، ۽ ان کان پوءِ فارم جي لغت ”صفت جو نالو - وصف جو قسم“، ۽ آخر ۾ توھان #IMPLIED (اختياري) يا #REQUIRED (ضروري) شامل ڪري سگھو ٿا. CDATA - ٽيڪسٽ ڊيٽا. ٻيا به قسم آھن، پر اھي سڀ ننڍا آھن. ENTITY ENTITY مخففات ۽ متن جو اعلان ڪرڻ لاءِ استعمال ڪيو ويندو آھي جيڪو انھن تي رکيو ويندو. حقيقت ۾، اسان صرف XML ۾ استعمال ڪرڻ جي قابل ٿي سگهنداسين، مڪمل متن جي بدران، صرف ان اداري جو نالو ۽ نشاني کان اڳ ۽ ؛ بعد ۾ مثال طور: HTML مارڪ اپ ۽ صرف اکرن جي وچ ۾ فرق ڪرڻ لاءِ، کاٻي زاويه بریکٹ اڪثر ڪري lt سان ڀڄي ويندو آهي؛ ، توهان کي صرف رکڻو پوندو ۽ اڳ ۾. پوء اسان مارڪ اپ استعمال نه ڪنداسين، پر صرف < علامت. جئين توهان ڏسي سگهو ٿا، هر شيء بلڪل سادو آهي: توهان عناصر جو اعلان ڪريو، وضاحت ڪريو ته ڪهڙا عناصر شامل ڪرڻ جي قابل آهن اعلان ڪيل عناصر، انهن عناصر ۾ خاصيتون شامل ڪريو ۽، جيڪڏهن گهربل هجي، توهان ڪجهه داخلن کي مختصر ڪرڻ لاء ادارا شامل ڪري سگهو ٿا. ۽ هتي توهان کي پڇڻو پوندو: اسان جي XML فائل ۾ اسان جا ضابطا ڪيئن استعمال ڪجي؟ آخرڪار، اسان صرف ضابطن جو اعلان ڪيو، پر اسان انهن کي XML ۾ استعمال نه ڪيو. انهن کي XML ۾ استعمال ڪرڻ جا ٻه طريقا آهن: 1. Embedding - DTD قاعدن کي XML فائل جي اندر ئي لکو، صرف DOCTYPE ڪي ورڊ کان پوءِ روٽ عنصر لکو ۽ اسان جي DTD فائل کي چورس بریکٹس اندر بند ڪريو.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE company [
        <!-- Объявление возможных элементов -->
        <!ELEMENT employee EMPTY>
        <!ELEMENT employees (employee+)>
        <!ELEMENT office (employees)>
        <!ELEMENT offices (office+)>
        <!ELEMENT name (#PCDATA)>
        <!ELEMENT company (name, offices)>

        <!-- Добавление атрибутов для элементов employee и office -->
        <!ATTLIST employee
        name CDATA #REQUIRED
        job  CDATA #REQUIRED
        >

        <!ATTLIST office
        floor CDATA #REQUIRED
        room  CDATA #REQUIRED
        >

        <!-- Добавление сущностей -->
        <!ENTITY M "Maksim">
        <!ENTITY I "Ivan">
        <!ENTITY F "Franklin">
]>

<company>
    <name>IT-Heaven</name>
    <!-- Ivan недавно уволился, только неделю отработать должен. Не забудьте потом удалить его из списка.-->
    <offices>
        <office floor="1" room="1">
            <employees>
                <employee name="&M;" job="Middle Software Developer" />
                <employee name="&I;" job="Junior Software Developer" />
                <employee name="&F;" job="Junior Software Developer" />
            </employees>
        </office>
        <office floor="1" room="2">
            <employees>
                <employee name="Herald" job="Middle Software Developer" />
                <employee name="Adam" job="Middle Software Developer" />
                <employee name="Leroy" job="Junior Software Developer" />
            </employees>
        </office>
    </offices>
</company>
2. درآمد - اسان پنهنجا سڀئي ضابطا هڪ الڳ DTD فائل ۾ لکون ٿا، جنهن کان پوءِ XML فائل ۾ اسان پهرين طريقي کان DOCTYPE تعمير استعمال ڪندا آهيون، صرف چورس بریکٹ جي بدران توهان کي سسٽم لکڻو پوندو ۽ هڪ مطلق يا لاڳاپو رستو بيان ڪرڻ جي ضرورت آهي. فائل جو موجوده مقام.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE company SYSTEM "dtd_example1.dtd">

<company>
    <name>IT-Heaven</name>
    <!-- Ivan недавно уволился, только неделю отработать должен. Не забудьте потом удалить его из списка.-->
    <offices>
        <office floor="1" room="1">
            <employees>
                <employee name="&M;" job="Middle Software Developer" />
                <employee name="&I;" job="Junior Software Developer" />
                <employee name="&F;" job="Junior Software Developer" />
            </employees>
        </office>
        <office floor="1" room="2">
            <employees>
                <employee name="Herald" job="Middle Software Developer" />
                <employee name="Adam" job="Middle Software Developer" />
                <employee name="Leroy" job="Junior Software Developer" />
            </employees>
        </office>
    </offices>
</company>
توھان پڻ استعمال ڪري سگھو ٿا PUBLIC لفظ SYSTEM جي بدران، پر اھو ممڪن نه آھي توھان لاءِ ڪارآمد ثابت ٿئي. جيڪڏهن توهان دلچسپي رکو ٿا، توهان ان بابت پڙهي سگهو ٿا (۽ سسٽم بابت پڻ) تفصيل سان هتي: لنڪ . ھاڻي اسان ٻين عناصر کي استعمال نٿا ڪري سگھون بغير انھن کي ڊي ڊي ڊي ۾ بيان ڪرڻ، ۽ سڀ XML اسان جي ضابطن جي تابع آھي. توھان ڪوشش ڪري سگھوٿا ھن ڪوڊ کي IntelliJ IDEA ۾ ھڪ الڳ فائل ۾ .xml ايڪسٽينشن سان ۽ ڪجھ نوان عنصر شامل ڪرڻ جي ڪوشش ڪريو يا اسان جي DTD مان ھڪڙو عنصر هٽائي سگھو ٿا ۽ ڏسو ته IDE توھان کي ڪيئن نقص ڏيکاريندو. بهرحال، DTD ان جا نقصان آهن:
  • ان جو پنهنجو نحو آهي، xml نحو کان مختلف.
  • A DTD وٽ ڊيٽا جي قسم جي چڪاس نه آهي ۽ صرف تارن تي مشتمل ٿي سگھي ٿو.
  • DTD ۾ نالي جي جاءِ ناهي.
توھان جي پنھنجي نحو جي مسئلي بابت: توھان کي ھڪڙي وقت ۾ ٻه نحو سمجھڻ گھرجي: XML ۽ DTD نحو. اهي مختلف آهن ۽ اهو توهان کي پريشان ڪري سگهي ٿو. انهي سان گڏ، انهي جي ڪري، اهو ساڳيو DTD اسڪيمن سان گڏ وڏي XML فائلن ۾ غلطي کي ٽريڪ ڪرڻ وڌيڪ ڏکيو آهي. جيڪڏهن ڪجهه توهان لاءِ ڪم نٿو ڪري، توهان کي مختلف نحو سان متن جي وڏي مقدار کي چيڪ ڪرڻو پوندو. اهو هڪ ئي وقت ۾ ٻه ڪتاب پڙهڻ وانگر آهي: روسي ۽ انگريزي ۾. ۽ جيڪڏھن توھان جي ھڪڙي ٻولي جي ڄاڻ خراب آھي، ته متن کي سمجھڻ بلڪل ڏکيو ٿيندو. ڊيٽا جي قسم جي چڪاس جي مسئلي بابت: DTDs ۾ خاصيتون مختلف قسم جا آهن، پر اهي سڀ آهن، انهن جي بنيادي طور تي، ڪنهن شيءِ جي اسٽرنگ نمائندگي، فهرستن يا لنڪ. تنهن هوندي، توهان صرف انگن جو مطالبو نٿا ڪري سگهو، ۽ خاص طور تي مثبت يا منفي نه. ۽ توهان اعتراض جي قسمن بابت مڪمل طور تي وساري سگهو ٿا. آخري مسئلو ايندڙ مضمون ۾ بحث ڪيو ويندو، جيڪو نالو اسپيس ۽ XML اسڪيمن لاء وقف ڪيو ويندو، ڇو ته هتي بحث ڪرڻ بي معني آهي. توهان سڀني جي توجه ڏيڻ جي مهرباني، مون تمام گهڻو ڪم ڪيو آهي ۽ جاري رکندو آهيان ته مضمونن جو سڄو سلسلو وقت تي ختم ڪري سگهان. بنيادي طور تي، مون کي صرف XML اسڪيمن کي معلوم ڪرڻو آهي ۽ 2nd آرٽيڪل کي ختم ڪرڻ لاءِ واضح لفظن ۾ انهن جي وضاحت ڪرڻي آهي. ان جو اڌ اڳ ۾ ئي ٿي چڪو آهي، تنهنڪري توهان جلد ئي ان جي اميد ڪري سگهو ٿا. آخري آرٽيڪل مڪمل طور تي جاوا استعمال ڪندي XML فائلن سان ڪم ڪرڻ لاءِ وقف ڪيو ويندو. سڀني کي سٺي قسمت ۽ پروگرامنگ ۾ ڪاميابي :) اڳيون مضمون: [مقابلو] هڪ جاوا پروگرامر لاءِ XML بنياديات - حصو 2 جو 3
تبصرا
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION