From a7c74625e33b83519e3182a8553aa39763591f02 Mon Sep 17 00:00:00 2001 From: Matt Farina Date: Wed, 26 Jun 2013 10:11:44 -0400 Subject: Added basic architectural documentation for the serializer/writer --- src/HTML5/Serializer/README.md | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 src/HTML5/Serializer/README.md diff --git a/src/HTML5/Serializer/README.md b/src/HTML5/Serializer/README.md new file mode 100644 index 0000000..17e3f75 --- /dev/null +++ b/src/HTML5/Serializer/README.md @@ -0,0 +1,33 @@ +# The Serializer (Writer) Model + +The serializer roughly follows sections _8.1 Writing HTML documents_ and section +_8.3 Serializing HTML fragments_ by converting DOMDocument, DOMDocumentFragment, +and DOMNodeList into HTML5. + + [ Serializer ] // Interface for saving. + || + [ Traverser ] // Walk the DOM + || + [ Rules ] // Convert DOM elements into strings. + || + [ HTML5 ] // HTML5 document or fragment in text. + + +## The Serializer + +Provides the top level interface for saving. + +## The Traverser + +Walks the DOM finding each element and passing it off to the output rules to +convert to HTML5. + +## Output Rules + +The output rules are defined in the RulesInterface which can have multiple +implementations. Currently, the OutputRules is the default implementation that +converts a DOM as is into HTML5. + +## HTML5 String + +The output of the process it HTML5 as a string or saved to a file. \ No newline at end of file -- cgit v1.2.3