title: Ansible json_query outputs list when using a filter expression
body: <p>I'm running ansible 2.4.0 on OSX.
  The following playbook...</p>
  
  <pre><code>---
  - hosts: localhost
    connection: local
    gather_facts: False
  
    vars:
      data:
      - name: thing1
        desc: I am thing 1
      - name: thing2
        desc: I am thing 2
  
    tasks:
    - debug: msg="{{ data|json_query(\"[1].desc\") }}"
    - debug: msg="{{ data|json_query(\"[?name=='thing2'].desc\") }}"
  </code></pre>
  
  <p>Produces the following output:</p>
  
  <pre><code>PLAY [localhost] ***************************************************************
  
  TASK [debug] *******************************************************************
  ok: [localhost] =&gt; {
      "msg": "I am thing 2"
  }
  
  TASK [debug] *******************************************************************
  ok: [localhost] =&gt; {
      "msg": [
          "I am thing 2"
      ]
  }
  
  PLAY RECAP *********************************************************************
  localhost                  : ok=2    changed=0    unreachable=0    failed=0
  </code></pre>
  
  <p>My question is, why, in the second debug task is the output in a list ([])?</p>