Enex import - error with ampersand (&) in title

(Below some information about the system and how to reproduce the error)

Hi, I have migrated my 500+ notes from Simple Note to Joplin using a home-made script.

In the process I discovered that notes that include the ampersand character ("&") in the title caused an import error.

The error disappears and the “&” is rendered correctly if I change “&” to “&”

Is this the expected behavior? I realize this may be an enex/xml issue. I can’t quite understand why the enex format excludes the title from the “transparent” markdown.
Perhaps because it is not included in the CDATA block?



Joplin Versions


$joplin version
joplin 1.0.163 (prod)


Joplin 1.0.201 (prod, linux)

Client ID: 9384189f71b04813b5a92d998b4201bd
Sync Version: 1
Profile Version: 28

Revision: e65af8c (master)

Offending ENEX file

$ cat test.error.title.enex

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE en-export SYSTEM "http://xml.evernote.com/pub/evernote-export3.dtd">
<en-export export-date="20200430055934Z">

<title>Test with ampersand -- I mean this character: & -- in title </title>
    <![CDATA[<?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <!DOCTYPE en-note SYSTEM "http://xml.evernote.com/pub/enml2.dtd">
       Test with ampersand -- I mean this character: & -- in title 

#H1 here is a title
and some text 



Joplin CLI output

Line 7,char 55 is the character immediately after the ‘&’ in the enex file

$ joplin import  test.error.title.enex 
Importing notes... 
Error: Invalid character in entity name 
Line: 7 Column: 55 Char:   
Found: 1. Created: 0.

Joplin GUI output –

no feedback - screen appears to freeze
(will write a separate topic on this behavior if not covered elsewere)