Module versions

Module versions 

Source
Expand description

Multi-version DDEX support and conversion

This module provides comprehensive support for multiple DDEX ERN versions including 3.8.2, 4.2, and 4.3 with automatic conversion capabilities.

§Supported Versions

  • ERN 3.8.2: Legacy version with different namespaces and element structures
  • ERN 4.2: Intermediate version with some modern features
  • ERN 4.3: Current recommended version with full feature set

§Version Conversion

The system supports both upgrade and downgrade paths:

  • Upgrade: 3.8.2 → 4.2 → 4.3 (with feature enhancement)
  • Downgrade: 4.3 → 4.2 → 3.8.2 (with compatibility warnings)

§Examples

use ddex_builder::versions::{VersionConverter, DdexVersion};

let converter = VersionConverter::new();
let result = converter.convert_version(ddex_xml, DdexVersion::Ern382, DdexVersion::Ern43)?;

Modules§

builders
ERN 4.3 specific element builders
ern42
ERN 4.2 version support
ern43
ERN 4.3 version support
ern382
ERN 3.8.2 version support
utils
Utility functions for version handling
validation
ERN 4.3 validation functions

Structs§

CompatibilityMatrix
Version compatibility matrix
ConversionError
Conversion error (non-fatal)
ConversionMetadata
Conversion metadata
ConversionOptions
Options for version conversion
ConversionPath
Single conversion path between versions
ConversionReport
Detailed conversion report
ConversionResult
Version conversion result with detailed reporting
ConversionStrategy
Conversion strategy recommendation
ConversionWarning
Conversion warning
ConverterReport
Report of conversion process between DDEX versions
ConverterWarning
Warning generated during conversion
DetectionClue
Clue used for version detection
ElementConversion
Individual element conversion record
FeatureSupport
Feature support across versions
VersionConverter
Handles conversion between different DDEX versions
VersionDetection
Version detection result
VersionManager
Main version management interface
VersionSpec
Version-specific DDEX metadata and constraints

Enums§

ClueType
Type of version detection clue
ConversionDifficulty
Difficulty level of conversion
ConversionType
Field transformation between DDEX versions
ConversionWarningType
Type of conversion warning
ConverterResult
Result of version conversion operation
ImpactLevel
Impact level of warnings/changes
RiskLevel
Risk level of conversion strategy
SupportLevel
Level of feature support
ValidationLevel
Validation level for converted content

Functions§

get_namespace_mappings_42
Get ERN 4.2 namespace mappings
get_namespace_mappings_43
Get ERN 4.3 namespace mappings
get_namespace_mappings_382
Get ERN 3.8.2 namespace mappings
get_version_spec
Get ERN 4.3 version specification
get_xml_template_42
Get ERN 4.2 specific XML template
get_xml_template_43
Get ERN 4.3 specific XML template
get_xml_template_382
Get ERN 3.8.2 specific XML template