class_docstr: Get JSON properties from PropertyFiles or S3 location.
  
  Attributes:
      step_name (str): The step name from which to get the property file.
      property_file (Optional[Union[PropertyFile, str]]): Either a PropertyFile instance
          or the name of a property file.
      json_path (str): The JSON path expression to the requested value.
      s3_uri (Optional[sagemaker.workflow.functions.Join]): The S3 location from which to fetch
          a Json file. The Json file is the output of a step defined with ``@step`` decorator.
      step (Step): The upstream step object which the s3_uri is associated to.
class_docstr_tok: ["Get","JSON","properties","from","PropertyFiles","or","S3","location",".","Attributes",":","step_name","(","str",")",":","The","step","name","from","which","to","get","the","property","file",".","property_file","(","Optional","[","Union","[","PropertyFile",",","str","]","]",")",":","Either","a","PropertyFile","instance","or","the","name","of","a","property","file",".","json_path","(","str",")",":","The","JSON","path","expression","to","the","requested","value",".","s3_uri","(","Optional","[","sagemaker.workflow.functions.Join","]",")",":","The","S3","location","from","which","to","fetch","a","Json","file",".","The","Json","file","is","the","output","of","a","step","defined","with","``","@","step","``","decorator",".","step","(","Step",")",":","The","upstream","step","object","which","the","s3_uri","is","associated","to","."]
docstr: Validate the s3 uri in JsonGet
docstr_tok: ["Validate","the","s3","uri","in","JsonGet"]
code: def _validate_json_get_s3_uri(self):
      """Validate the s3 uri in JsonGet"""
      s3_uri = self.s3_uri
      if not isinstance(s3_uri, Join):
          raise ValueError(
              f"Invalid JsonGet function {self.expr}. JsonGet "
              "function's s3_uri can only be a sagemaker.workflow.functions.Join object."
          )
      for join_arg in s3_uri.values:
          if not is_pipeline_variable(join_arg):
              continue
          if not isinstance(join_arg, (Parameter, ExecutionVariable)):
              raise ValueError(
                  f"Invalid JsonGet function {self.expr}. "
                  f"The Join values in JsonGet's s3_uri can only be a primitive object "
                  f"or Parameter or ExecutionVariable."
              )
  
file_path: sagemaker-python-sdk/src/sagemaker/workflow/functions.py
imports: from __future__ import absolute_import
  from typing import List, Union, Optional, TYPE_CHECKING
  import attr
  from sagemaker.workflow import is_pipeline_variable
  from sagemaker.workflow.entities import PipelineVariable
  from sagemaker.workflow.execution_variables import ExecutionVariable
  from sagemaker.workflow.parameters import Parameter
  from sagemaker.workflow.properties import PropertyFile
label_desc: Use image node_id 4 for calling the JsonGet obj's underlying member method code with example usage: obj._validate_json_get_s3_uri() without return types