* xml.el (xml-substitute-special): Fix validity error messages to
actually show the unexpandable entity. Added validity error if &
isn't followed by an entity.
(xml-parse-tag): Concatnate any string following the a
<![CDATA[]]> section to the parsed CDATA.
* xml.el (xml-maybe-do-ns, xml-parse-tag): Produce elements in the
form
(("ns" . "element") (attr-list) children) instead of
((:ns . "element") (attr-list) children) in order to reduce the
number of symbols used.
(xml-skip-dtd): Change to use xml-parse-dtd but set
xml-validating-parsing to nil.
(xml-parse-dtd): Parse entity deleclarations in DOCTYPEs.
(xml-substitute-entity): Remove in favor of new entity substitution.
(xml-substitute-special): Rewrite in to substitute complex
entities from DOCTYPE declarations.
(xml-parse-fragment): Parse fragments from entity deleclarations.
(xml-parse-region, xml-parse-tag, xml-parse-attlist)
(xml-parse-dtd, xml-substitute-special): Make validity checks
conditioned on xml-validating-parser. Add "Not Well Formed" to
error messages about well-formedness.
indentation to text nodes and write empty elements as empty tags
instead of opening and closing tags.
(xml-debug-print): Take optional indent-string argument.
(xml-print): Alias for xml-debug-print.
parsing of both attribute and element names.
(xml-ns-parse-ns-attrs, xml-ns-expand-el, xml-ns-expand-attr)
(xml-intern-attrlist): Remove in favor of xml-maybe-do-ns.
(xml-parse-tag): Update assumed namespaces. Clean up namespace parsing.
(xml-parse-attlist): Make it do its own namespace parsing.
Use push+nreverse rather than append.
(xml-node-name, xml-node-attributes, xml-node-children):
Use defsubst rather than macros.
(xml-parse-region): Handle a nil return value from xml-parse-tag.
(xml-parse-tag): Don't skip white space. Return nil for a comment.
Concat the two strings surrounding a comment into a single string.
white spaces are relevant in the XML file
(xml-parse-file): Do not kill an existing Emacs buffer if the file
to parse was already edited. This allows for on-the-fly analysis
of XML files
(xml-parse-tag): Check that the casing is the same in the start
tag and end tag, since XML is case-sensitive. Allows for spaces
in the end tag, after the name of the tag.
(xml-parse-attlist): Allow for the character '-' in the name of
attributes, as in the standard http-equiv attribute Do not save
the properties in the XML tree, since they are not relevant