Needle-Pinpointing Machine

    xml2js-xpath
    TypeScript icon, indicating that this package has built-in type declarations

    0.13.0 • Public • Published

    node-xml2js-xpath

    A library for node-xml2js that allows querying the JSON object with XPath syntax.

    build status

    Install

    Use npm:

    npm install --save xml2js xml2js-xpath
    

    Usage

    To use this library, first you need to some xml2js results to parse. Example:

    var xml2js = require("xml2js");
    var xpath = require("xml2js-xpath");
    
    xml2js.parseString('<root><element id="15">target</element></root>', function(err, json) {
      // find all elements: returns xml2js JSON of the element
      var matches = xpath.find(json, "//element");
    
      // find the first element, and get its id:
      var matches = xpath.evalFirst(json, "//element", "id");
    
      // Extract text representation of XML document:
      assert xpath.jsonText(json) === 'target';
    });

    See test cases for more examples.

    XPath Support

    This project supports a subset of the the XPath standard:

    • [X] Descendent selectors (//h, /parent/offspring).
    • [X] Attribute selectors (/parent/offspring[@attribute='value']).
    • [X] Tag value selectors (/parent[offspring='value']).
    • [X] Order predicate (/parent/offspring[1])

    Notable unsupported features:

    • [ ] Arithmetic comparisons (/parent/offspring[@attribute > 12.5])
    • [ ] Boolean logic (/parent/offspring[@attribute1 or @attribute2])
    • [ ] Axes (/parent/following-sibling::offspring)
    • [ ] Functions ( last(), starts-with(), contains(), text(), etc).

    https://www.w3.org/TR/1999/REC-xpath-19991116

    https://codebeautify.org/Xpath-Tester

    Install

    npm i xml2js-xpath

    DownloadsWeekly Downloads

    10,181

    Version

    0.13.0

    License

    ISC

    Unpacked Size

    47.1 kB

    Total Files

    14

    Last publish

    Collaborators

    • dsummersl