zerodds-xml

Layer 3 — Schema (DDS-XML). OMG DDS-XML 1.0 parser + QoS-profile loader.

OMG DDS-XML 1.0 (formal/2018-10-01) well-formedness foundation and IDL-PSM mapping. A no_std + alloc, #![forbid(unsafe_code)] loader over the pure-Rust roxmltree backend: a generic well-formedness tree (§7.1) plus the high-level building-block loader — QoS library, types, domains, participants, applications, samples — with inheritance resolution and cycle detection (§7.2).

Spec anchors

  • OMG DDS-XML 1.0 §7.1 — XML representation syntax (general rules + schema + chameleon pattern).
  • §7.2 — XML representation of the DDS IDL PSM (datatype mapping).

Quick start

Two entry points — the high-level building-block loader and the generic well-formedness tree:

use zerodds_xml::{parse_dds_xml, parse_xml_tree};

// High-level building-block loader → DdsXml (QoS, types, domains, …)
let dds = parse_dds_xml(xml_src)?;

// …or the generic well-formedness tree → DdsXmlDocument
let doc = parse_xml_tree(xml_src)?;

Modules

  • qos / qos_parser / qos_inheritance — QoS-library profiles + inheritance.
  • types / xtypes_def / xtypes_parser — XTypes datatype definitions.
  • domain / participant / application / sample — system descriptors.
  • inheritance / resolver — chain resolution with cycle detection.
  • xsd_loader / xsd_schema / schemas — XSD support.
  • typeobject_bridge — bridge to the XTypes TypeObject.

Coverage & tests

Coverage ledger: dds-xml-1.0 (OMG DDS-XML 1.0 audit). Backed by 300+ in-crate tests; run cargo test -p zerodds-xml.

Stability

1.0.0-rc.3. 124 public items; no_std + alloc, forbid(unsafe_code).

zerodds-xml

Layer 3 — Schema (DDS-XML). OMG DDS-XML 1.0 Parser + QoS-Profile-Loader.

OMG DDS-XML 1.0 (formal/2018-10-01) Wohlgeformtheits-Foundation und IDL-PSM-Mapping. Ein no_std + alloc, #![forbid(unsafe_code)]-Loader über das pure-Rust-Backend roxmltree: ein generischer Wohlgeformtheits-Baum (§7.1) plus der High-Level-Building-Block-Loader — QoS-Library, Types, Domains, Participants, Applications, Samples — mit Inheritance-Auflösung und Cycle-Detection (§7.2).

Spec-Anker

  • OMG DDS-XML 1.0 §7.1 — XML-Representation-Syntax (General Rules + Schema + Chameleon-Pattern).
  • §7.2 — XML-Representation des DDS-IDL-PSM (Datentyp-Mapping).

Quick Start

Zwei Einstiegspunkte — der High-Level-Building-Block-Loader und der generische Wohlgeformtheits-Baum:

use zerodds_xml::{parse_dds_xml, parse_xml_tree};

// High-level building-block loader → DdsXml (QoS, types, domains, …)
let dds = parse_dds_xml(xml_src)?;

// …or the generic well-formedness tree → DdsXmlDocument
let doc = parse_xml_tree(xml_src)?;

Module

  • qos / qos_parser / qos_inheritance — QoS-Library-Profile + Inheritance.
  • types / xtypes_def / xtypes_parser — XTypes-Datentyp-Definitionen.
  • domain / participant / application / sample — System-Descriptors.
  • inheritance / resolver — Chain-Auflösung mit Cycle-Detection.
  • xsd_loader / xsd_schema / schemas — XSD-Support.
  • typeobject_bridge — Brücke zum XTypes-TypeObject.

Coverage & Tests

Coverage-Ledger: dds-xml-1.0 (OMG-DDS-XML-1.0-Audit). Abgesichert durch 300+ Crate-Tests; cargo test -p zerodds-xml.

Stabilität

1.0.0-rc.3. 124 Public-Items; no_std + alloc, forbid(unsafe_code).