OK... what I wrote below is what is supposed to happen but I just tested it and we serialise as <implementation> rather than <implementation.java> which is a bug :-(
On 15/06/06, Pete Robbins <[EMAIL PROTECTED]> wrote:
The C++ serializer works as Jeremy states. We would serialize this as < implementation.java>. Our implementation does keep extra information about the substitution groups and also what the original local name was when the instance doc was deserialized. So if it was deserialized as < implementation.Fred> then it would be serialized as the same element name. I'm not sure what would happen if we created a dataobject programmatically (as opposed to loading an xml doc) and set the property "implementation" to something of type sca:implemantionJava. In that case we would not have enough info to serialise it as anything other than <implementation ...>. I guess we could check all our substitution groups and serialize as the one that is the correct type... in fact our code may do that, I'd have to check with Ed. Of course this would not work if you have 2 substitution groups of the same type as in Frank's example. But... we can round-trip so deserialization followed by serialization should produce equivalent xml. Cheers, -- Pete