code: def _metadata_props(
      self, metadata_props
  ):  # pylint: disable=missing-function-docstring
      json_metadata = []
      metadata_props = [
          [entry.key, entry.value] for entry in metadata_props
      ]
      metadata = collections.OrderedDict(metadata_props)
      value = metadata.get("converted_from")
      if value:
          json_metadata.append({"name": "source", "value": value})
      value = metadata.get("author")
      if value:
          json_metadata.append({"name": "author", "value": value})
      value = metadata.get("company")
      if value:
          json_metadata.append({"name": "company", "value": value})
      value = metadata.get("license")
      license_url = metadata.get("license_url")
      if license_url:
          value = (
              "<a href='"
              + license_url
              + "'>"
              + (value if value else license_url)
              + "</a>"
          )
      if value:
          json_metadata.append({"name": "license", "value": value})
      if "author" in metadata:
          metadata.pop("author")
      if "company" in metadata:
          metadata.pop("company")
      if "converted_from" in metadata:
          metadata.pop("converted_from")
      if "license" in metadata:
          metadata.pop("license")
      if "license_url" in metadata:
          metadata.pop("license_url")
      for name, value in metadata.items():
          json_metadata.append({"name": name, "value": value})
      return json_metadata
  
imports: import collections
  import enum
  import json
  import os
label_desc: Use image node_id 3 for calling the _Model obj's underlying member method code with example usage: obj._metadata_props(metadata_props) and returns: json_metadata