Hi masvi,
I beg to differ on what you have mentioned in your post.
You have mentioned that smobjexport exports all the objects from the policy store and XPSExport also does the same <Afaik>
I personally have worked on the development of XPSImport/XPSExport tools. The behaviour is not the same what you have mentioned in your post.
smobjexport exports all the objects from the policy store, thats true. It also creates a CFG file where the configuration of existing policy store is written, If you want your new policy store should be exactly the same as existing one, don't change that cfg file, but f you want to change policies under your new enviornment, you need to modify the cfg file and keep that file while importing it thru smobjimport.
Now you have mentioned that you should use XPSExport when you have XPS store in place. <Slightly Wrong Here>
Lets take the example of R12 sp3 only.
I would say that if you don't have any objects in your XPS store i.e. you are not using any EPM or XPS Object in your enviornment, then you are not always required to use XPSExport. Even if you expot it through SmObjExpot, it should be fine.
One more thing
SmObjExport exports all the objects from the policy store, but in case of XPSExport, only the root objects are exported. what i mean by this is, the objects which are referred in some other objects only a link to those will be exported (Not the whole Object).
For e.g. If you are exporting an Agent through XPSExport, it will not export the AgentTypes and AgentTypeAttr, only a link or reference to these object will be mentioned in XML file.
But if you will export an Agent from smobjexport, it wil export all the objects including Agent / AgentTypes/AgentTypeAttr.
I hope it make some sence to you here.
Best
Sandeep Khurana