Si el valor de un atributo se escribe entre comillas dobles ("), dicho valor no podrá contener dicho carácter. Por ejemplo, no es correcto escribir:
<dato caracter="comilla doble(")"/>
Para ello, hay que utilizar la referencia a entidad " como se muestra a continuación:
<dato caracter="comilla doble(")"/>
De igual modo ocurre con la comilla simple ('), siendo incorrecto escribir, por ejemplo:
<dato caracter='comilla simple(')'/>
Por lo que, en este caso, habría que usar ' como se muestra seguidamente:
<dato caracter='comilla simple(')'/>
Por otro lado, los valores de atributos escritos entre comillas dobles (") sí pueden contener al carácter comilla simple (') y a la inversa. Por ejemplo, es correcto escribir:
<dato caracter="comilla simple(')"/>
<dato caracter='comilla doble(")'/>
En estos casos, no es obligatorio usar las referencias a entidades, pero sí recomendable.