yEd's properties mapper supports up to 10 labels per node (or edge).
If you specify a label number greater than the number of labels already present at your nodes, a new default label will be created. E.g. GEDCOM nodes have three labels by default, thus "Map To Label No." 4, 5, 6, and 7 in your sample above will each create a new label. And since each of the new labels will be a default label, all those new labels will be in the center of the node overlapping each other.
The way to fix this problem is to create the required number of labels and to place these labels sensiby before running properties mapper. Of course, creating and placing four new labels for each node in your GEDCOM graph is very tedious. Fortunately, the task of adding labels can be slightly automated:
-
Create a user-defined palette section (see the Palette Manager documentation for details).
-
Choose one node and add the required number of new labels. (New labels can be created by right-clicking a node to open its context menu and choosing "Add Label".)
-
Right-click the modified node to open its context menu and choose "Add to Palette".
-
Select a node from the other gender.
-
Go to your user-defined palette section, right-click the template created in step 3 to open its context menu and choose "Apply". This will add the new labels to the selected node, but will also change the node's color to the template's color. Change the color (and only the color) back to the appropriate one for the gender.
-
Add this node to your user-defined palette section as well.
-
Use "Tools" -> "Select Elements" to select all male nodes.
-
Apply the template appropriate for males from your user-defiend palette section.
-
Use "Tools" -> "Select Elements" to select all female nodes.
-
Apply the template appropriate for females from your user-defiend palette section.
Aside from that, you should append ".*" (without the quotes) to your regular expressions and make sure that "Mode" is set to "Replace First Match". Without the trailing ".*" any text after the match will remain in the resulting label. E.g. if the DEAT property has the value
2 DATE 1982-02-10
2 CAUS UNKNOWN
2 ADDR
3 CITY Gothenburg
3 CTRY Sweden
your expression "(?ms).*^\d\sDATE\s(.*)$" will match only the first line and thus the result of the conversion will be
1982-02-10
2 CAUS UNKNOWN
2 ADDR
3 CITY Gothenburg
3 CTRY Sweden
whereas "(?ms).*^\d\sDATE\s(.*)$.*" will match the complete text and thus the result of the conversion will be
1982-02-10