skoe:
"Well, thats true. But what if game X implements something ever so slightly different -- and we both create clients that use this format. Your client might work fine, but mine doesn't know about the extra features of game X."
You're talking about unofficial extensions to the XML (eg: families can claim secondary homesystems (an actual core), or a 1 on 1 galaxy without families is being played). Assuming the minimum is implemented to begin with, any extra information contained in the file is at worst ignored. That's forward compatibility.
One reason I'm hesitant to add a game_id tag is the potential for name collisions/duplication. Is this game IC or ic or or "Imperial Conflict"? What do we do with Ectroverse, where anybody can run their server? Everyone can't have the same tag, but how do we stop duplication? And is the mapgen program really going to have to understand all of these different possible tag/attributes combinations on a per-game basis?
Do you think it makes sense to allow extending the file the same way you can for sitemaps?
http://www.sitemaps.org/protocol.php#extending
Then a particular program could decide from the new xmlns whether or not it supports the extra stuff. I'm not very familiar with XML namespaces, so I don't know exactly how that would work.
"Another thing you could include: The author of the map file (who created it). Its not really that important in the grand scheme of things, but its still nice to give credit where credit is due. For example i think i read somewhere that you (Smartys) created a mapfile for Capri. Credit should be given to you within that file."
Yes, it is. However, like I said, I envision a future where creating this file is done entirely automatically or is made to be much less of a chore than it is now. The author is really non-important in that context.
---
Flint:
"It means the simplicity of the text file would make it so easy to make a wide variety of possible map gens from a wide variety of angles. I could make a map using excel and MSWord for instance, with ease, from such a text file. Simplicity is important in an application."
And what happens when I decide to add a new attribute to systems, to mark them as uninhabitable (one possible game-specific extension). How would your format cope with that? I'm still not sure how your format copes with homesystems, or how it stores other galaxy meta-data (eg: number of systems, number of sectors).
XML is never going to win on the basis of size or parsing speed. However, where it excels is readability and extensibility. Your format would definitely result in a smaller file, especially compressed. Also, as skoe pointed out, XML parsing requires parsing the entire document first and then inferring meaning, whereas with a binary file format you always know where you are (unless someone followed the spec wrong
). However, parsing has to be done once, when the file is opened. It doesn't need to be done 100x per second. And, unless I'm mistaken, I can't just add random attributes to systems in your format and still have my file work. 
Also, saying that you don't need documentation to understand your file is disingenuous. It may seem that way to you because you came up with the format, but someone opening up the file would have very little idea what the format is without documentation of some kind. For instance: who's to say the 0s aren't systems, since 0 is associated with success for executables in Linux? At best, trial and error would be needed if there were documentation (it took me a lot of work to get the current map file format right, even though I had a well documented generator to base my code off of). XML, on the other hand, is largely self-documenting. There will be an xmlns file at some point which provides explicit documentation, but the tag names themselves carry a lot of meaning. People can understand what editing certain attributes, removing certain tags, etc does.
---
Arachnophobia
"I dont quite get why a binary file or a two dimensional text file would be bad. The users arent supposed to read it anyways, just the program, which can be independend from systems. And with a format as proposed by flint, it would still be readable for the users. Even better readable than an xml file, because you could get a visual representation of the map "in ASCII art". And the file size would still be very small."
Extensibility is, I would say, the biggest advantage of XML. If a new feature is added to a game (I've mentioned a few examples earlier in the post), new tags or attributes can easily be added to deal with them. Not so with a binary format.
Size isn't really a factor, since the worst case XML is unrealistic and still compresses very nicely.
CLEAR YOUR CACHE!
http://www.microsoft.com/windows/ie/usi … cache.mspxDo not read this fortune under penalty of law.
Violators will be prosecuted.
(Penal Code sec. 2.3.2 (II.a.))