NanoXML: Difference between revisions

From FreeMind
Jump to navigationJump to search
No edit summary
No edit summary
Line 2: Line 2:


NanoXML is said to be an XML parser, which was perhaps true of version 1, but is now actually a collection of XML parsers. See also [[Components]].
NanoXML is said to be an XML parser, which was perhaps true of version 1, but is now actually a collection of XML parsers. See also [[Components]].
As per [https://web.archive.org/web/20040829081018/http://nanoxml.cyberelf.be/ the original web site], the parsers are as follows:
* NanoXML/Java
* NanoXML/SAX
* NanoXML/Lite
See the link above for detail.


FreeMind 1.0.1 (and multiple earlier versions) uses a modified version of '''NanoXML 2 Lite''' to parse mind map XML (and possibly for other purposes?). As per devix.com, "NanoXML/Lite" is "An extremely small (6KB) XML parser which is the successor of NanoXML 1. It only provides a limited functionality: no mixed content and the DTD is ignored."[https://web.archive.org/web/20110814134950/http://devkix.com/nanoxml.php].
FreeMind 1.0.1 (and multiple earlier versions) uses a modified version of '''NanoXML 2 Lite''' to parse mind map XML (and possibly for other purposes?). As per devix.com, "NanoXML/Lite" is "An extremely small (6KB) XML parser which is the successor of NanoXML 1. It only provides a limited functionality: no mixed content and the DTD is ignored."[https://web.archive.org/web/20110814134950/http://devkix.com/nanoxml.php].

Revision as of 11:18, 27 August 2026

(Development documentation.)

NanoXML is said to be an XML parser, which was perhaps true of version 1, but is now actually a collection of XML parsers. See also Components.

As per the original web site, the parsers are as follows:

  • NanoXML/Java
  • NanoXML/SAX
  • NanoXML/Lite

See the link above for detail.

FreeMind 1.0.1 (and multiple earlier versions) uses a modified version of NanoXML 2 Lite to parse mind map XML (and possibly for other purposes?). As per devix.com, "NanoXML/Lite" is "An extremely small (6KB) XML parser which is the successor of NanoXML 1. It only provides a limited functionality: no mixed content and the DTD is ignored."[1].

A (modified) copy of the source code is present in the FreeMind source code repository.

Files relating to NanoXML:

  • freemind\freemind\main\XMLElement.java[2]
  • freemind\freemind\main\XMLParseException.java[3]
  • freemind\freemind\modes\XMLElementAdapter.java
  • freemind\freemind\modes\browsemode\BrowseXMLElement.java
  • freemind\freemind\modes\mindmapmode\MindMapXMLElement.java

Related directories:

  • freemind\freemind\main[4]
  • etc.

In the patches tracker, there is a patch to NanoXML's XMLElement.java and other files that would enable FreeMind to store mind maps as UTF-8: https://sourceforge.net/p/freemind/patches/67/. And that patch points to User:Jiangxin/Better chinese characters support, which has a diff.

Links: