OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

wsrp-interop message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Event Definitions and Payload XMLs


Kevin,

 

We’ve revamped our interop producer to generate the different type of payloads that we may run into.  The producer can be found in:

 

http://www.netunitysoftware.com/wsrp2interop/WsrpProducer.asmx?WSDL

 

There are two portlets dealing with events:

 

1)      NetUnity WSRP 2 Interop – Events

Generates events

 

2)      NetUnity WSRP 2 Interop - Event Receiver

Listens to events from  #1

 

The four events are:

 

1)      NoPayloadEvent

Obviously an event without a payload

 

<eventDescriptions xmlns:q21="urn:netunitysoftware:wsrp2interop" name="q21:NoPayloadEvent" xmlns="urn:oasis:names:tc:wsrp:v2:types">

  <description xml:lang="en">

      <value>No Payload Event</value>

    </description>

    <label xml:lang="en">

      <value>No Payload Event</value>

    </label>

  </eventDescriptions>

 

2)      DefaultPayloadEvent

An event with a WSRP NamedStringArray payload

 

  <eventDescriptions xmlns:q18="urn:netunitysoftware:wsrp2interop" name="q18:DefaultPayloadEvent" type="NamedStringArray" xmlns="urn:oasis:names:tc:wsrp:v2:types">

    <description xml:lang="en">

      <value>Default Payload Event</value>

    </description>

    <label xml:lang="en">

      <value>Default Payload Event</value>

    </label>

  </eventDescriptions>

 

3)      SimplePayloadEvent

An event with a simple string (xsd:string) payload

 

<ServiceDescription xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">

  <eventDescriptions xmlns:q20="urn:netunitysoftware:wsrp2interop" name="q20:SimplePayloadEvent" type="xsd:string" xmlns="urn:oasis:names:tc:wsrp:v2:types">

    <description xml:lang="en">

      <value>Simple Payload Event</value>

    </description>

    <label xml:lang="en">

      <value>Simple Payload Event</value>

    </label>

    <schemaType>

      <xs:schema xmlns:tns="urn:netunitysoftware:wsrp2interop" elementFormDefault="qualified" targetNamespace="urn:netunitysoftware:wsrp2interop" xmlns:xs="http://www.w3.org/2001/XMLSchema">

        <xs:element name="SimplePayloadEvent" nillable="true" type="xs:string" />

      </xs:schema>

    </schemaType>

  </eventDescriptions>

 

4)      ComplexPayloadEvent

An event with a complex payload containing multiple elements and sub-elements

 

  <eventDescriptions xmlns:q19="urn:netunitysoftware:wsrp2interop" name="q19:ComplexPayloadEvent" type="q19:ComplexPayload" xmlns="urn:oasis:names:tc:wsrp:v2:types">

    <description xml:lang="en">

      <value>Complex Payload Event</value>

    </description>

    <label xml:lang="en">

      <value>Complex Payload Event</value>

    </label>

    <schemaType>

      <xs:schema xmlns:tns="urn:netunitysoftware:wsrp2interop" elementFormDefault="qualified" targetNamespace="urn:netunitysoftware:wsrp2interop" xmlns:xs="http://www.w3.org/2001/XMLSchema">

        <xs:element name="ComplexPayloadEvent" nillable="true" type="tns:ComplexPayload" />

        <xs:complexType name="ComplexPayload">

          <xs:sequence>

            <xs:element minOccurs="1" maxOccurs="1" name="IntValue" type="xs:int" />

            <xs:element minOccurs="0" maxOccurs="1" name="StringValue" type="xs:string" />

            <xs:element minOccurs="0" maxOccurs="1" name="NestedData" type="tns:NestedData" />

          </xs:sequence>

        </xs:complexType>

        <xs:complexType name="NestedData">

          <xs:sequence>

            <xs:element minOccurs="0" maxOccurs="1" name="NestedStringValue" type="xs:string" />

          </xs:sequence>

        </xs:complexType>

      </xs:schema>

    </schemaType>

  </eventDescriptions>

 

One question is: should/can the DefaultPayloadEvent  event description specify a schema?  Our current implementation does not given the element and the type are already defined in the WSRP schemas.  There are some other questions as well related to generation of very complex schemas right in the web service when that generated schema needs to import other generated schemas.  How are the imported schemas located/loaded?  Do you wind with a combination where the main schema is in the web service and others have to be load using straight HTTP?

 

Below is the blocking interaction for generating the above 4 events with appropriate payloads:

 

<?xml version="1.0" encoding="utf-16"?>

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">

    <soap:Body>

        <performBlockingInteractionResponse xmlns="urn:oasis:names:tc:wsrp:v2:types">

            <updateResponse>

                <events xmlns:q1="urn:netunitysoftware:wsrp2interop" name="q1:DefaultPayloadEvent" type="NamedStringArray">

                    <payload>

                        <namedStringArray>

                            <NamedString name="ParameterOne">

                                <value>Parameter One</value>

                            </NamedString>

                            <NamedString name="ParameterTwo">

                                <value>Parameter Two</value>

                            </NamedString>

                        </namedStringArray>

                    </payload>

                </events>

                <events xmlns:q2="urn:netunitysoftware:wsrp2interop" name="q2:ComplexPayloadEvent" type="q2:ComplexPayload">

                    <payload>

                        <ComplexPayloadEvent xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:netunitysoftware:wsrp2interop">

                            <IntValue>10</IntValue>

                            <StringValue>String value</StringValue>

                            <NestedData>

                                <NestedStringValue>nested string value</NestedStringValue>

                            </NestedData>

                        </ComplexPayloadEvent>

                    </payload>

                </events>

                <events xmlns:q3="urn:netunitysoftware:wsrp2interop" name="q3:SimplePayloadEvent" type="xsd:string">

                    <payload>

                        <SimplePayloadEvent xmlns="urn:netunitysoftware:wsrp2interop">String Value</SimplePayloadEvent>

                    </payload>

                </events>

                <events xmlns:q4="urn:netunitysoftware:wsrp2interop" name="q4:NoPayloadEvent" />

                <navigationalContext />

            </updateResponse>

        </performBlockingInteractionResponse>

    </soap:Body>

</soap:Envelope>

 

Please let me know if you need anything else from my end.

 

Nader

NetUnity Software

From: Nathan Lipke [mailto:nathan.lipke@oracle.com]
Sent: Thursday, January 14, 2010 11:54 AM
To: WSRP
Subject: [wsrp] TC Call Jan 14. 2010 minutes

 

Attendees:

  • Dina
  • Kevin
  • Mike F
  • Nadar
  • Scott
  • Nate

 

Discussed  event payload proposal at bottom of:

 

Nadar:  

  • Raised issues with the proposal:
    • Need to investigate if the type holder elements are defined by some other W3C or OASIS group
    • Thinks we should just require complex types
    • Proposes modify option #2 to get rid of element will match
  • TODO: Will investigate the proposal
  • TODO: Will post his current payload XML for simple and complex types

 

Kevin:

  • TODO: Investigate can we parse NetUnity's current XML
  • TODO: Investigate sending simple types without well-defined types
  • TODO: Provide XML payloads with well-defined types

 

Nate



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]