You have a good point. By the way, before releasing GenoPro 2007, we spent several days discussing the file format of GenoPro. Those meeting on the whiteboard were important to decide what is best for future releases of GenoPro. Our conclusion is having as much information linked to the primary record, such as all the contacts, occupations and education records grouped under the <Individual> node. Similairly, the <Unions> should be stored under the <Family> node. Having this mechanism will no longer require merging, nor having IDs for unions, contacts, occupation and education records. This will be the best of both worlds, since a user could therefore generate an XML file without having to worry about IDs.
<Individual>
<Unions>
<Family>
Since the release of GenoPro version 2.0 was late, we decided to leave it as is. Changing the XML file format at last minute could be very dangerous to introduce a fatal bug - such as having users loosing data.
Each table layout in GenoPro has a type of reference column (Reference, Father(s), Mother(s), Mate(s) etc . . .). It lists the texted name of the individual or family etc... with a hyperlink that passes, i assume, the ID of an individual or family. The Export To Text dialogue allows the user to export these columns as their Permanent IDs (in other words, the column lists the IDs instead of the individual or family names). I think it would be beneficial if GenoPro had a "referenceID" column in the table layouts as well.
I created custom tags that hold the IDs of a reference column. But the method for retrieving those IDs seems superfluous. The Export To Text dialogue can create this, so why not just have the referenceID columns already in GenoPro?
Example...
It's also good for each "reference" column to have one datum per field. Perhaps GenoPro could be setup to automatically add new columns when additional "references" are added to an individual. For example, instead of 3 mates in one cell, there would be a column for mate01, mate02 and mate03 etc . . .