Pattern para validar email em XML

Pessoal,

em um xsd, validador de XML, tem um campo de email com o seguinte pattern:

<xs:pattern value="^([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\w]*[0-9a-zA-Z]\.)+[a-zA-Z]{2,9})$" />

O caso é que nenhum email passa nesse pattern, tudo dá inválido por mais simples que seja, imagino que haja erro.

Alguém sabe interpretar essa fórmula?

Tive o mesmo problema a algum tempo atras…

resolvi apenas removendo da regex os caracteres do início e final de linha ("^" e “$”)