consider both types:
<select name="garden">
<option>Flowers</option>
<option selected="selected">Shrubs</option>
<option>Trees</option>
<option selected="selected">Bushes</option>
<option>Grass</option>
<option>Dirt</option>
</select>
Is @val for actually indicating the value="" attribute ?
Is @value for indicating the innerText value ?
for example what happens if <option> doesn't contain any value="" property. how would you select it then ?
select/option[@value = "Grass"]
Does Xpath automatically ignore white spaces for the case above? Should it be trimmed?
EDIT:
for selecting multiple options would this suffice ?
select/option[normalize-space(text())="Grass" or normalize-space(text())="Trees"]