File format: Difference between revisions

From FreeMind
Jump to navigationJump to search
(+missing attrib from 0.7.1)
 
(13 intermediate revisions by 3 users not shown)
Line 32: Line 32:
** startarrow (arrow style)
** startarrow (arrow style)
** endarrow (arrow style)
** endarrow (arrow style)
** startinclination
** endinclination


==Schema==
==Schema==


A W3C schema can be found in the CVS:
A W3C schema describing FreeMind XML file format can be found in the Git:
* [http://freemind.cvs.sourceforge.net/viewvc/freemind/freemind/freemind.xsd?view=log freemind.xsd]
* [https://sourceforge.net/p/freemind/code/ci/master/tree/freemind/freemind.xsd freemind.xsd] in Git, sourceforge.net
 
The schema was also copied to revision histories in the wiki, starting with FreeMind 0.8.0:
* [[Freemind.xsd]]


==Extensions in version 0.9.0==
==Extensions in version 0.9.0==


TODO.
Wiki documentation missing; however, the above linked freemind.xsd documents the file format as of FreeMind 1.0.1.


==XML declaration==
==XML declaration==
Line 54: Line 59:
==See also==
==See also==
* [[Character encoding]]
* [[Character encoding]]
==External links==
* [https://sourceforge.net/p/freemind/code/ci/master/tree/freemind/freemind/modes/XMLElementAdapter.java XMLElementAdapter.java] in Git, sourceforge.net -- here is where most FreeMind-specific XML parsing upon reading and the corresponding creation of FreeMind Java objects is implemented, and changes in the mind map format should be usually(?) visible here
* [https://sourceforge.net/p/freemind/code/ci/master/tree/freemind/freemind/main/XMLElement.java XMLElement.java] in Git, sourceforge.net -- the generic parsing tool from NanoXML 2 Lite, from which XMLElementAdapter.java inherits; this file should rarely see any changes
* [https://sourceforge.net/p/freemind/code/ci/master/tree/freemind/freemind/modes/NodeAdapter.java NodeAdapter.java] in Git, sourceforge.net -- saving is implemented here, but also in other classes that use XMLElement


[[Category:Development]]
[[Category:Development]]

Latest revision as of 04:46, 12 June 2023

FreeMind stores his data in own XML flavor. Up to FreeMind 0.6.5, the xml format has been unchanged.

Elements and attributes in 0.7.1

The list of elements and their attributes as of FreeMind 0.7.1 follows.

  • map (root element)
    • version (0.7.1)
  • node (parent element: node, map)
    • id (0.7.1)
    • text
    • link
    • folded
    • color
    • position (left or right, only for children of the root) (0.7.1)
  • edge (parent element: node)
    • style
    • color
    • width
  • font (parent element: node)
    • name
    • size
    • bold
    • italic
  • icon (parent element: node) (0.6.7)
    • builtin
  • cloud (parent element: node) (0.7.1)
    • color
  • arrowlink (parent element: node) (0.7.1)
    • color
    • destination (id of the target node)
    • startarrow (arrow style)
    • endarrow (arrow style)
    • startinclination
    • endinclination

Schema

A W3C schema describing FreeMind XML file format can be found in the Git:

The schema was also copied to revision histories in the wiki, starting with FreeMind 0.8.0:

Extensions in version 0.9.0

Wiki documentation missing; however, the above linked freemind.xsd documents the file format as of FreeMind 1.0.1.

XML declaration

FreeMind writes no XML declaration.

FreeMind ignores, upon reading a mind map, any XML declaration that can be present in a mind map file created by another program[verify].

An example declaration: <?xml version="1.0" encoding="UTF-8"?>

External links: W:XHTML#XML_declaration.

See also

External links

  • XMLElementAdapter.java in Git, sourceforge.net -- here is where most FreeMind-specific XML parsing upon reading and the corresponding creation of FreeMind Java objects is implemented, and changes in the mind map format should be usually(?) visible here
  • XMLElement.java in Git, sourceforge.net -- the generic parsing tool from NanoXML 2 Lite, from which XMLElementAdapter.java inherits; this file should rarely see any changes
  • NodeAdapter.java in Git, sourceforge.net -- saving is implemented here, but also in other classes that use XMLElement