castor, xsi_namespace & tamino

Hello!

My environment: tamino 4, sdk 1.4.1_05, win2k.

I’m using a package (basicapi.jar), generated with castor from an xsd schema (revision.xsd, with elements Rev->Content->Project->Obj->Property->Attr), to handle xml documents.
I’ve modified basicapi.jar to handle not only Project objects, but java.lang.Object objects. When I try to make a revision upon some specific xml, I get some xsi:type = “Project” xmlns:xsi = “http://www.w3.org/2001/XMLSchema-instance” inserted into my Project element.
The problem is that Tamino is not happy with that 2001 from xsi namespace, accepting only 1999 namespace.
Do somebody knows what can I to to change 2001 from the xsi namespace?

Best regards,
Razvan
schemas.rar (1011 Bytes)

Hello Razvan,

first I cannot do anything with the attached schemas.rar.

Tamino 4 does not supports “xsi” schema features. Thus why it is rejected. But there is no check for 1999/XMLSchema-instance schema, because Tamino does not support 1999/XMLSchema, but only 2001/XMLSchema.

Thus xsi:type=“Project” cannot be processed by Tamino. You will have to remove this xmlns:xsi and xsi:… attributes from your instances, best done with at stylesheet.
I cannot promise that your instances can be loaded into Tamino as I do not know your schema and your instances.
xsi:type=“Project” means that the schema declares the element “Project” but in the instance you provide an element that is derived from “Project”. But such a derivation is not supported by Tamino 4.
Did you define your schema to Tamino?

Kind regards,
Harald

Hello,

I want to say to you that Tamino accepts documents with xsi:type=“Project”, but only if xmlns:xsi = “http://www.w3.org/1999/XMLSchema-instance”. If you replace 1999 with 2001, you get an error, saying something like Tamino doesn’t support this kind of document. Reading the documentation, you can see that there is a document that talks about that 2001 namespace, but not about 1999 namespace.
I’ve managed to solve my problem by modifying the value of xsi_namespace final static string from castor jar file, so that value contains 1999 instead 2001. And now my program works fine.
I want to thank you people for giving me that hint. It helped me to see a better approach to my problem without reinventing the wheel :slight_smile:

Thanks again,
Razvan

Ah, a an attachment, I’ve put a sample xml doc.

Regards,
Razvan
revision08.10.xml (9.99 KB)