Currently systemd discards unknown sections in unit files with a message logged about doing so. Addig custom section support (for example, by prefixing the section name with a *) and making these available on D-Bus would open many possibilities: units could be augmented with data for non-systemd applications and would be completely in sync with systemd and wouldn't require parsing unit files by applications.
A few possible use cases:
* Creating a monitd-like monitoring application with its tests defined with the services they are supposed to check
* CoreOS's Fleet currently does this with X-Fleet sections
* And many more I can't think of :)
As an example:
Name=Test with good credentials
Name=Test with good credentials using expect script
And the org.freedesktop.systemd1.Unit interface could have a CustomSections property (an array of section names) and a GetCustomProperty(String SectionName, String PropertyName) method:
CustomSections = ["Test1","Test2"]
GetCustomProperty("Test1", "Name") -> "Test with good credentials using expect script"
All unit file settings and sections starting with "X-" will be ignored by systemd's own parsers. They are intended to be used by other apps to enrich the unit files with their own meta data.
There's also a TODO list item to make these settings and fields queriable via some unit bus properties. Happy to take a patch for that.