def makeView(items, view=None):
    """ Create and return a new view for the given collection.
    
    items -- given collection
    view -- an optional argument of an already existing repository view, if
    not None, a new view is NOT created and it is returned as is for reusal
    
    return DBRepositoryView
     
    """
    newView = view
    if view is None:
        newView = items.itsView.repository.createView()
    return newView
