You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ode.apache.org by Karolis Petrauskas <k....@gmail.com> on 2011/01/05 23:09:07 UTC

XML namespaces

Hi all,

    I'm using Apache ODE in my project to run processes. Inheritance
of complex types is heavily used in the XML schemes of the web
services. As a consequence, xsi:type attributes are used in the
messages extensively. Here I faced some problems. It seems ODE tries
to remove XML declarations of namespaces, that are not used in the
document. This optimization unfortunately does not take xsi:type
attributes into consideration. As a consequence, message like this
(pseudo code):
    <message xmlns="messageNS">
        <order xsi:type="o:MyOrder" xmlns:o="orderNS"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
    </message>
converts to something like this (pseudocode again):
    <message xmlns="messageNS">
        <order xsi:type="o:MyOrder"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
    </message>
i.e. xmlns:o="orderNS" is removed, as the prefix "o" is not referenced
anywhere except the contents of the xsi:type attribute. Resulting
document is not valid anymore if complex type "MyOrder" was derived
from an abstract complex type.

    I have fixed this behavior and it works at least for my process.
The side effect is that a lot of unneeded namespace declarations are
now passed around. In my case it is better than corrupted messages. I
want to contribute my patch to ODE, but I'm not shore, if my approach
is OK and would like to get your opinion about this issue.

Looking forward for your comments,
Karolis Petrauskas

Re: XML namespaces

Posted by Karolis Petrauskas <k....@gmail.com>.
Hi Tammo,

    I attached the patch
(https://issues.apache.org/jira/secure/attachment/12470179/XMLNamespaces.patch).
Please let me know, if something is wrong.

Regards,
Karolis
On Wed, Feb 2, 2011 at 4:00 AM, Tammo van Lessen <tv...@gmail.com> wrote:
> Hi Karolis,
>
> true, this is ticket is the best place for your patch :)
>
> Thanks,
>  Tammo
>
> On 02.02.2011 00:48, Karolis Petrauskas wrote:
>> Hi Tammo,
>>
>>     Thank you for your reply. I will open JIRA ticket with my patch
>> attached. It looks like my patch also relates to
>> https://issues.apache.org/jira/browse/ODE-664.
>>
>> Thanks,
>> Karolis Petrauskas
>>
>> On Tue, Feb 1, 2011 at 3:50 PM, Tammo van Lessen <tv...@gmail.com> wrote:
>>> Hi Karolis,
>>>
>>> sorry for the belated reply. What you describe is a indeed a bug. From
>>> your text I don't understand what your approach exactly is, what about
>>> opening a JIRA and attaching your patch so that we can review it?
>>> Patches and contributions always welcome :)
>>>
>>> Thanks,
>>>  Tammo
>>>
>>> On Wed, Jan 5, 2011 at 23:09, Karolis Petrauskas <k....@gmail.com> wrote:
>>>> Hi all,
>>>>
>>>>    I'm using Apache ODE in my project to run processes. Inheritance
>>>> of complex types is heavily used in the XML schemes of the web
>>>> services. As a consequence, xsi:type attributes are used in the
>>>> messages extensively. Here I faced some problems. It seems ODE tries
>>>> to remove XML declarations of namespaces, that are not used in the
>>>> document. This optimization unfortunately does not take xsi:type
>>>> attributes into consideration. As a consequence, message like this
>>>> (pseudo code):
>>>>    <message xmlns="messageNS">
>>>>        <order xsi:type="o:MyOrder" xmlns:o="orderNS"
>>>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
>>>>    </message>
>>>> converts to something like this (pseudocode again):
>>>>    <message xmlns="messageNS">
>>>>        <order xsi:type="o:MyOrder"
>>>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
>>>>    </message>
>>>> i.e. xmlns:o="orderNS" is removed, as the prefix "o" is not referenced
>>>> anywhere except the contents of the xsi:type attribute. Resulting
>>>> document is not valid anymore if complex type "MyOrder" was derived
>>>> from an abstract complex type.
>>>>
>>>>    I have fixed this behavior and it works at least for my process.
>>>> The side effect is that a lot of unneeded namespace declarations are
>>>> now passed around. In my case it is better than corrupted messages. I
>>>> want to contribute my patch to ODE, but I'm not shore, if my approach
>>>> is OK and would like to get your opinion about this issue.
>>>>
>>>> Looking forward for your comments,
>>>> Karolis Petrauskas
>>>>
>>>
>>>
>>>
>>> --
>>> Tammo van Lessen - http://www.taval.de
>
> --
> Tammo van Lessen - http://www.taval.de

Re: XML namespaces

Posted by Tammo van Lessen <tv...@gmail.com>.
Hi Karolis,

true, this is ticket is the best place for your patch :)

Thanks,
  Tammo

