docs: def wrap_sysmeta_pyxb(sysmeta_pyxb, read_only=False):
      """Work with the AccessPolicy in a SystemMetadata PyXB object.
  
      Args:
        sysmeta_pyxb : SystemMetadata PyXB object
          SystemMetadata containing the AccessPolicy to modify.
  
        read_only: bool
          Do not update the wrapped AccessPolicy.
  
      When only a single AccessPolicy operation is needed, there's no need to use
      this context manager. Instead, use the generated context manager wrappers.
  
      There is no clean way in Python to make a context manager that allows client code to
      replace the object that is passed out of the manager. The AccessPolicy schema does not
      allow the AccessPolicy element to be empty. However, the SystemMetadata schema
      specifies the AccessPolicy as optional. By wrapping the SystemMetadata instead of the
      AccessPolicy when working with AccessPolicy that is within SystemMetadata, the wrapper
      can handle the situation of empty AccessPolicy by instead dropping the AccessPolicy
      from the SystemMetadata.
  
      """
      w = AccessPolicyWrapper(sysmeta_pyxb.accessPolicy)
      yield w
      if not read_only:
          sysmeta_pyxb.accessPolicy = w.get_normalized_pyxb()