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§

utils
Utility functions for version handling

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
ConverterWarning
DetectionClue
Clue used for version detection
ElementConversion
Individual element conversion record
Ern42Constraints
ERN 4.2 specific constraints and validation rules
Ern43Constraints
ERN 4.3 specific constraints and validation rules
Ern382Constraints
ERN 3.8.2 specific constraints and validation rules
FeatureSupport
Feature support across versions
ValidationRule
Validation rule definition
VersionConverter
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
Type of conversion performed
ConversionWarningType
ConverterResult
ImpactLevel
Impact level of warnings/changes
RiskLevel
Risk level of conversion strategy
SupportLevel
Level of feature support
ValidationLevel
Validation level for converted content
ValidationRuleType
Type of validation rule

Functions§

get_validation_rules
Get ERN 3.8.2 specific element validation rules