Hierarchies and Levels now have full_name and Query now supports union function.

I'm really curious how you've been able to get by creating queries with mondrian-olap that select data across two levels within the same hierarchy.  All examples I see create a basic cross-product of the levels to each other using a sub nesting of cross joins and unions.  For example in Foodmart selecting Promotion Sales by Country and City and Product Family:

SELECT
NON EMPTY Hierarchize(Union(CrossJoin([Customers].[Country].Members, [Product].[Product Family].Members), CrossJoin([Customers].[City].Members, [Product].[Product Family].Members))) ON COLUMNS,
NON EMPTY {Hierarchize({[Measures].[Promotion Sales]})} ON ROWS
FROM [Sales]