Skip to content

musictechlab/mtl-ddex-vscode-helper

🎡 MTL DDEX Helper

Version Installs Rating Built by MusicTech Lab

MTL DDEX Helper is a VS Code extension that makes working with DDEX XML metadata (ERN, MWDR, MLC, Party ID, etc.) faster and easier.
It integrates directly with the Red Hat XML language server to provide live XSD validation, documentation hovers, and schema helpers.

MTL DDEX Helper Screenshot

Install from VS Code Marketplace


✨ Features

  • πŸ”— Jump to documentation β€” place your cursor on any XML tag (e.g. <PartyId>) and press Ctrl + Alt + D to open the official DDEX documentation.
  • βš™οΈ Namespace aware β€” works even with prefixed tags like <ern:ReleaseList>.
  • πŸ“˜ Live schema validation β€” uses Red Hat XML LSP to validate your DDEX XML in real time.
  • 🧩 Auto schema association β€” run MTL DDEX: Associate ERN Schema to link the correct ERN XSD version (e.g. 3.8.2).
  • πŸ“ Customizable tag map β€” edit assets/ddex-map.json to define tag-to-documentation URLs.
  • πŸͺΆ Lightweight & portable β€” no native dependencies, works cross-platform.

Example

<NewReleaseMessage
  xmlns:ern="http://ddex.net/xml/ern/382"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://ddex.net/xml/ern/382 http://ddex.net/xml/ern/382/release-notification.xsd">
  <ReleaseList>
    <Release>
      <DisplayArtist>John Doe</DisplayArtist>
    </Release>
  </ReleaseList>
</NewReleaseMessage>

➑️ Place your cursor on <ReleaseList> β†’ press Ctrl + Alt + D β†’ browser opens
the ReleaseList documentation.


🧩 Requirements

  • Visual Studio Code 1.80+
  • Red Hat XML extension (redhat.vscode-xml)
    β†’ automatically installed if missing
  • Node.js 18+ (for local development)

βš™οΈ Commands

Command Description
MTL DDEX: Open Docs for Tag Opens documentation link for current XML tag
MTL DDEX: Reload DDEX Map Reloads tag-to-doc mapping from assets/ddex-map.json
MTL DDEX: Associate ERN Schema Detects ERN version and sets VS Code XML file associations

🧠 Validation Workflow

  1. Syntax check β€” fast well-formedness validation using fast-xml-parser.
  2. Schema check β€” handled by Red Hat XML, using either:
    • xsi:schemaLocation in your XML, or
    • workspace-level xml.fileAssociations set via the Associate ERN Schema command.
  3. Status bar indicator β€” shows βœ… VALID or ❌ INVALID based on current diagnostics.

🧾 Release Notes

0.2.0 (2025-10-23)

  • Integrated Red Hat XML for real-time schema validation
  • Added DDEX VALID/INVALID status indicator
  • Added Associate ERN Schema command
  • Removed native xmllint/xsd dependencies
  • Improved logging and tag decorations

0.0.1 (initial)

  • Initial prototype with tag-to-documentation map

🧱 Roadmap

  • πŸ”œ Hover tooltips with tag descriptions from DDEX docs
  • πŸ”œ CodeLens: β€œOpen Docs” above tag definitions
  • πŸ”œ Auto-completion for DDEX tags based on schema
  • πŸ”œ Export validation report (JSON/Markdown)

🐞 Known Issues

  • Requires valid schemaLocation or associated schema for full validation.
  • Some ERN sub-schemas (e.g. ern-common.xsd) may require manual mapping in Red Hat XML settings.

πŸ“š Learn More


Contributing

Contributions are welcome! Please read CONTRIBUTING.md before submitting a PR.

Security

To report a vulnerability, please see SECURITY.md.

License

MIT License β€” Β© 2025 MusicTech Lab β€” see LICENSE for details.


MusicTech Lab - Rockstars Developers dedicated to the Music Industry
Website | LinkedIn | Let's talk
Crafted by musictechlab.io

About

VS Code extension for DDEX XML metadata (ERN, MWDR, MLC) with live XSD validation via the Red Hat XML server.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors