Written book titles use plain text instead of raw json text. I suspect this was overlooked because books use the tag Item.tag.title instead of Item.tag.display.Name like other items.
It looks like almost everything is stored as raw json text in 1.14 instead of plain text. This is nice for a number of reasons - full in-game text formatting support without the section symbol, being able to copy the text using /data modify, not needing legacy text code...
As a side effect of this, attempting to copy a book title to certain other places, such as block/entity names, results in an error:
/execute as @e[type=minecraft:item_frame,sort=nearest,limit=1] run data modify entity @s CustomName set from entity @s Item.tag.title
An unexpected error occured trying to execute that commandThis can be confirmed by signing a book and quill, dropping it on the ground, and noting that
/data get entity @e[type=minecraft:item,sort=nearest,limit=1] Item.tag.titlereturns the title as a normal string tag,
/data get entity @e[type=minecraft:item,sort=nearest,limit=1] Item.tag.display.Namereturns the error
Found no elements matching Item.tag.displayand that running
/data modify entity @e[type=minecraft:item,sort=nearest,limit=1] Item.tag.title set value '{"text":"Hi"}'and picking up the book sets the title to
{"text":"Hi"}instead of
Hi
Can't reproduce in 1.15 pre-release 1.