code: def _find_in_asset_store(
      self, project, subject, experiment, scan
  ) -> str:
      url = "{}/data/projects/{}/subjects/{}/experiments/{}/scans/{}?format=xml".format(
          self.api_url,
          quote_plus(project),
          quote_plus(subject),
          quote_plus(experiment),
          quote_plus(scan),
      )
  
      response = self._request_get(url)
      if response.ok:
          tree = ElementTree.fromstring(response.content)
          ele = tree.find(
              './/xnat:file[@label="DICOM"]', namespaces=xnat_ns
          )
          path = ele.get("URI") if ele is not None else ""
          if path:
              dicom_dir = os.path.dirname(
                  os.path.join(
                      self.asset_path,
                      path.replace("/data/xnat/archive/", ""),
                  )
              )
              if (
                  os.path.exists(dicom_dir)
                  and len(os.listdir(dicom_dir)) > 0
              ):
                  return dicom_dir
  
      return ""
  
imports: import io
  import logging
  import os
  import pathlib
  import shutil
  import time
  from typing import Any, Dict, List, Optional
  from urllib.parse import quote_plus
  from xml.etree import ElementTree
  import requests
  from requests.auth import HTTPBasicAuth
  from monailabel.datastore.utils.convert import nifti_to_dicom_seg
  from monailabel.interfaces.datastore import Datastore
  from monailabel.utils.others.generic import md5_digest
label_desc: Use image node_id 29 for calling the XNATDatastore obj's underlying member method code with example usage: obj._find_in_asset_store(project, subject, experiment, scan) and returns: str, dicom_dir