xml-converter
TypeScript icon, indicating that this package has built-in type declarations

1.0.1 • Public • Published

xml-converter

A module for converting between XML format and JavaScript objects.

Documentation in Russian

Requirements

  • Node.js version >=16.

Installation

npm i xml-converter

Examples of using

Parsing XML to JavaScript object.

const { parseXML } = require( 'xml-converter' );

const xml = `<root>
<child>
    <tag>string value</tag>
    <tag>78</tag>
</child>
</root>`;

const object = parseXML( xml );
Result
//object
{
  root: [
    {
      value: '',
      attrs: {},
      self: false,
      child: [
        {
          value: '',
          attrs: {},
          self: false,
          tag: [
            {
              value: 'string value',
              attrs: {},
              self: false,
            },
            {
              value: '78',
              attrs: {},
              self: false,
            }
          ]
        }
      ]
    }
  ],
}

Parsing JavaScript object to XML.

const { parseObject } = require( 'xml-converter' );

const object = {
    root: [
      {
        value: '',
        attrs: {},
        self: false,
        child: [
          {
            value: '',
            attrs: {},
            self: false,
            tag: [
              {
                value: 'string value',
                attrs: {},
                self: false,
              },
              {
                value: '78',
                attrs: {},
                self: false,
              }
            ]
          }
        ]
      }
    ],
  }

const xml = parseObject( object, 2 );
Result
//xml
`<root>
<child>
  <tag>string value</tag>
  <tag>78</tag>
</child>
</root>`

Arguments

parseXML( xml )

Argument Type Description
xml string Valid xml string.

parseObject( object, indentSize )

Argument Type Description
object object Valid object described in the next section.
indentSize number Indent size for xml string.

Fields and type of the object returned from the parseXML().

Field Type Description
value string Value of the XML tag.
attrs object Object with tag's attributes { attributeName: 'attributeValue' }.
self boolean Flag indicating whether the tag is self-closing.
[tag] array Array with child-tags with same tag name.
Example
//object
{
  root: [ // root tag name
    { // object, root tag
      value: '', // root tag value
      attrs: {}, // root tag attributes
      self: false,
      child: [ // child tag name
        { // object, child tag
          value: '', // child tag value...
          attrs: {},
          self: false,
          tag: [
            {
              value: 'string value',
              attrs: {},
              self: false,
            },
            {
              value: '78',
              attrs: {},
              self: false,
            }
          ]
        }
      ]
    }
  ],
}

Package Sidebar

Install

npm i xml-converter

Weekly Downloads

1

Version

1.0.1

License

MIT

Unpacked Size

13.8 kB

Total Files

9

Last publish

Collaborators

  • don-vietnam