The Ext.DomQuery docs http://docs.sencha.com/touch/2-0/#!/api/Ext.DomQuery for Sencha Touch 2 describe the same Pseudo Class selectors as those available in Ext JS.

In our source XML, the locationType nodes are in random order, so a positional selector such as first-child isn't possible.

The puzzling/frustrating thing is that the exact same pseudo selector field mapping and source XML works perfectly fine under Ext JS, but just not with Sencha Touch 2 for some reason.

Before I jump to any conclusions about this being a bug, I'm hoping someone can provide some insight as to why it fails under ST2. I'm stumped!

Output:
Code:
size: undefined
size: undefined
PHP Code:
Ext.define('LRG.model.Buildings', {
    
extend'Ext.data.Model',
    
config: {
        
fields: [
            {
                
convert: function(vrec) {
                    
console.log('type_four_size:'v);
                    return 
v;
                },
                
mapping'location:has(locationType:nodeValue(4)) > size',
                
name'type_four_size'
            
}
        ]
    }
}); 
HTML Code:
<?xml version="1.0" encoding="utf-8"?>
<data>
  <item>
    <locations>
      <location>
        <locationType>4</locationType>
        <size>30</size>
      </location>
      <location>
        <locationType>7</locationType>
        <size>55</size>
      </location>
    </locations>
  </item>
  <item>
    <locations>
      <location>
        <locationType>1</locationType>
        <size>18</size>
      </location>
      <location>
        <locationType>4</locationType>
        <size>23</size>
      </location>
      <location>
        <locationType>12</locationType>
        <size>47</size>
      </location>
    </locations>
  </item>
</data>