It is sometimes required to XOG out only a particular sub-object or sub-sub-object in a multiple layered hierarchy without touching others. The issue is evident for the following case.
Case:
A system A has an object which has child objects and grandchild objects. The structure has been exported to other system B and it is in use. In system A, there are, for example, two grandchildren, GrandchildA and GrandchildB. A new grandchild, GrandchildC is added. It is required to export only newly added GrandchildC to the system B without touching other object at all.
The following is a typical example to xog out GrandchildC
<?xml version="1.0" encoding="UTF-8"?> - <NikuDataBus xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../xsd/nikuxog_read.xsd"> - <Header version="8.0" action="read" objectType="contentPack" externalSource="NIKU"> <args name="no_dependencies" value="true"/> - <!-- the contentType is used to determine which filter goes where --> <args contentType="job_definition" name="order_by_1" value="code"/> <args contentType="menu" name="order_by_1" value="code"/> <args contentType="view" name="order_by_1" value="code"/> <args contentType="process" name="order_by_1" value="code"/> <args contentType="object" name="order_by_1" value="code"/> </Header> - <ObjectQuery> <Filter name="object_code" criteria="EQUALS">GrandchildC</Filter> </ObjectQuery> </NikuDataBus>
What the above exports, however, are not only GrandchildC but also its parent, GrandchildA and GrandchildB as well. There is a risk these objects information in system.
A overrides the corresponding objects in the system B unintentionally.
XOG
A fix was added in Clarity 12.0.5 by adding a new argument to exclude parent,
<args name="exclude_parent" value="true"/>
The usage of the new argument is just to add it at the end of the argument as below;
<args contentType="job_definition" name="order_by_1" value="code"/> <args contentType="menu" name="order_by_1" value="code"/> <args contentType="view" name="order_by_1" value="code"/> <args contentType="process" name="order_by_1" value="code"/> <args contentType="object" name="order_by_1" value="code"/> <args name="exclude_parent" value="true"/>