A Rust crate providing a reasonably faithful implementation of the W3C Document Object Model Core, Level 2.
This crate provides a trait-based implementation of the DOM with minimal changes to the style and semantics defined in the Level 2 specification. The specific mapping from the IDL in the specification is described in the documentation, however from a purely style point of view the implementation has the following characteristics:
_data
, _node
) have been reduced for brevity/clarity.xml_dom::convert
module.```rust use xmldom::*; use xmldom::convert::*;
let implementation = getimplementation(); let mut documentnode = implementation .create_document("http://www.w3.org/1999/xhtml", "html", None) .unwrap();
let document = asdocumentmut(&mut documentnode).unwrap(); let mut rootnode = document.document_element().unwrap();
let root = aselementmut(&mut rootnode).unwrap(); root.setattribute("lang", "en"); let head = root.appendchild(document.createelement("head").unwrap()); let _body = root.appendchild(document.create_element("body").unwrap());
let xml = documentnode.tostring(); println!("HTML: {}", xml); ```
Version 0.1.1 (in progress)
Display
formattingappend_child
rule supportVersion 0.1.0
DocumentFragment
, Entity
, EntityReference
, or Notation
.Document::get_element_by_id
always returns None
.unimplemented!()
.reader
feature to de-serialize using crate quick_xml
.