एक्सएमएल - डोम

Document Object Model (DOM)XML की नींव है। एक्सएमएल दस्तावेजों बुलाया सूचना इकाइयों के एक पदानुक्रम है नोड्स ; DOM उन नोड्स और उनके बीच संबंधों का वर्णन करने का एक तरीका है।

एक DOM डॉक्यूमेंट एक पदानुक्रम में आयोजित जानकारी के नोड्स या टुकड़ों का एक संग्रह है। यह पदानुक्रम एक डेवलपर को विशिष्ट जानकारी की तलाश में पेड़ के माध्यम से नेविगेट करने की अनुमति देता है। क्योंकि यह सूचना के पदानुक्रम पर आधारित है, इसलिए DOM को पेड़ आधारित कहा जाता है ।

दूसरी ओर, XML DOM एक API भी प्रदान करता है जो एक डेवलपर को एप्लिकेशन बनाने के लिए किसी भी बिंदु पर पेड़ में नोड्स जोड़ने, संपादित करने, स्थानांतरित करने या निकालने की अनुमति देता है।

उदाहरण

निम्न उदाहरण (sample.htm) एक XML डॉक्यूमेंट में XML डॉक्यूमेंट ("address.xml") को पार्स करता है और फिर जावास्क्रिप्ट से इसके बारे में कुछ जानकारी निकालता है -

<!DOCTYPE html>
<html>
   <body>
      <h1>TutorialsPoint DOM example </h1>
      <div>
         <b>Name:</b> <span id = "name"></span><br>
         <b>Company:</b> <span id = "company"></span><br>
         <b>Phone:</b> <span id = "phone"></span>
      </div>
      <script>
         if (window.XMLHttpRequest)
         {// code for IE7+, Firefox, Chrome, Opera, Safari
            xmlhttp = new XMLHttpRequest();
         }
         else
         {// code for IE6, IE5
            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
         }
         xmlhttp.open("GET","/xml/address.xml",false);
         xmlhttp.send();
         xmlDoc = xmlhttp.responseXML;

         document.getElementById("name").innerHTML=
            xmlDoc.getElementsByTagName("name")[0].childNodes[0].nodeValue;
         document.getElementById("company").innerHTML=
            xmlDoc.getElementsByTagName("company")[0].childNodes[0].nodeValue;
         document.getElementById("phone").innerHTML=
            xmlDoc.getElementsByTagName("phone")[0].childNodes[0].nodeValue;
      </script>
   </body>
</html>

की सामग्री address.xml इस प्रकार हैं -

<?xml version = "1.0"?>
<contact-info>
   <name>Tanmay Patil</name>
   <company>TutorialsPoint</company>
   <phone>(011) 123-4567</phone>
</contact-info>

अब हम इन दो फाइलों को रखते हैं sample.htm तथा address.xml उसी निर्देशिका में /xml और निष्पादित करें sample.htmकिसी भी ब्राउज़र में इसे खोलकर फ़ाइल। यह निम्न आउटपुट का उत्पादन करना चाहिए।

यहां, आप देख सकते हैं कि प्रत्येक बच्चे के नोड्स को उनके मूल्यों को प्रदर्शित करने के लिए कैसे निकाला जाता है।