Socket
Socket
Sign inDemoInstall

xml-js-builder

Package Overview
Dependencies
2
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    xml-js-builder

XML library to ease the use of XML with namespaces


Version published
Weekly downloads
2K
decreased by-36.49%
Maintainers
1
Install size
485 kB
Created
Weekly downloads
 

Readme

Source

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());

Keywords

FAQs

Last updated on 06 May 2018

Did you know?

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

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc