code: def metadata_path(self):
          
          xml_name = _granule_identifier_to_xml_name(self.granule_identifier)
          metadata_path = os.path.join(self.granule_path, xml_name)
          try:
              assert os.path.isfile(metadata_path) or \
                  metadata_path in self.dataset._zipfile.namelist()
          except AssertionError:
              raise S2ReaderIOError(
                  "Granule metadata XML does not exist:", metadata_path)
          return metadata_path
docs: Determine the metadata path.