def generate(self, **kwargs):
if kwargs['<STR_LIT:type>'] not in ['<STR_LIT>', '<STR_LIT>']:<EOL><INDENT>raise ValueError('<STR_LIT>' % kwargs['<STR_LIT:type>'])<EOL><DEDENT>return (<EOL>self.pattern % (self.vocabulary_id, kwargs['<STR_LIT:type>'], kwargs['<STR_LIT:id>'])<EOL>).lower()<EOL>
Generate a :term:`URI` based on parameters passed.

:param id: The id of the concept or collection.
:param type: What we're generating a :term:`URI` for: `concept`
    or `collection`.
:rtype: string