'Constructor
@param resource: the S3Resource
@param list_fields: the list fields
(list of field selector strings)
@param records: the records
@param start: index of the first item
@param limit: maximum number of items
@param total: total number of available items
@param list_id: the HTML ID for this list
@param layout: item renderer (optional) as function
(list_id, item_id, resource, rfields, record)
@param row_layout: row renderer (optional) as
function(list_id, resource, rowsize, items)'

def __init__(self, resource, list_fields, records, start=None, limit=None, total=None, list_id=None, layout=None, row_layout=None):

    self.resource = resource
    self.list_fields = list_fields
    self.records = records
    if (list_id is None):
        self.list_id = 'datalist'
    else:
        self.list_id = list_id
    if (layout is not None):
        self.layout = layout
    else:
        self.layout = S3DataListLayout()
    self.row_layout = row_layout
    self.start = (start if start else 0)
    self.limit = (limit if limit else 0)
    self.total = (total if total else 0)
