xmlbuilder-js

An XML builder for node.js

Github stars Tracking Chart

xmlbuilder-js

An XML builder for node.js similar to
java-xmlbuilder.

License
NPM Version
NPM Downloads

Travis Build Status
AppVeyor Build status
Dev Dependency Status
Code Coverage

Announcing xmlbuilder2:

The new release of xmlbuilder is available at xmlbuilder2! xmlbuilder2 has been redesigned from the ground up to be fully conforming to the modern DOM specification. It supports XML namespaces, provides built-in converters for multiple formats, collection functions, and more. Please see upgrading from xmlbuilder in the wiki.

New development will be focused towards xmlbuilder2; xmlbuilder will only receive critical bug fixes.

Installation:

npm install xmlbuilder

Usage:

var builder = require('xmlbuilder');

var xml = builder.create('root')
  .ele('xmlbuilder')
    .ele('repo', {'type': 'git'}, 'git://github.com/oozcitak/xmlbuilder-js.git')
  .end({ pretty: true});

console.log(xml);

will result in:

<?xml version="1.0"?>
<root>
  <xmlbuilder>
    <repo type="git">git://github.com/oozcitak/xmlbuilder-js.git</repo>
  </xmlbuilder>
</root>

It is also possible to convert objects into nodes:

var builder = require('xmlbuilder');

var obj = {
  root: {
    xmlbuilder: {
      repo: {
        '@type': 'git', // attributes start with @
        '#text': 'git://github.com/oozcitak/xmlbuilder-js.git' // text node
      }
    }
  }
};

var xml = builder.create(obj).end({ pretty: true});
console.log(xml);

If you need to do some processing:

var builder = require('xmlbuilder');

var root = builder.create('squares');
root.com('f(x) = x^2');
for(var i = 1; i <= 5; i++)
{
  var item = root.ele('data');
  item.att('x', i);
  item.att('y', i * i);
}

var xml = root.end({ pretty: true});
console.log(xml);

This will result in:

<?xml version="1.0"?>
<squares>
  <!-- f(x) = x^2 -->
  <data x="1" y="1"/>
  <data x="2" y="4"/>
  <data x="3" y="9"/>
  <data x="4" y="16"/>
  <data x="5" y="25"/>
</squares>

See the wiki for details and examples for more complex examples.

Overview

Name With Owneroozcitak/xmlbuilder-js
Primary LanguageCoffeeScript
Program languageCoffeeScript (Language Count: 1)
Platform
License:MIT License
Release Count94
Last Release Namev15.1.1 (Posted on 2020-04-09 01:46:04)
First Release Namev0.0.1 (Posted on 2011-01-13 21:28:39)
Created At2010-11-01 20:01:15
Pushed At2023-01-05 16:24:37
Last Commit At2022-04-02 12:27:48
Stargazers Count0.9k
Watchers Count18
Fork Count110
Commits Count675
Has Issues Enabled
Issues Count203
Issue Open Count4
Pull Requests Count37
Pull Requests Open Count3
Pull Requests Close Count15
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private
To the top