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

			var proxyColumn:ProxyColumn = request.proxyColumn;
			var hierarchyNode:XML = HierarchyUtils.getLeafNodeFromPath(pathInHierarchy);
			// if the node does not exist in hierarchy anymore, create a new XML separate from the hierarchy.
			if (hierarchyNode == null)
				hierarchyNode = <attribute/>;
			else
				proxyColumn.setMetadata(hierarchyNode);

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

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