'''
Table classes hold information about Factual tables. 

At the moment, their only purpose is to hold the table's ID for the Session
to use in building API URLs. 

To use a new Factual table, subclass Table and set _table_id as a class variable
holding the new table's ID. 

'''

class Table(object):
	_table_id = None
	def __init__(self, id=None):
		self._id = id
		# todo: query and cache schema for table?
	def _get_id(self):
		if self._id:
			return self._id
		else:
			return self._table_id
	id = property(_get_id)

class USPOI(Table):
	_table_id = "s4OOB4"

class USLocalPlaypen(Table):
	_table_id = "Nj0JN3"

class AULocalPlaypen(Table):
	_table_id = "eN7l2X"



@@ -541,110 +541,492 @@
 ):%0A%09
-_table_id = %22s4OOB4%22%0A%0Aclass USLocalPlaypen(Table):%0A%09_table_id = %22Nj0JN3%22%0A%0Aclass AULocalPlaypen(Table):
+'''%0A%09US POI and Business Listings table%0A%09http://www.factual.com/t/s4OOB4/US_POI_and_Business_Listings%0A%09'''%0A%09_table_id = %22s4OOB4%22%0A%0Aclass USLocalPlaypen(Table):%0A%09'''%0A%09Playpen for U.S. local data table for experimenting with API calls%0A%09http://www.factual.com/t/Nj0JN3/POI_and_Local_sandbox_Los_Angeles_CA%0A%09'''%0A%09_table_id = %22Nj0JN3%22%0A%0Aclass AULocalPlaypen(Table):%0A%09'''%0A%09Playpen for Australian local data%0A%09http://www.factual.com/t/eN7l2X/Sydney_POI_and_Business_Listings_API_PLAYGROUND%0A%09'''
 %0A%09_t
@@ -1044,10 +1044,8 @@
 eN7l2X%22%0A
-%0A%0A

Document tables.