GEDCOM-Export: AT-Sign not doubled

Bug #986700 reported by Peter Schulz
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
webtrees
Triaged
Wishlist
Unassigned

Bug Description

The at-sign (@) must be doubled in a GEDCOM file (export process) , when it is part of a value. A single at-sign is not allowed.
The import process is ok. Double at-signs are transformed to a single one.

See GEDCOM Standard 5.5.1:
any_char:=
[alpha | digit | otherchar | (0x23) | (0x20) | (0x40)+(0x40) ]
where:
(0x23)=#
(0x20)=space character
(0x40)+(0x40)=@@

Revision history for this message
fisharebest (fisharebest) wrote :

IIRC, the code to double the "@" signs was removed a long time ago, because it was difficult to accurately an efficiently identify them.

For example, we would not double this:

1 CHIL @I123@

But we would need to double this

1 NOTE Information from john
2 CONC @example.com and mary@
2 CONC example.com

We must not double "escape sequences" such as

2 DATE BET @#DHEBREW@ 5432 AND @#DHEBREW@ 5456

On import, the logic is simpler. All double "@" signs become single "@" signs.

To my knowledge, there is no application that will have a problem with data that does not have a doubled "@".
But, incorrectly doubling an "@" *will* cause problems.

So - the logic was removed for practical reasons. It is not necessary, and nothing will break if it is removed.

Unless you are aware of an application that will reject data with un-doubled "@" signs, I'll mark this as "wishlist".

Since webtrees uses GEDCOM as its internal data format, there was also some debate as to whether we should keep the doubled "@"s in the database, or only try to add them on export.

If/when we move to a structured data model, we will be easily able to identify which data should / should not be doubled. Until then, I think it is a very low priority.

Changed in webtrees:
importance: Undecided → Wishlist
status: New → Triaged
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.