On 02.02.2011 00:48, Karolis Petrauskas wrote:
> Hi Tammo,
> 
>     Thank you for your reply. I will open JIRA ticket with my patch
> attached. It looks like my patch also relates to
> https://issues.apache.org/jira/browse/ODE-664.
> 
> Thanks,
> Karolis Petrauskas
> 
> On Tue, Feb 1, 2011 at 3:50 PM, Tammo van Lessen <tv...@gmail.com> wrote:
>> Hi Karolis,
>>
>> sorry for the belated reply. What you describe is a indeed a bug. From
>> your text I don't understand what your approach exactly is, what about
>> opening a JIRA and attaching your patch so that we can review it?
>> Patches and contributions always welcome :)
>>
>> Thanks,
>>  Tammo
>>
>> On Wed, Jan 5, 2011 at 23:09, Karolis Petrauskas <k....@gmail.com> wrote:
>>> Hi all,
>>>
>>>    I'm using Apache ODE in my project to run processes. Inheritance
>>> of complex types is heavily used in the XML schemes of the web
>>> services. As a consequence, xsi:type attributes are used in the
>>> messages extensively. Here I faced some problems. It seems ODE tries
>>> to remove XML declarations of namespaces, that are not used in the
>>> document. This optimization unfortunately does not take xsi:type
>>> attributes into consideration. As a consequence, message like this
>>> (pseudo code):
>>>    <message xmlns="messageNS">
>>>        <order xsi:type="o:MyOrder" xmlns:o="orderNS"
>>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
>>>    </message>
>>> converts to something like this (pseudocode again):
>>>    <message xmlns="messageNS">
>>>        <order xsi:type="o:MyOrder"
>>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
>>>    </message>
>>> i.e. xmlns:o="orderNS" is removed, as the prefix "o" is not referenced
>>> anywhere except the contents of the xsi:type attribute. Resulting
>>> document is not valid anymore if complex type "MyOrder" was derived
>>> from an abstract complex type.
>>>
>>>    I have fixed this behavior and it works at least for my process.
>>> The side effect is that a lot of unneeded namespace declarations are
>>> now passed around. In my case it is better than corrupted messages. I
>>> want to contribute my patch to ODE, but I'm not shore, if my approach
>>> is OK and would like to get your opinion about this issue.
>>>
>>> Looking forward for your comments,
>>> Karolis Petrauskas
>>>
>>
>>
>>
>> --
>> Tammo van Lessen - http://www.taval.de

-- 
Tammo van Lessen - http://www.taval.de

Re: XML namespaces

Posted by Karolis Petrauskas <k....@gmail.com>.
Hi Tammo,

    Thank you for your reply. I will open JIRA ticket with my patch
attached. It looks like my patch also relates to
https://issues.apache.org/jira/browse/ODE-664.

Thanks,
Karolis Petrauskas

On Tue, Feb 1, 2011 at 3:50 PM, Tammo van Lessen <tv...@gmail.com> wrote:
> Hi Karolis,
>
> sorry for the belated reply. What you describe is a indeed a bug. From
> your text I don't understand what your approach exactly is, what about
> opening a JIRA and attaching your patch so that we can review it?
> Patches and contributions always welcome :)
>
> Thanks,
>  Tammo
>
> On Wed, Jan 5, 2011 at 23:09, Karolis Petrauskas <k....@gmail.com> wrote:
>> Hi all,
>>
>>    I'm using Apache ODE in my project to run processes. Inheritance
>> of complex types is heavily used in the XML schemes of the web
>> services. As a consequence, xsi:type attributes are used in the
>> messages extensively. Here I faced some problems. It seems ODE tries
>> to remove XML declarations of namespaces, that are not used in the
>> document. This optimization unfortunately does not take xsi:type
>> attributes into consideration. As a consequence, message like this
>> (pseudo code):
>>    <message xmlns="messageNS">
>>        <order xsi:type="o:MyOrder" xmlns:o="orderNS"
>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
>>    </message>
>> converts to something like this (pseudocode again):
>>    <message xmlns="messageNS">
>>        <order xsi:type="o:MyOrder"
>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
>>    </message>
>> i.e. xmlns:o="orderNS" is removed, as the prefix "o" is not referenced
>> anywhere except the contents of the xsi:type attribute. Resulting
>> document is not valid anymore if complex type "MyOrder" was derived
>> from an abstract complex type.
>>
>>    I have fixed this behavior and it works at least for my process.
>> The side effect is that a lot of unneeded namespace declarations are
>> now passed around. In my case it is better than corrupted messages. I
>> want to contribute my patch to ODE, but I'm not shore, if my approach
>> is OK and would like to get your opinion about this issue.
>>
>> Looking forward for your comments,
>> Karolis Petrauskas
>>
>
>
>
> --
> Tammo van Lessen - http://www.taval.de

Re: XML namespaces

Posted by Tammo van Lessen <tv...@gmail.com>.
Hi Karolis,

sorry for the belated reply. What you describe is a indeed a bug. From
your text I don't understand what your approach exactly is, what about
opening a JIRA and attaching your patch so that we can review it?
Patches and contributions always welcome :)

Thanks,
  Tammo

On Wed, Jan 5, 2011 at 23:09, Karolis Petrauskas <k....@gmail.com> wrote:
> Hi all,
>
>    I'm using Apache ODE in my project to run processes. Inheritance
> of complex types is heavily used in the XML schemes of the web
> services. As a consequence, xsi:type attributes are used in the
> messages extensively. Here I faced some problems. It seems ODE tries
> to remove XML declarations of namespaces, that are not used in the
> document. This optimization unfortunately does not take xsi:type
> attributes into consideration. As a consequence, message like this
> (pseudo code):
>    <message xmlns="messageNS">
>        <order xsi:type="o:MyOrder" xmlns:o="orderNS"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
>    </message>
> converts to something like this (pseudocode again):
>    <message xmlns="messageNS">
>        <order xsi:type="o:MyOrder"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
>    </message>
> i.e. xmlns:o="orderNS" is removed, as the prefix "o" is not referenced
> anywhere except the contents of the xsi:type attribute. Resulting
> document is not valid anymore if complex type "MyOrder" was derived
> from an abstract complex type.
>
>    I have fixed this behavior and it works at least for my process.
> The side effect is that a lot of unneeded namespace declarations are
> now passed around. In my case it is better than corrupted messages. I
> want to contribute my patch to ODE, but I'm not shore, if my approach
> is OK and would like to get your opinion about this issue.
>
> Looking forward for your comments,
> Karolis Petrauskas
>



-- 
Tammo van Lessen - http://www.taval.de