the problem is that the CVS people are using automatic scripts that actually
*break* their maps. The emphasis is on "break". The scripts they are using
are damaging their maps as soon as there are any hyperlinks within one map.
Now you are saying that IDs are also used for hyperlinks *between* maps; a
script processing one map at a time has no way of knowing which IDs to drop.
So I think that the fact that IDs are also used for hyperlinks between maps
is one more reason to actually store only those IDs in the XML file that are
really needed. Keeping track of the number of users of node IDs should be an
easy software engineering exercise.
Having a user option AKA preference to store all IDs is surely okay, for the
case that some users would want to have IDs everywhere.
On Jan 9, 2008 6:27 PM, Christian Foltin (GMX) < christian.foltin@...>
> Hi Dan,
> According to subtopic 2: nowadays, the IDs are also used to realize links
> between different maps in the style "map_name.mm#id". This would not be
> possible if we remove the ids. This is the crucial reason not to remove the
> ids from the files.
> And, as you reported, the CVS people can use automatic scripts, that
> remove them.
> I hope that you accept this,
> Dan Polansky schrieb:
> Hi Chris,
> Subtopic 1: the behavior of 0.8.0 as regards node IDs. Indeed, if a new
> map is created in 0.8.0 rather than opened in 0.8.0, the IDs are stored in
> every node. However, if a map without IDs is opened in 0.8.0 , changed,
> and saved from it, then not all nodes have IDs. This I am writing for the
> sake of completeness.
> So this issue must have slipped during the review process of 0.8.0.
> Subtopic 2: How to persist only necessary IDs. I understand that the IDs
> are needed for at least four purposes:
> * undo
> * connectors
> * internal links, that is, hyperlinks between nodes
> * certain export to HTML, for anchors.
> >From among these cases, only connectors and internal links require that
> IDs are persisted. I think it should be not too hard to tell whether the ID
> of a node needs to be persisted: if (a) the node is a target of a connector,
> or (b) node is a target of an internal link.
> Subtopic 3: What should we do with node IDs. That persisting only some IDs
> is technically possible does not yet mean that this is what we should do.
> Still, I tend to think we should store only necessary IDs, to make the XML
> more tidy, and make the life of CVS people easier. Some CVS people have been
> dropping IDs altogether from their files, using a sed command, as can be
> seen from
> The command that I have in mind is
> sed -e "s/
> \(CREATED\|MODIFIED\|ID\|POSITION\|FOLDED\)=\"[0-9a-zA-Z_]*\"//g" Old.mm >
> But when they did, they broke all the connectors and internal links that
> they might have in their maps.
> Best regards,