XML DOM | compareDocumentPosition Method

XML DOM - compareDocumentPosition Method


Hello folks! welcome back to a new edition of our tutorial on XML DOM. In this tutorial, we are going to be studying about the XML DOM compareDocumentPosition Method.

The XML DOM compareDocumentPosition method is used to compare the position of the current node against a specified node according the document order.

Syntax

The following below is the syntax to use the compareDocumentPosition Method -

nodeObject.compareDocumentPosition(Node other)

Parameter Details

S.No.Parameter & Description
1

other

It is the reference node to which the current node is compared. It is of type Node.


Return Value

This DOM method returns how the node is relatively positioned to the reference node.

Example

Following below are the node.xml contents -

<?xml version = "1.0"?>
<Company>
   <Employee category = "Technical">
      <FirstName>Kennedy</FirstName>
      <LastName>Nkpara</LastName>
      <ContactNo>1234567890</ContactNo>
      <Email>kennedynkpara@xyz.com</Email>
   </Employee>
   
   <Employee category = "Non-Technical">
      <FirstName>Stephanie</FirstName>
      <LastName>Francis</LastName>
      <ContactNo>1234667898</ContactNo>
      <Email>stephaniefrancis@xyz.com</Email>
   </Employee>
   
   <Employee category = "Management">
      <FirstName>Justice</FirstName>
      <LastName>Dauglas</LastName>
      <ContactNo>1234562350</ContactNo>
      <Email>justicedauglas@xyz.com</Email>
   </Employee>
</Company>


The following example illustrates the usage of the compareDocumentPosition method -

<!DOCTYPE html>
<html>
   <head>
      <script>
         function loadXMLDoc(filename) {
            if (window.XMLHttpRequest) {
               xhttp = new XMLHttpRequest();
            } else // code for IE5 and IE6 {
               xhttp = new ActiveXObject("Microsoft.XMLHTTP");
            }
            xhttp.open("GET",filename,false);
            xhttp.send();
            return xhttp.responseXML;
         }
      </script>
   </head>
   <body>
      <script>
         xmlDoc = loadXMLDoc("/dom/node.xml");

         f1 = xmlDoc.getElementsByTagName('LastName')[1];
         f2 = xmlDoc.getElementsByTagName('LastName')[2];
         document.write("Result after comparing the position : ")
         document.write(f1.compareDocumentPosition(f2));
      </script>
   </body>
</html>

Output

Save this file as nodemethod_compareDocumentPosition.html on the server path (this file and node.xml should be on the same path in your server). This gives us the following output below -

Result after comparing the position : 4


Alright guys! This is where we are going to be rounding up for this tutorial post. In our next tutorial, we will be studying about XML DOM hasChildNodes Method.

Feel free to ask your questions where necessary and we will attend to them as soon as possible. If this tutorial was helpful to you, you can use the share button to share this tutorial.

Follow us on our various social media platforms to stay updated with our latest tutorials. You can also subscribe to our newsletter in order to get our tutorials delivered directly to your emails.

Thanks for reading and bye for now.