 	import weave.api.data.ColumnMetadata;
 	import weave.api.data.DataTypes;
 	import weave.api.data.IDataSource;
+	import weave.api.data.IQualifiedKey;
 	import weave.api.data.IWeaveTreeNode;
 	import weave.api.detectLinkableObjectChange;
 	import weave.api.getCallbackCollection;

	import flash.net.URLRequest;
	import flash.system.Capabilities;
	import flash.utils.getDefinitionByName;
	
	import mx.rpc.events.FaultEvent;
	import mx.rpc.events.ResultEvent;

		
		private var rootChildren:Array = null;
		
		/**
		 * Gets the projection metadata used in the geometry column.
		 */
		public function getProjection():String
		{
			return projection.value
				|| (jsonData ? jsonData.projection : null)
				|| "EPSG:4326";
		}
		/**
		 * Gets the keyType metadata used in the columns.
		 */
		public function getKeyType():String
		{
			var kt:String = keyType.value;
			if (!kt)
			{
				kt = url.value;
				if (keyProperty.value)
					kt += "#" + keyProperty.value;
			}
			return kt;
		}
		
		override protected function get initializationComplete():Boolean
