 	
 				//trace("handleGetDataServiceMetadata",ObjectUtil.toString(event));
 
-				if (_attributeHierarchy.value == null)
+				if (!_attributeHierarchy.value)
 					_attributeHierarchy.value = <hierarchy/>;
 				
 				// add each missing category

			
			//trace("requestHierarchyFromSource("+(subtreeNode?attributeHierarchy.getPathFromNode(subtreeNode).toXMLString():'')+")");

			if (subtreeNode == null || subtreeNode == _attributeHierarchy.value)
			{
				if (hierarchyURL.value != "" && hierarchyURL.value != null)
				{

		
		private function generateRootHierarchy(tables:Array, geoms:Array):void
		{
			if (objectWasDisposed(this) || !(_attributeHierarchy.value == <hierarchy/> || !_attributeHierarchy.value))
				return;

			var tag:XML;
