def METHOD_NAME(self):
    """ Required by the Directive interface. Create docutils nodes """
    options = {
        'title': ' '.join(self.arguments),
        'classes': self.options.get('class', ''),
        'url': self.options.get('url', ''),
        'author': self.options.get('author', ''),
        'author_url': self.options.get('author_url', ''),
        'isbn_13': self.options.get('isbn_13', ''),
        'isbn_10': self.options.get('isbn_10', ''),
        'asin': self.options.get('asin', ''),
        'image_url': self.options.get('image_url', ''),
    }
    if options['image_url']:
        options['image_url'] = CODE_IMAGE.format(**options)
    if options['author']:
        if options['author_url']:
            options['author'] = CODE_AUTHOR_WITH_URL.format(**options)
        else:
            options['author'] = CODE_AUTHOR.format(**options)
    if options['isbn_13']:
        options['isbn_13'] = CODE_ISBN_13.format(**options)
    if options['isbn_10']:
        options['isbn_10'] = CODE_ISBN_10.format(**options)
    if options['asin']:
        options['asin'] = CODE_ASIN.format(**options)
    options['book_number'] = ''
    if options['isbn_13'] or options['isbn_10'] or options['asin']:
        options['book_number'] = CODE_BOOK_NUMBER.format(**options)
    options['review'] = ''
    for line in self.content:
        options['review'] += u'<p>{0}</p>'.format(line)
    if options['review']:
        options['review'] = CODE_REVIEW.format(**options)
    if options['url']:
        options['url'] = CODE_URL.format(**options)
    else:
        options['url'] = CODE_TITLE.format(**options)
    options['title'] = CODE_BOOK.format(**options)
    return [nodes.raw('', CODE.format(**options), format='html')]