You are viewing a plain text version of this content. The canonical link for it is here.
Posted to muse-user@ws.apache.org by msw1234567890 <ma...@cgifederal.com> on 2008/09/10 22:17:57 UTC

High level design question

Hello,

Let me first give a little background on the idea.  I am working on
developing an implementation of a spec which "uses" ws notification.  The
only major difference is that this spec says that we want to populate the
xsd:anyType which comes along with a subscribe message with an element which
will act as our topic or filter.  We are putting a rim:adhocquery in this
subscribe message which we will then need to access and process in our
notificationproducer capability.  

I notice that the subscribe function which I may override has a consumer,
filter, terminationTime, and policy as inputs.  So which of those inputs
would I look in to find my adhocquery "payload".

Here is an example message which I might see in a typical subscribe request.

<wsnt:Subscribe xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2" 
    xmlns:wsa="http://www.w3.org/2005/08/addressing"
    xmlns:rim="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
    
    <wsnt:ConsumerReference>
        <!-- this is the endpoint to notify -->
        <wsa:Address>http://www.carespark.org/AccessConsentUpdateService
        </wsa:Address>
    </wsnt:ConsumerReference>
    
    <rim:AdhocQuery id="urn:uuid:14d4debf-8f97-4251-9a74-a90016b0af0d">
        <rim:Slot name="$XDSDocumentEntryPatientId">
            <rim:ValueList>
                <!-- this is the patient ID as known by NCHICA -->
               
<rim:Value>222498764^^^&amp;2.16.840.1.113883.3.18.103&amp;ISO</rim:Value>
            </rim:ValueList>
        </rim:Slot>
        <!--  this ClassCode indicates the Access Consent Policy Document
-->
        <rim:Slot name="$XDSDocumentEntryClassCode">
            <rim:ValueList>
                <rim:Value>XNHIN-CONSENT</rim:Value>
            </rim:ValueList>
        </rim:Slot>
    </rim:AdhocQuery>
</wsnt:Subscribe>


Please let me know if I need to provide more information.  I just started
looking at Apache Muse so I am still a little shaky on how it all works. 
Thanks for your time,

msw
-- 
View this message in context: http://www.nabble.com/High-level-design-question-tp19422315p19422315.html
Sent from the Muse User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: muse-user-unsubscribe@ws.apache.org
For additional commands, e-mail: muse-user-help@ws.apache.org


RE: High level design question

Posted by Ch...@swisscom.com.
Hi Matthew,

The way to do this is to create a new filter type.  You can add FilterHandlers to the Muse environment by calling FilterFactory.addHandler (make sure you only add them once at startup BEFORE you process any messages), all you need to do is specify a Dialect string, so perhaps "urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0"  would be ideal.  Follow the code for TopicFilter and TopicFilterHandler as an example (from source download or via online svn).

Then the actual query string can have whatever format you wish.  The Filters accepts message is where you add the logic for the query.  Be aware that its multithreaded, any thread can publish a message.  The rest of the subscription handling is the same as the online docs and WSN example code.

The entire chain for handling subscriptions is then taken care of by Muse itself allowing you to subscribe with as many filter types as you want.

cheers,
Chris

-----Original Message-----
From: msw1234567890 [mailto:matthew.weaver@cgifederal.com]
Sent: Wednesday, September 10, 2008 10:18 PM
To: muse-user@ws.apache.org
Subject: High level design question


Hello,

Let me first give a little background on the idea.  I am working on developing an implementation of a spec which "uses" ws notification.  The only major difference is that this spec says that we want to populate the xsd:anyType which comes along with a subscribe message with an element which will act as our topic or filter.  We are putting a rim:adhocquery in this subscribe message which we will then need to access and process in our notificationproducer capability.

I notice that the subscribe function which I may override has a consumer, filter, terminationTime, and policy as inputs.  So which of those inputs would I look in to find my adhocquery "payload".

Here is an example message which I might see in a typical subscribe request.

<wsnt:Subscribe xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2"
    xmlns:wsa="http://www.w3.org/2005/08/addressing"
    xmlns:rim="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">

    <wsnt:ConsumerReference>
        <!-- this is the endpoint to notify -->
        <wsa:Address>http://www.carespark.org/AccessConsentUpdateService
        </wsa:Address>
    </wsnt:ConsumerReference>

    <rim:AdhocQuery id="urn:uuid:14d4debf-8f97-4251-9a74-a90016b0af0d">
        <rim:Slot name="$XDSDocumentEntryPatientId">
            <rim:ValueList>
                <!-- this is the patient ID as known by NCHICA -->

<rim:Value>222498764^^^&amp;2.16.840.1.113883.3.18.103&amp;ISO</rim:Value>
            </rim:ValueList>
        </rim:Slot>
        <!--  this ClassCode indicates the Access Consent Policy Document
-->
        <rim:Slot name="$XDSDocumentEntryClassCode">
            <rim:ValueList>
                <rim:Value>XNHIN-CONSENT</rim:Value>
            </rim:ValueList>
        </rim:Slot>
    </rim:AdhocQuery>
</wsnt:Subscribe>


Please let me know if I need to provide more information.  I just started looking at Apache Muse so I am still a little shaky on how it all works.
Thanks for your time,

msw
--
View this message in context: http://www.nabble.com/High-level-design-question-tp19422315p19422315.html
Sent from the Muse User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: muse-user-unsubscribe@ws.apache.org
For additional commands, e-mail: muse-user-help@ws.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: muse-user-unsubscribe@ws.apache.org
For additional commands, e-mail: muse-user-help@ws.apache.org