docs: def assign_version_default_trigger(plpy, td):
      """Trigger to fill in legacy data fields.
  
      A compatibilty trigger to fill in legacy data fields that are not
      populated when inserting publications from cnx-publishing.
  
      If this is not a legacy publication the ``version`` will be set
      based on the ``major_version`` value.
      """
      modified_state = "OK"
      portal_type = td['new']['portal_type']
      version = td['new']['version']
      minor_version = td['new']['minor_version']
  
      # Set the minor version on collections, because by default it is
      # None/Null, which is the correct default for modules.
      if minor_version is None and portal_type in ('Collection',
                                                   'SubCollection'):
          modified_state = "MODIFY"
          td['new']['minor_version'] = 1
  
      # Set the legacy version field based on the major version.
      if version is None:
          major_version = td['new']['major_version']
          version = "1.{}".format(major_version)
          modified_state = "MODIFY"
          td['new']['version'] = version
  
      return modified_state