Symbol: !export_object
loading x elements...

Name: !export_object

Creator: None (system-internal Symbol).

Private: False

Description:
Create a Tag with this Symbol to export an object from this Scenario so that it can be loaded into other Scenarios. Use !scenario_chat_object_import_input_status to enable the import of objects created with !export_object.

Exported objects can be files and/or structures of Tags that form a directed acyclic graph. Any objects referenced by exported Tags that are not themselves exported are replaced with ?placeholder_for_missing_value.

The comment of this Tag is the description that will be given to the exported object. This Tag must have exactly one argument, which must be a Tag with a Symbol that starts with 'export_'. That export_ Tag defines the object that will be extracted as follows:

The arguments of the export_ Tags are the starting point of the extraction process. There must be at least one, and several unrelated objects can be extracted at once.

The export process expands outwards from the starting points by looking at all Tags targeting them, and all arguments targeted by Tags that are already selected. Each encountered Tag is compared to a filter and is ignored if it doesn't match that filter.

The filter with which Tags are compared is defined in the description of the export_ Symbol. Note that this means that the filter can change over time if the export_ Symbol's description is updated. If you don't want this, you can also set the comment of the export_ Tag with an alternative filter: Doing so will overwrite the default filter.

The filter of an export_ Symbol is taken from the Symbol's description as follows: There must be 5 consecutive dashes in the description (-----), followed by a structure in the same simplified JSON format as is used to define Rules. This structure has the following values:

-'name': A short and descriptive name for the datatype you are extracting. This is displayed to endusers when loading the object.

-'tags': A list of symbol names to be exported. This determines the filter of the export process. Each entry in this list can be a valid symbol name, or a valid regex. If it is a regex, the filter will accept any Tag who's Symbol matches the regex. For example, the regex 'info_.*' will ensure that all Tags beginning with the prefix 'info_' match the export filter.

-'nullify': Valid values are 'cleansed' (default) and 'explicit'. If the value is 'cleansed', all Tags encountered by the export process that have a !nullify Tag on them are ignored (special case: If they are referred to by another Tag that is being exported, they are kept but get explicitly marked with !nullify). If the value is 'explicit', !nullify Tags get no special treatment.

Note that Files will only be exported if the export_ Tag lists them directly, as the filter will ignore any files it encounters and replace them with ?placeholder_for_missing_value.