Expand description
XML → TypeObject Bridge (Cluster C4.5-b).
Konvertiert das interne XML-Datenmodell aus [xtypes_def] in das
XTypes-1.3-TypeObject-Format aus zerodds-types. Wire-/Hash-Kompatibel
mit dem IDL-Lowering aus zerodds-idl::semantics::to_typeobject.
§Spec-Quellen
- OMG XTypes 1.3 §7.3.4.x — TypeObject + Minimal/Complete-Variants.
- OMG XTypes 1.3 §7.3.4.5 — MinimalStructType / EnumType / UnionType.
- OMG XTypes 1.3 Annex A — XML-Mapping.
§Scope C4.5-b (diese Stufe)
- Nur
MinimalTypeObject.CompleteTypeObjectnicht implementiert. - Top-Level-Mapping (struct, enum, union, typedef, bitmask, bitset).
- Member-Typen via
TypeRef::Primitive(direkt) oderTypeRef::Named(Lookup inTypeLibrarymit Hash-Vorberechnung). - Modifier
arrayDimensions/sequenceMaxLength/stringMaxLengthwickeln den Member-TypeIdentifier in PlainArray-/PlainSequence-/ String-Bound-Variants. - Member-IDs:
@idaus XSD wenn gesetzt, sonst sequentiell ab 1 (AUTOID_SEQUENTIAL, Spec §7.3.1.2.1.1). - Extensibility:
final/appendable/mutableausExtensibilityaufStructTypeFlag/UnionTypeFlagmappen.
§Bewusst nicht im Crate
CompleteTypeObject(kommt in Phase 6).- Forward-Declarations / Cross-Library-Refs.
- Inheritance via
baseType— der Bridge setzt zwarbase_typealsEquivalenceHashMinimal, aber Cycle-Detection bleibt Aufgabe des bestehendencrate::inheritance-Moduls. @autoid(HASH)— XML-Schema kennt keine entsprechende Annotation.
Enums§
- Bridge
Error - Fehler beim XML→TypeObject-Mapping.
Functions§
- bridge_
library - Konvertiert eine ganze
TypeLibraryin eine MapName → MinimalTypeObject. Named-Refs zwischen Types innerhalb der Library werden in einem zweistufigen Pass aufgeloest: - xml_
type_ to_ minimal_ typeobject - Wie
xml_type_to_typeobject, aber direkt alsMinimalTypeObject(ohne Discriminator-Wrapper). - xml_
type_ to_ typeobject - Konvertiert ein einzelnes XmlType-
TypeDefin einenTypeObject(Minimal-Variant).