Documented Behavior: The asadmin(1M) man page states that on Windows systems in single command mode, the backslash character does not require an escape character.
Actual Behavior: With create-system-property, the backslash character must be escaped, even on Windows systems in single mode.
Documented Behavior: Example 7 in asadmin(1M) shows that 4 backslashes are need to specify the \ in an option argument on Linux and UNIX systems.
Actual Behavior: A single \ as an escape character is sufficient for the set subcommand.
While looking at the examples in asadmin(1M), I became confused as to why 4 backslashes are required in Example 7, whereas only 2 are required in Example 8. From the descriptions in the asadmin(1M) man page, I would not have been able to predict this difference.
The reason why example 8 doesn't require the 4 backslashes is because the option being passed in is not a properties list (a set of name=value pairs separated with : or some other separator). This is unlike example 7 where the jvm-options are a properties list.
This point is implied by the examples, but is not stated explicitly. Part of the fix will be to update the documentation to make this point explicit.