The subject invention relates to systems and methods that augment
node-based programming languages to facilitate efficient data
manipulation of hierarchical data structures. In one aspect, a query or
general purpose language system is provided. The system includes a query
component to interact with hierarchical node-based data collections and a
language extension component to augment the query component to facilitate
interactions with the node-based data collections. The language extension
component supplies various functions to filter the data collections at a
granular level, re-shape the data collections, sort the data collections,
or extend the data collections with computed nodes.