A filtragem e a pesquisa de árvore de Dijit não estão funcionando no ObjectStoreModel

Eu criei uma árvore de dijit e uma caixa de texto e quero filtrar os nós da árvore com base nas palavras-chave fornecidas na caixa de texto. Eu implementei a solução fornecida em outra pergunta, mas ela não parece funcionar. Quando o usuário digita alguma palavra na caixa de texto, a árvore é preenchida novamente com os mesmos dados.

Pesquisa e atualização de árvores

A seguir está o meu código:

require(["dijit/form/TextBox","dojo/store/Memory","dijit/tree/ObjectStoreModel","dijit/Tree","dojo/domReady!"],     function(TextBox, MemoryStore, ObjectStoreModel, Tree) {

var searchBox = new TextBox({
    placeHolder: "[  Type here to search  ]"
}, "searchBox");

searchBox.on("blur", function() {
    tree.model.store.query({
        name: "*" + searchBox.value + "*"
    });

 /*the below approach has been taken from the other question*/
    tree.model.store.clearOnClose = true;
    /*tree.model.store.close(); //This is not working?*/
    delete tree._itemNodesMap;
    tree._itemNodesMap = {};
    tree.rootNode.state = "UNCHECKED";
    delete tree.model.root.children;
    tree.model.root.children = null;
    tree.rootNode.destroyRecursive();
    tree.model.constructor(tree.model)
    tree.postMixInProperties();
    tree._load();

});

var store = new MemoryStore({
    idProperty: "id",
    getChildren: function(object) {
        return this.query({
            parent: object.id
        });
    },
    data: [{
        id: "0",
        name: "Root Node",
        parent: null
    }, {
        id: "1",
        name: "File",
        parent: "0"
    }, {
        id: "2",
        name: "System",
        parent: "0"
    }, {
        id: "3",
        name: "Diagnosis",
        parent: "0"
    }, {
        id: "4",
        name: "Management",
        parent: "0"
    }]
});

var model = new ObjectStoreModel({
    store: store,
    query: {
        id: "0"
    }
});

var tree = new Tree({
    model: model,
    showRoot: false
}, "treeDiv");

tree.startup();

});

Veja o código de exemplo em JSFIDDLE: http://jsfiddle.net/xLfdhnrf/16/

A árvore e a caixa de texto estão processando bem, apenas a pesquisa não está funcionando, alguma sugestão? Também por que o sinal EXPANDIR (+) está sendo exibido com nós de folha?

questionAnswers(1)

yourAnswerToTheQuestion