Criei um exemplo simples de XML, no caso tem 2 pokemons , mas pode facilmente ser testado com 1 só.
Fiz o teste de validação com o arquivo .xsd disponibilizado e funcionou, mas tenho algumas duvidas:
1- No trecho:
<xs:element name="power" minOccurs="1" maxOccurs="1">
<xs:simpleType>
<xs:restriction base="xs:integer">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="100"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
Não tenho certeza, mas o power dos moves dos pokemons não pode ser maior que 100?
2- Com relação ao HP, eu estava utilizando o valor bruto, no caso HP = 400, mas aparentemente existe uma fórmula que calcular o valor do HP de acordo com um valor entre 0-255. Não tinha visto isso antes.
3- No caso dos ataques:
<xs:element name="type" minOccurs="1" maxOccurs="2">
Cada ataque tem somente 1 tipo ou existem ataques de 2 tipos?
De qualqer forma o arquivo em anexo é compativel com o pokemon.xsd