An xml parsing utility using the sax engine
npm install saxxmlparser



A small package to transverse xml into javascript
``typescript
import { readFileSync } from "fs";
import parse from "saxxmlparser";
var xml = readFileSync("xml.xml");
parse(xml).then((node) => {
var price = node.resolveNSPath(
"A:envelope/A:body/B:getstockPriceResponsE/B:price",
{
A: "http://www.w3.org/2001/12/soap-envelope",
B: "http://www.example.org/stock",
}
);
console.log(price.value); // Prints 34.5
});
`
`xml
soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">
`
`typescript
import { readFileSync } from "fs";
import parse from "saxxmlparser";
var xml = readFileSync("xml.xml");
parse(xml).then((node) => {
var price = node.resolveNSPath(
"A:envelope/A:body/B:getstockPriceResponsE/B:price", // Put the absolute path to the child in here
{
A: "http://www.w3.org/2001/12/soap-envelope",
B: "http://www.example.org/stock",
}
);
console.log(price.value); // Prints 34.5
});
`
Sometimes when you only want a specific child but the parents or the path does not matter
`typescript
import { readFileSync } from "fs";
import parse from "saxxmlparser";
var xml = readFileSync("xml.xml");
parse(xml).then((node) => {
// A double slash (//) in front of the search triggers a child search
var price = node.resolveNSPath(
"//B:price", // Put the absolute path to the child in here
{
A: "http://www.w3.org/2001/12/soap-envelope",
B: "http://www.example.org/stock",
}
);
console.log(price.value); // Prints 34.5
});
`
Sometimes when you only want a specific child but the parents or the path does not matter
`typescript
import { readFileSync } from "fs";
import parse from "saxxmlparser";
var xml = readFileSync("xml.xml");
parse(xml).then((node) => {
// A double slash (//) in front of the search triggers a child search
var price = node.resolveNSPath(
"//B:GetStockPriceResponse/B:price", // Put the absolute path to the child in here
{
A: "http://www.w3.org/2001/12/soap-envelope",
B: "http://www.example.org/stock",
}
);
console.log(price.value); // Prints 34.5
});
`
Parses the supplied xml and returns the root node
If strict is set to true, the sax parser will be instructed to use strict mode (defaults to true)
parse(xml, strict = true): Promise