Se você quiser apenas substituir <author type=''><\/author> por <author type='Local'><\/author> , poderá usar o comando sed :
sed "/<fiction type='a'>/,/<\/fiction>/ s/<author type=''><\/author>/<author type='Local'><\/author>/g;" file
Mas, ao lidar com xml, recomendo um analisador / editor xml como xmlstarlet :
$ xmlstarlet ed -u /book/*/author[@type]/@type -v "Local" file
<?xml version="1.0"?>
<book>
<fiction>
<author type="Local"/>
</fiction>
<Romance>
<author type="Local"/>
</Romance>
</book>
Use o sinal -L para editar o arquivo inline, em vez de imprimir as alterações.