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

 


Help: OASIS Mailing Lists Help | MarkMail Help

wsn message

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


Subject: Issue verification 2.52, 2.33, 2.51


I will be out of the office next week, June 12-18, so here are my issue 
verification items.

WSN2.52: TopicExpressionDialects to be singular
Line 334 of version 1f of WS-BaseNotification specification uses the 
term TopicExpresssionDialects. Instead use the singular term. 
TopicExpressionDialect.
Update the schema and change the cardinality of this element to 
minOccurs=0 (instead of minOccurs=1).

I've attached revisions of
wsnb-draft-01i.doc and b1.xsd to correct the cardinality for this element
so that you can have zero or more dialect elements.


***

2.33Message ordering/interleavingSusan Malaika, John Fuller
WSN2.33: Message ordering/interleavingWhat is the guarantee that the NP 
submits events for delivery in the same order in which they were 
generated? Should we provide a way of flagging how interleaving of event 
streams can be handled? Should two subscriptions for the same topics be 
guaranteed to see the same interleaving of messages?Specifications?~@? 
WS-BaseNotificationProposed RecommendationAdd some text to the BaseN to 
explicitly point out that the possible issues with message 
ordering/interleaving are not addressed by BaseN. WSN Policy document 
may address this issue.NotesThe issue was initially raised by David Hull 
via email - 
http://www.oasis-open.org/apps/org/workgroup/wsn/email/archives/200501/msg00015.html
During Jan/Feb 2005 F2F, this issue was discussed. The resolution is 
summarized in the Proposed Recommendation section above.
Status:   Open ? approach agreed
Date: Jan 31, 2005Agreed Approach:  See Proposed RecommendationContact:
David HullCross Reference:

I've added the following text to the NonGoals section of ...-draft-0i1.doc
(also included are my changes for 2.52)...

"Defining message ordering or interleaving policies for delivery is 
beyond the scope of WS-BaseNotification."

***

2.51Flexible placing of metadataMartin Chapman, John FullerWSN2.51: 
Flexible placing the notification metadataCurrently there is no 
provision for raw messages to carry the notification metadata 
(SubscriptionReference, Topic, etc). The only option for carrying 
notification metadata is to use Notify message which has well defined 
schema elements for carrying the metadata. Alternative bindings for 
notification metadata should be allowed, for example, in the case of raw 
messages, the metadata may appear as SOAP Headers.Specifications?~@? 
WS-BaseNotificationProposed Recommendations
Define the notification metadata in a stand alone manner and allow its 
inclusion in different ways by the actual messages.In particular:- 
Define the notification metadata (subscriptionReference, topic etc.) 
components before describing the Notify message, and update the Notify 
description to reference the metadata descriptions- Update the raw 
message description to make a non-normative statement that the 
notification metadata elements may appear in raw messages, for example 
as SOAP headers
NotesMay 05 F2F: This issue was raised and an approach was 
agreed.Status:   Open ? approach agreedDate: May 20, 2005Agreed 
Approach: See proposed recommendation.Contact:
Martin Chapman
Cross Reference:


It looks like this is ready to close.
The latest schema has the metadata broken out as elements and in the 
base notification draft there is text in the section about notification 
metadata indicating
the elements may be used as components in raw messages.


wsn-WSB-I252i233.doc

<?xml version="1.0" encoding="UTF-8"?>
<!-- 

OASIS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on OASIS's procedures with respect to rights in OASIS specifications can be found at the OASIS website. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementors or users of this specification, can be obtained from the OASIS Executive Director.

OASIS invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to implement this specification. Please address the information to the OASIS Executive Director.

Copyright (C) OASIS Open (2004-2005). All Rights Reserved.

This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document must be followed, or as required to translate it into languages other than English. 

The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns. 

This document and the information contained herein is provided on an "AS IS" basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

-->

<xsd:schema 
  targetNamespace="http://docs.oasis-open.org/wsn/b-1";   
  xmlns:wsnt="http://docs.oasis-open.org/wsn/b-1";
  xmlns:wsa="http://www.w3.org/2005/03/addressing";
  xmlns:wsrf-bf="http://docs.oasis-open.org/wsrf/bf-1";
  xmlns:xsd="http://www.w3.org/2001/XMLSchema"; 
  elementFormDefault="qualified" attributeFormDefault="unqualified">

