🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more

xml-js-builder

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

xml-js-builder

XML library to ease the use of XML with namespaces

1.0.3
latest
Version published
Weekly downloads
12K
11.5%
Maintainers
1
Weekly downloads
 
Created

xml-js-builder npm Version Build Status

This is a npm library which ease the use of XML with namespaces.

This way, parsing <tag xmlns="ns"/> will be reachable by .find('ns:tag') instead of having to check the attributes to know if it is in the right namespace.

The xmljs.XML.parse(...) can parse XML, JSON (compact and extended) from xml-js.

Install

npm install xml-js-builder

Usage

const xmljs = require('xml-js-builder');

const xml = xmljs.XML.parse(myXML);

try
{
    const text = xml.find('DAV:tag').find('DAV:subtag').findText();
    const texts = xml.find('DAV:tag').findMany('DAV:subtags').map((tag) => tag.findText());

    // [...]
}
catch(ex)
{
    console.error(ex);
}
const xmljs = require('xml-js-builder');

// <d:multistatus xmlns:d="DAV:" xmlns:x="ok:"> ... </d:multistatus>
const xml = new xmljs.XMLElementBuilder('d:multistatus', {
    'xmlns:d': 'DAV:',
    'xmlns:x': 'ok:'
});
// <d:deep xmlns="ttt:"><test/></d:deep>
xml.ele('d:deep', {
    'xmlns': 'ttt:'
}).ele('test');
// <d:node2>Ok1</d:node2>
xml.ele('d:node2').add('Ok1')
// <d:node2>Ok2</d:node2>
xml.ele('d:node2').add('Ok2')
// <d:tag/>
xml.ele('d:tag')
// <x:test/>
xml.ele('x:test')
// <d:nons>yes</d:nons>
xml.ele('nons').add('yes')
// <d:node2>Ok3</d:node2>
xml.ele('d:node2').add('Ok3')

console.log(xml.toJSON());
console.log(xml.toXML());

FAQs

Package last updated on 06 May 2018

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts