I'm currently trying to move some data from one system to another (a small amount, some 100 total Items) using PLMXML export/import. I have a closure rule that seems to export 90% of what I need, but the remainder is proving difficult.
In particular, I'd like the Items and ItemRevisions to be exported with their user information (owning user and last modified user) plus relevant dates (created, modified). I've tried several permutations, but to no avail.
At present I have
This generates the <Product> entry in the output along with entries for <User> and <Person>. However, there isn't anything there that I can see that connects the users to corresponding objects. Neither does TRAVERSE+REFERENCE.
Does anyone have any tips here? Or, better yet, a sample set of clauses that accomplishes what I'm trying to do?
To answer my own question: the solution is in the property set.
I had tried the property set before, but specified Item and ItemRevision for the relevant classes. Property set class specifiers do not traverse the class hierarchy as they do with closure rules (So, if you want properties for a subclass of Item to be written, you must specify the subclass specifically by name.) This seems weird to me, but the documentation does mention it, if briefly.
Secondly, I have not been able to tell that specifying "*" (without quotes) for the property name in the property set includes all properties in the output XML. It appears to match nothing. Assuming what I'm seeing is not a user error in some other way, this appears to be a mistake in the documentation.
The only solution I've found is to enumerate, tediously, the properties for each class I need in the output. Note that this dramatically slows down the export, probably due to the increased checking. With about 40 properties in my set, a trivial test export is taking about 4 times as long as before.