<!-- ======================== Imports  ============================ -->
  
  <xsd:import namespace="http://www.w3.org/2005/03/addressing";
              schemaLocation="http://www.w3.org/2005/03/addressing"; 
  />

  <xsd:import namespace="http://docs.oasis-open.org/wsrf/bf-1";
              schemaLocation="http://docs.oasis-open.org/wsrf/bf-1"; 
  />
  
<!-- ===================== Misc. Helper Types ===================== -->

  <xsd:complexType name="QueryExpressionType" mixed="true">
    <xsd:sequence>
      <xsd:any minOccurs="0" maxOccurs="1" processContents="lax" />
    </xsd:sequence>
    <xsd:attribute name="Dialect" type="xsd:anyURI" use="required"/>
  </xsd:complexType>

  <xsd:complexType name="TopicExpressionType" mixed="true">
    <xsd:sequence>
      <xsd:any minOccurs="0" maxOccurs="1" processContents="lax" />
    </xsd:sequence>
    <xsd:attribute name="Dialect" type="xsd:anyURI" use="required" />
    <xsd:anyAttribute/>
  </xsd:complexType>

  <xsd:complexType name="FilterType">
    <xsd:sequence>
      <xsd:any minOccurs="0" maxOccurs="unbounded"/>
    </xsd:sequence>
  </xsd:complexType>

<!-- =============== Resource Property Related  =================== -->
<!-- ======== Resource Properties for NotificationProducer ======== -->
  <xsd:element name="TopicExpression" type="wsnt:TopicExpressionType"/>
  <xsd:element name="FixedTopicSet" type="xsd:boolean"/>
  <xsd:element name="TopicExpressionDialect" type="xsd:anyURI"/>
              
  <xsd:element name="NotificationProducerRP">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element ref="wsnt:TopicExpression"        
                     minOccurs="0" maxOccurs="unbounded" />
        <xsd:element ref="wsnt:FixedTopicSet"        
                     minOccurs="1" maxOccurs="1" />
        <xsd:element ref="wsnt:TopicExpressionDialect"
                     minOccurs="0" maxOccurs="unbounded" />
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>

<!-- ======== Resource Properties for SubscriptionManager ========= -->       
  <xsd:element name="ConsumerReference" 
               type="wsa:EndpointReferenceType" />
  <xsd:element name="Filter" type="wsnt:FilterType" />
  <xsd:element name="SubscriptionPolicy" type="xsd:anyType" />
  <xsd:element name="CreationTime" type="xsd:dateTime" />
  
  <xsd:element name="SubscriptionManagerRP" >
    <xsd:complexType>
      <xsd:sequence>
         <xsd:element ref="wsnt:ConsumerReference"        
                      minOccurs="1" maxOccurs="1" />
         <xsd:element ref="wsnt:Filter"
                      minOccurs="0" maxOccurs="1" />
         <xsd:element ref="wsnt:SubscriptionPolicy" 
                      minOccurs="0" maxOccurs="1" />
         <xsd:element ref="wsnt:CreationTime" 
                      minOccurs="0" maxOccurs="1" />
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>

<!-- ================= Notification Metadata  ===================== -->
  <xsd:element name="SubscriptionReference" 
               type="wsa:EndpointReferenceType" />
  <xsd:element name="Topic" 
               type="wsnt:TopicExpressionType" />
  <xsd:element name="ProducerReference" 
               type="wsa:EndpointReferenceType" />

<!-- ================== Message Helper Types  ===================== -->
  <xsd:complexType name="NotificationMessageHolderType" >
    <xsd:sequence>
      <xsd:element ref="wsnt:SubscriptionReference" 
                   minOccurs="0" maxOccurs="1" />
      <xsd:element ref="wsnt:Topic" 
                   minOccurs="0" maxOccurs="1" />
      <xsd:element ref="wsnt:ProducerReference" 
                   minOccurs="0" maxOccurs="1" />
      <xsd:element name="Message">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:any namespace="##any" processContents="lax"
                     minOccurs="1" maxOccurs="1"/>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>

<!-- ========== Message Types for NotificationConsumer  =========== -->
  <xsd:element name="Notify" >
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element name="NotificationMessage"
                     type="wsnt:NotificationMessageHolderType"
                     minOccurs="1" maxOccurs="unbounded" />
        <xsd:any namespace="##other" processContents="lax"
                 minOccurs="0" maxOccurs="unbounded"/>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>

