Skip to main content

DDEX Suite

Parse → Modify → Build DDEX metadata with perfect fidelity

Parse

Transform DDEX XML into structured data

Modify

Update metadata with clean, typed objects

Build

Generate deterministic, compliant XML

Parser versionBuilder versionLicenseDownloads

Performance Benchmarks

25-30 MB/s (complex files)
Production Parse Speed
1,265 MB/s (optimal)
Peak Throughput
90% reduction (100MB→9.4MB)
Memory Efficiency
114KB (77% under target)
WASM Bundle

v0.4.1 Enhanced Performance

10KB
<5ms
1MB
<50ms
10MB
<400ms
100MB
<3.6s
1GB
<36s

Parse → Modify → Build in Four Languages

// Parse DDEX
const { DdexParser } = require('ddex-parser');
const parser = new DdexParser();
const data = await parser.parse(xmlString);

// Build DDEX
const { DdexBuilder } = require('ddex-builder');
const builder = new DdexBuilder();
builder.applyPreset('spotify_album'); // optional
const xml = await builder.build(request);

// Batch process
const { batchBuild } = require('ddex-builder');
const results = await batchBuild(jsonStringArray);
npm install ddex-parser ddex-builder

Parser vs Builder: Complementary Powerhouses

DDEX Parser

Transform DDEX XML into clean, structured data

Multi-Version Support
ERN 3.8.2, 4.2, and 4.3
Dual Representations
Graph and flattened data models
DataFrame Integration
Native pandas/polars support
Streaming Parser
Handle GB+ files efficiently
Detailed Errors
Precise validation feedback
Parser Docs →

DDEX Builder

Generate deterministic, compliant DDEX XML

Deterministic Output
Byte-perfect reproducibility
Platform Presets
Spotify, Apple, YouTube ready
Preflight Validation
Catch errors before building
DB-C14N/1.0
Industry-standard canonicalization
DataFrame Builder
Build from structured data
Builder Docs →

Why Choose DDEX Suite?

Purpose-built for DDEX processing, not adapted from generic XML tools

Performance
15x faster than XML parsers
Slow, memory-intensive parsing
Data Fidelity
Perfect round-trip guarantee
Data loss during transformations
Multi-Platform
Native Node.js, Python, WASM, CLI
Single language or poor bindings
Developer Experience
TypeScript definitions, detailed errors
Poor documentation, cryptic errors
Industry Standards
DB-C14N/1.0, platform presets
Generic XML tools
Scalability
Stream GB+ files with <100MB memory
Memory explosion with large files