code: def html_attribute_value(self, tag: str = None,
                               attribute: str = None) -> str:
          
          if not tag:
              tag = self.random.choice(
                  list(HTML_CONTAINER_TAGS.keys()),
              )
          if not attribute:
              attribute = self.random.choice(
                  list(HTML_CONTAINER_TAGS[tag]),  # type: ignore
              )
  
          try:
              value = HTML_CONTAINER_TAGS[tag][attribute]  # type: ignore
          except KeyError:
              raise NotImplementedError(
                  'Tag {} or attribute {} is not supported'.format(
                      tag, attribute))
  
          if isinstance(value, list):
              value = self.random.choice(value)
          elif value == 'css':
              value = self.css_property()
          elif value == 'word':
              value = self.__text.word()
          elif value == 'url':
              value = self.__inet.home_page()
          else:
              raise NotImplementedError(
                  'Attribute type {} is not implemented'.format(value))
          return value
docs: Generate random value for specified HTML tag attribute.
  
          :param tag: An HTML tag.
          :param attribute: An attribute of the specified tag.
          :return: An attribute.
          :raises NotImplementedError: if tag is unsupported.