<!-- ========== Message Types for NotificationProducer  =========== -->

  <xsd:simpleType name="AbsoluteOrRelativeTimeType">
    <xsd:union memberTypes="xsd:dateTime xsd:duration" />
  </xsd:simpleType>

  <xsd:element name="CurrentTime" type="xsd:dateTime" />

  <xsd:element name="TerminationTime" 
               nillable="true" type="xsd:dateTime" />

  <xsd:element name="ProducerProperties"
               type="wsnt:QueryExpressionType" />

  <xsd:element name="MessageContent"
               type="wsnt:QueryExpressionType" />

  <xsd:element name="UseRaw"><xsd:complexType/></xsd:element>

  <xsd:element name="Subscribe" >
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element name="ConsumerReference" 
                     type="wsa:EndpointReferenceType"
                     minOccurs="1" maxOccurs="1" />
        <xsd:element name="Filter" 
                     type="wsnt:FilterType" 
                     minOccurs="0" maxOccurs="1" />
        <xsd:element name="InitialTerminationTime" 
                     type="wsnt:AbsoluteOrRelativeTimeType"
                     nillable="true"
                     minOccurs="0" maxOccurs="1" />
        <xsd:element name="SubscriptionPolicy"
                     minOccurs="0" maxOccurs="1">
          <xsd:complexType>
            <xsd:sequence>
              <xsd:any namespace="##any" processContents="lax"
                       minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
          </xsd:complexType>
        </xsd:element>
        <xsd:any namespace="##other" processContents="lax"
                 minOccurs="0" maxOccurs="unbounded"/>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>
        
  <xsd:element name="SubscribeResponse">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element name="SubscriptionReference" 
                     type="wsa:EndpointReferenceType"
                     minOccurs="0" maxOccurs="1" />
        <xsd:element ref="wsnt:CurrentTime"
                     minOccurs="0" maxOccurs="1" />
        <xsd:element ref="wsnt:TerminationTime"
                     minOccurs="0" maxOccurs="1" />
        <xsd:any namespace="##other" processContents="lax"
                 minOccurs="0" maxOccurs="unbounded"/>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>
                  
  <xsd:element name="GetCurrentMessage">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element name="Topic" 
                     type="wsnt:TopicExpressionType" />
        <xsd:any namespace="##any" processContents="lax"
                 minOccurs="0" maxOccurs="unbounded"/>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>

  <xsd:element name="GetCurrentMessageResponse">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:any namespace="##other" processContents="lax"
                 minOccurs="0" maxOccurs="unbounded"/>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>

  <xsd:complexType name="SubscribeCreationFailedFaultType">
    <xsd:complexContent>
      <xsd:extension base="wsrf-bf:BaseFaultType"/>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:element name="SubscribeCreationFailedFault" 
               type="wsnt:SubscribeCreationFailedFaultType"/>

  <xsd:complexType name="InvalidFilterFaultType">
    <xsd:complexContent>
      <xsd:extension base="wsrf-bf:BaseFaultType">
        <xsd:sequence>
          <xsd:element name="UnknownFilter" type="xsd:QName"
                       minOccurs="1" maxOccurs="unbounded"/>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:element name="InvalidFilterFault"
               type="wsnt:InvalidFilterFaultType"/>

  <xsd:complexType name="TopicExpressionDialectUnknownFaultType">
    <xsd:complexContent>
      <xsd:extension base="wsrf-bf:BaseFaultType"/>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:element name="TopicExpressionDialectUnknownFault" 
               type="wsnt:TopicExpressionDialectUnknownFaultType"/>

  <xsd:complexType name="InvalidTopicExpressionFaultType">
    <xsd:complexContent>
      <xsd:extension base="wsrf-bf:BaseFaultType"/>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:element name="InvalidTopicExpressionFault" 
               type="wsnt:InvalidTopicExpressionFaultType"/>

  <xsd:complexType name="TopicNotSupportedFaultType">
    <xsd:complexContent>
      <xsd:extension base="wsrf-bf:BaseFaultType"/>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:element name="TopicNotSupportedFault" 
               type="wsnt:TopicNotSupportedFaultType"/>

  <xsd:complexType name="InvalidProducerPropertiesExpressionFaultType">
    <xsd:complexContent>
      <xsd:extension base="wsrf-bf:BaseFaultType"/>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:element name="InvalidProducerPropertiesExpressionFault" 
             type="wsnt:InvalidProducerPropertiesExpressionFaultType"/>

  <xsd:complexType name="InvalidMessageContentExpressionFaultType">
    <xsd:complexContent>
      <xsd:extension base="wsrf-bf:BaseFaultType"/>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:element name="InvalidMessageContentExpressionFault" 
             type="wsnt:InvalidMessageContentExpressionFaultType"/>

  <xsd:complexType name="InvalidUseRawValueFaultType">
    <xsd:complexContent>
      <xsd:extension base="wsrf-bf:BaseFaultType"/>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:element name="InvalidUseRawValueFault" 
             type="wsnt:InvalidUseRawValueFaultType"/>

  <xsd:complexType name="UnacceptableInitialTerminationTimeFaultType">
    <xsd:complexContent>
      <xsd:extension base="wsrf-bf:BaseFaultType">
        <xsd:sequence>
          <xsd:element name="MinimumTime" type="xsd:dateTime"/>
          <xsd:element name="MaximumTime" type="xsd:dateTime"
              minOccurs="0"/>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:element name="UnacceptableInitialTerminationTimeFault"
              type="wsnt:UnacceptableInitialTerminationTimeFaultType"/>

  <xsd:complexType name="NoCurrentMessageOnTopicFaultType">
    <xsd:complexContent>
      <xsd:extension base="wsrf-bf:BaseFaultType"/>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:element name="NoCurrentMessageOnTopicFault" 
               type="wsnt:NoCurrentMessageOnTopicFaultType"/>

<!-- ======== Message Types for Base SubscriptionManager  ========= -->
  <xsd:element name="Renew">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element name="TerminationTime" 
                     type="wsnt:AbsoluteOrRelativeTimeType"
                     nillable="true"
                     minOccurs="1" maxOccurs="1" />
        <xsd:any namespace="##other" processContents="lax"
                 minOccurs="0" maxOccurs="unbounded"/>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>

  <xsd:element name="RenewResponse">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element ref="wsnt:TerminationTime" 
                      minOccurs="1" maxOccurs="1" />
        <xsd:element ref="wsnt:CurrentTime" 
                      minOccurs="0" maxOccurs="1" />
        <xsd:any namespace="##other" processContents="lax"
                 minOccurs="0" maxOccurs="unbounded"/>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>

  <xsd:complexType name="UnacceptableTerminationTimeFaultType">
    <xsd:complexContent>
      <xsd:extension base="wsrf-bf:BaseFaultType">
        <xsd:sequence>
          <xsd:element name="MinimumTime" type="xsd:dateTime"/>
          <xsd:element name="MaximumTime" type="xsd:dateTime"
              minOccurs="0"/>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:element name="UnacceptableTerminationTimeFault"
              type="wsnt:UnacceptableTerminationTimeFaultType"/>

  <xsd:element name="Unsubscribe">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:any namespace="##other" processContents="lax"
                 minOccurs="0" maxOccurs="unbounded"/>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>

  <xsd:element name="UnsubscribeResponse">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:any namespace="##other" processContents="lax"
                 minOccurs="0" maxOccurs="unbounded"/>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>

  <xsd:complexType name="UnableToDestroySubscriptionFaultType">
    <xsd:complexContent>
      <xsd:extension base="wsrf-bf:BaseFaultType"/>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:element name="UnableToDestroySubscriptionFault" 
               type="wsnt:UnableToDestroySubscriptionFaultType"/>

<!-- ====== Message Types for Pausable SubscriptionManager  ======= -->
  <xsd:element name="PauseSubscription">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:any namespace="##other" processContents="lax"
                 minOccurs="0" maxOccurs="unbounded"/>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>

  <xsd:element name="PauseSubscriptionResponse" >
    <xsd:complexType>
      <xsd:sequence>
        <xsd:any namespace="##other" processContents="lax"
                 minOccurs="0" maxOccurs="unbounded"/>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>

  <xsd:element name="ResumeSubscription">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:any namespace="##other" processContents="lax"
                 minOccurs="0" maxOccurs="unbounded"/>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>

  <xsd:element name="ResumeSubscriptionResponse">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:any namespace="##other" processContents="lax"
                 minOccurs="0" maxOccurs="unbounded"/>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>

  <xsd:complexType name="PauseFailedFaultType">
    <xsd:complexContent>
      <xsd:extension base="wsrf-bf:BaseFaultType"/>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:element name="PauseFailedFault" 
               type="wsnt:PauseFailedFaultType"/>

  <xsd:complexType name="ResumeFailedFaultType">
    <xsd:complexContent>
      <xsd:extension base="wsrf-bf:BaseFaultType"/>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:element name="ResumeFailedFault" 
               type="wsnt:ResumeFailedFaultType"/>

</xsd:schema>


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