Return-Path: Delivered-To: apmail-ws-axis-dev-archive@www.apache.org Received: (qmail 9093 invoked from network); 25 Nov 2004 02:04:39 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur-2.apache.org with SMTP; 25 Nov 2004 02:04:39 -0000 Received: (qmail 38692 invoked by uid 500); 25 Nov 2004 02:04:36 -0000 Delivered-To: apmail-ws-axis-dev-archive@ws.apache.org Received: (qmail 38662 invoked by uid 500); 25 Nov 2004 02:04:35 -0000 Mailing-List: contact axis-dev-help@ws.apache.org; run by ezmlm Precedence: bulk Reply-To: axis-dev@ws.apache.org list-help: list-unsubscribe: list-post: Delivered-To: mailing list axis-dev@ws.apache.org Received: (qmail 38650 invoked by uid 99); 25 Nov 2004 02:04:35 -0000 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received-SPF: neutral (hermes.apache.org: local policy) Received: from relay01.pair.com (HELO relay01.pair.com) (209.68.5.15) by apache.org (qpsmtpd/0.28) with SMTP; Wed, 24 Nov 2004 18:04:33 -0800 Received: (qmail 83112 invoked from network); 25 Nov 2004 02:04:19 -0000 Received: from unknown (HELO LANKABOOK) (unknown) by unknown with SMTP; 25 Nov 2004 02:04:19 -0000 X-pair-Authenticated: 203.94.84.117 Message-ID: <145201c4d293$1310f380$bcffff0a@LANKABOOK> From: "Sanjiva Weerawarana" To: References: <41A4A87D.10105@cs.indiana.edu> <113401c4d259$d04f3270$bcffff0a@LANKABOOK> <11f201c4d25b$65eca140$bcffff0a@LANKABOOK> <41A51A7F.4040105@cs.indiana.edu> Subject: Re: [Axis2] IRC chat log 2004-11-24 Date: Thu, 25 Nov 2004 08:04:15 +0600 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2800.1409 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1409 X-Virus-Checked: Checked X-Spam-Rating: minotaur-2.apache.org 1.6.2 0/1000/N "Aleksander Slominski" writes: > what are differen node types and how does this help with attributes? Let me take an example. Let's say we want to support RPC/literal stuff. A way to do that could be the following: - create a node consisting of the "call" - the "object" to call on and the parameters: RPCCallNode - that node is inserted into the OM as the only "child" of the element; anywhere else is an error. So we could do it as another builder for an OM - when the OM is serialized, the RPCCallNode serializes itself into the full call- wrapper element, children elements with or without attributes. The way this works is that the OM is effectively not just an Infoset model but rather some kind of a "SOAP Infoset". This is sort of how (gasp) ApacheSOAP worked .. The same could be done for MTOM binary components: insert them at whatever place in the OM tree as the "child". So again we'd need to say that "child" doesn't map directly to the [children] property of the Infoset .. when serialized it will result in some stuff in the [children] and [attributes] Infoset properties being populated. So we may want to use a different API than OMElement.addChild() to set these "special" nodes; maybe: OMElement.setFunkyKidWhoWillBecomeGoodWhenSerialized (Object obj) I *think* deser can be done properly like this too. Sanjiva.