Validation.xml

Pessoal, tenho uma dúvida, deve ser a ordem que eu escrevi os atributos no validation.xml
No meu validation.xml tem validação para float e para uma mascara que não permite ascii. Acontece q no campo que eu valido ascii e float ao mesmo tempo ele mostra uma validação por vez. não é possível mostrar as duas

Outro detalhe ainda mais bizarro é q se no campo float eu digitar ‘aaaa’ e no segundo campo eu digitar valores ascii, o struts só validou o ascii. O campo float passou! Ai se eu arrumar apenas o campo ascii, ai sim o struts valida o campo float.
Bizarro!

Pq isso acontece?

<global>
	<constant>
		<constant-name>DEFAULT_DATE_MASK</constant-name>
		<constant-value>^(([0-9])|([0-2][0-9])|([3][0-1]))\-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\-\d{4}$</constant-value>
	</constant>
	<constant>
		<constant-name>nonAscii</constant-name>
		<constant-value>^[0-9a-zA-Z\\/?\\:\\(\\) ,.'+{}*?!@#$%^_()&#045;]*$</constant-value>
	</constant>
</global>

<form name="transactionInstructionSubscriptionForm">
<field property="transactionDetail_loadPercentage" depends="maxlength,float,floatRange,mask">
	<msg name="float" key="errors.float" />
	<msg name="maxlength" key="errors.maxlength" />
	<msg name="floatRange" key="errors.range" />
	<msg name="mask" key="errors.maskNonAscii" />
	<arg position="0" key="Load %" resource="false" />
	<arg position="1" key="${var:maxlength}" name="maxlength" resource="false" />
	<var>
		<var-name>maxlength</var-name>
		<var-value>6</var-value>
	</var>
	<arg position="1" name="floatRange" key="${var:min}" resource="false" />
	<arg position="2" name="floatRange" key="${var:max}" resource="false" />
	<var>
		<var-name>min</var-name>
		<var-value>0</var-value>
	</var>
	<var>
		<var-name>max</var-name>
		<var-value>999.99</var-value>
	</var>
	<var>
		<var-name>mask</var-name>
		<var-value>${nonAscii}</var-value>
	</var>
</field>


<field property="notesToCounterParty_note_description" depends="maxlength,mask">
	<msg name="maxlength" key="errors.maxlength" />
	<msg name="mask" key="errors.maskNonAscii" />
	<arg position="0" key="Notes to Fund" resource="false" />
	<arg position="1" key="${var:maxlength}" name="maxlength" resource="false" />
	<var>
		<var-name>maxlength</var-name>
		<var-value>255</var-value>
	</var>
	<var>
		<var-name>mask</var-name>
		<var-value>${nonAscii}</var-value>
	</var>
</field>
</form>