 			list = source.getTagLookup()[id];
 		if (list)
 			return updateChildren(list, function(node:SocrataNode, view:Object):void {
-				node.action = GET_DATASOURCE;
-				node.id = view['id'];
+				if (view.viewType == 'tabular')
+				{
+					node.action = GET_DATASOURCE;
+					node.id = view['id'];
+				}
+				else
+				{
+					node.action = METADATA_LIST;
+					node.id = view['name'] || view['id'];
+				}
 				node.metadata = view;
 			});
 		

import weave.services.URLRequestUtils;
import weave.utils.VectorUtils;

internal class SocrataNode implements IWeaveTreeNode, IColumnReference, IWeaveTreeNodeWithPathFinding
{
	public static const VIEW_LIST:String = 'view_list';
	public static const CATEGORY_LIST:String = 'category_list';

			return internalNode.hasChildBranches();
		
		if (action == GET_DATASOURCE)
			return false;
		if (action == METADATA_LIST || action == METADATA_SHOW)
			return false;
		
		return getChildren().length > 0;
