I suppose that the online utility-validator you've tried, requires a valid absolute URI in order to locate the .dtd file, while this is not necessary when validate offline files.
1) The element itself has not a nodeValue.. Is the child textNode that you can get its value..
Example in the element: <NAME>ABC</NAME>
To get the "ABC" value must get the...
The symbols +,*,? used direct after an element name or parenthesis to specify quantity (number of times an element or parenthesized group may appear in the document tree).
Some elements are defined to exist: "once or not at all" (are optional) (using the ? quantifier), however inside your XML data those elements exist more than once.. Eg. some "chakra", "nadi"...
Just an addition:
In the example below the sent function used (invoked) with a value (10) as "point". I mean the function sent as argument ("function(point) {..") used inside the "getLatLng"...
Its a method.. of course you may also use a form input ( type "hidden" ) for the same task or cookies (sessions or persistence) or possibly global variables to store the "old" data values.....
You pass 2 arguments in the "geocoder.getLatLng" function [ the "postalCode" and an anonymous function "function(point).."] which (the function(point)..") I think never executed.. so the...