<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def reference(cls, value):
 """ Convert as reference on column. table => "table" table.column => "table"."column" db.table.column => "db"."table"."column" table."col.umn" => "table"."col.umn" "table"."col.umn" => "table"."col.umn" """

        from sqlpuzzle._common.utils import force_text
        value = force_text(value)
        parts = re.split(r'{quote}([^{quote}]+){quote}|\.'.format(quote=cls.reference_quote), value)
        parts = ('{quote}{i}{quote}'.format(quote=cls.reference_quote, i=i) if i != '*' else i for i in parts if i)
        return '.'.join(parts)