moddle-xml v11.0.0
moddle-xml
Read and write XML documents described with moddle.
Usage
Get the libray via npm
npm install --save moddle-xml
Bootstrap
Create a moddle instance
import { Moddle } from 'moddle';
import {
Reader,
Writer
} from 'moddle-xml';
const model = new Moddle([ myPackage ]);
Read XML
Use the reader to parse XML into an easily accessible object tree:
const model; // previously created
const xml =
'<my:root xmlns:props="http://mypackage">' +
'<my:car id="Car_1">' +
'<my:engine power="121" fuelConsumption="10" />' +
'</my:car>' +
'</my:root>';
const reader = new Reader(model);
const rootHandler = reader.handler('my:Root');
// when
try {
const {
rootElement: cars,
warnings
} = await reader.fromXML(xml, rootHandler);
if (warnings.length) {
console.log('import warnings', warnings);
}
console.log(cars);
// {
// $type: 'my:Root',
// cars: [
// {
// $type: 'my:Car',
// id: 'Car_1',
// engine: [
// { $type: 'my:Engine', powser: 121, fuelConsumption: 10 }
// ]
// }
// ]
// }
} catch (err) {
console.log('import error', err, err.warnings);
}
Write XML
Use the writer to serialize the object tree back to XML:
var model; // previously created
var cars = model.create('my:Root');
cars.get('cars').push(model.create('my:Car', { power: 10 }));
var options = { format: false, preamble: false };
var writer = new Writer(options);
var xml = writer.toXML(bar);
console.log(xml); // <my:root xmlns:props="http://mypackage"> ... <my:car power="10" /></my:root>
License
MIT
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
3 years ago
3 years ago
4 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago