code: def data_integrity(
      image_properties: List[Dict[str, Any]] = None,
      label_properties: List[Dict[str, Any]] = None,
      **kwargs,
  ) -> Suite:
      """
      Create a suite that includes integrity checks.
  
      List of Checks:
          .. list-table:: List of Checks
             :widths: 50 50
             :header-rows: 1
  
             * - Check Example
               - API Reference
             * - :ref:`vision__image_property_outliers`
               - :class:`~deepchecks.vision.checks.data_integrity.ImagePropertyOutliers`
             * - :ref:`vision__label_property_outliers`
               - :class:`~deepchecks.vision.checks.model_evaluation.LabelPropertyOutliers`
  
      Parameters
      ----------
      image_properties : List[Dict[str, Any]], default: None
          List of properties. Replaces the default deepchecks properties.
          Each property is a dictionary with keys ``'name'`` (str), ``method`` (Callable) and ``'output_type'`` (str),
          representing attributes of said method. 'output_type' must be one of:
  
          - ``'numerical'`` - for continuous ordinal outputs.
          - ``'categorical'`` - for discrete, non-ordinal outputs. These can still be numbers,
            but these numbers do not have inherent value.
  
          For more on image / label properties, see the guide about :ref:`vision__properties_guide`.
      label_properties : List[Dict[str, Any]], default: None
          List of properties. Replaces the default deepchecks properties.
          Each property is a dictionary with keys ``'name'`` (str), ``method`` (Callable) and ``'output_type'`` (str),
          representing attributes of said method. 'output_type' must be one of:
  
          - ``'numerical'`` - for continuous ordinal outputs.
          - ``'categorical'`` - for discrete, non-ordinal outputs. These can still be numbers,
            but these numbers do not have inherent value.
          - ``'class_id'`` - for properties that return the class_id. This is used because these
            properties are later matched with the ``VisionData.label_map``, if one was given.
  
          For more on image / label properties, see the guide about :ref:`vision__properties_guide`.
      **kwargs : dict
          additional arguments to pass to the checks.
  
      Returns
      -------
      Suite
          A suite that includes integrity checks.
  
      Examples
      --------
      >>> from deepchecks.vision.suites import data_integrity
      >>> suite = data_integrity()
      >>> vision_data = ...
      >>> result = suite.run(vision_data, max_samples=800)
      >>> result.show()
  
      See Also
      --------
      :ref:`vision__classification_tutorial`
      :ref:`vision__detection_tutorial`
      :ref:`vision__segmentation_tutorial`
      """
      args = locals()
      args.pop("kwargs")
      non_none_args = {k: v for k, v in args.items() if v is not None}
      kwargs = {**non_none_args, **kwargs}
  
      return Suite(
          "Data Integrity Suite",
          ImagePropertyOutliers(**kwargs),
          LabelPropertyOutliers(**kwargs),
          PropertyLabelCorrelation(**kwargs),
      )
  
imports: from typing import Any, Callable, Dict, List, Optional, Tuple, Union
  from deepchecks.vision import Suite
  from deepchecks.vision.checks import ClassPerformance, ConfusionMatrixReport, HeatmapComparison, ImageDatasetDrift, ImagePropertyDrift, ImagePropertyOutliers, LabelDrift, LabelPropertyOutliers, MeanAveragePrecisionReport, MeanAverageRecallReport, NewLabels, PredictionDrift, PropertyLabelCorrelation, PropertyLabelCorrelationChange, SimpleModelComparison, WeakSegmentsPerformance
label_desc: Use image node_id 3 for calling a global function with example usage: data_integrity(image_properties, label_properties) and returns: Suite