This might not quite fit as this is not exactly an "imaging" question, but I had difficulties finding an appropriate category for it - feel free to move it as appropriate.

We would like to integrate our ZCM installation with our home-brew network management solution. In a first step, data pulled off the NMS needs to be used to populate the Preboot Services / Device Imaging Work Assignment rules. So I am looking for a way to manipulate the rule sets programmatically. The Command Line Utilities reference does not list all that much of relevance except for `zman`, which does not have any imaging rule - related commands.

We did look into ZCM's database structure and have found the zRuleSet table, exposing the rule sets in an XML-ish column named RulesString:

<ns1:FilterSetList xmlns="" xmlns:ns1=""><ConjunctionString>Or</ConjunctionString><FilterSets><Filters><Not>false</Not><Member>HostName</Member><TypeString>String</TypeString><OperatorString>StartsWith</OperatorString><Values xmlns:ns2="" xmlns:xsi='' xsi:type="ns2:string">mumble</Values></Filters></FilterSets></ns1:FilterSetList>

So here go the questions:

1. Is there an easier way to manipulate Imaging Work Assignment rule sets than poking around in the database backend?
2. If no, is a documentation for the format to be found somewhere?