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: Re: [wsrp-interop] Re: [wsrp-conformance] follow-up: templates


Didn't we have a lengthy debate (raised by Alejandro) in May about 
consistent user experience? I don't recall how it was started, but 
remember some concerns.

Regards,

Subbu

Andre Kramer wrote:

> Please note my example was for window states (not modes) and for a 
> mode that the consumer had extra knowledge about (some sophisticated 
> help system). Why constrain what we will be able to do in future?
>
> regards,
> Andre
>
> -----Original Message-----
> From: Subbu Allamaraju [mailto:subbu@bea.com]
> Sent: 11 November 2003 14:24
> To: wsrp-interop@lists.oasis-open.org
> Subject: Re: [wsrp-interop] Re: [wsrp-conformance] follow-up: templates
>
>
>
> To keep consistent behavior, it is safe to either replace with current
> values or empty strings when there is no transition request. I agree
> with Richard's use case. Allowing the consumer to pick any mode/state
> could lead to inconsistent user experience.
>
> Regards,
>
> Subbu
>
> Richard Jacob said the following on 11/11/2003 06:43 AM:
>
> >Ok, this is a different semantic here - other then the "no-change" 
> semantic
> >we discussed before.
> >I think the intent of our and JSR168 semantic is that if there is no 
> mode
> >parameter on the URL then the portal (or consumer) will (or should) 
> remain
> >in the same mode as it was (that's different to the "don't care"
> >semantics).
> >We say in 10.2.1.4 "Activating this URL includes a request to CHANGE the
> >mode parameter in MarkupParams into the mode specified [...]".
> >So one could interpret (although we are not explicit) the absence of 
> mode
> >(or the non-replacement to stay in the template scope) is a request 
> to stay
> >in the same mode.
> >
> >We need to be carefull here, otherwise we might observe different
> >behaviours for different producer-consumer pairs.
> >One use case:
> >Portlet has multiple pages for edit mode linked via navigational links
> >(prev, next, etc.).
> >The portlet does not place mode parameter in the navigational URLs.
> >User changes the portlets mode to "edit", via decoration. ->
> >markupParams.mode=edit
> >User clicks on next in edit mode (without specifying mode=wsrp:edit 
> in the
> >link), now when the consumer may choose what to do, it could change 
> to view
> >mode -> markupParams.mode=view.
> >This would prevent the user from ever getting to the next page.
> >This would enforce the portlet programmer to *always* code the mode
> >parameter in URLs (which is not the case either in the JSR168 spec 
> nor in
> >our spec).
> >
> >And in this case this leads us back to the discussion whether we should
> >enforce the producer to *always* replace these {wsrp-...} tokens in
> >templates :-)
> >Therefor I would say that the semantic for not having these params in 
> the
> >URL means "no change" rather then "don't care" (if we choose to do the
> >non-replacement processing).
> >
> >Mit freundlichen Gruessen / best regards,
> >
> >        Richard Jacob
> >______________________________________________________
> >IBM Lab Boeblingen, Germany
> >Dept.8288, WebSphere Portal Server Development
> >Phone: ++49 7031 16-3469  -  Fax: ++49 7031 16-4888
> >Email: mailto:richard.jacob@de.ibm.com
> >
> >
> >|---------+---------------------------->
> >|         |           Andre Kramer     |
> >|         |           <andre.kramer@eu.|
> >|         |           citrix.com>      |
> >|         |                            |
> >|         |           11/11/2003 09:46 |
> >|         |           AM               |
> >|---------+---------------------------->
> >  
> >--------------------------------------------------------------------------------------------------------------------------------------------------|
>
> >  
> |                                                                                                                                                  
> |
>
> >  |       To:       
> wsrp-interop@lists.oasis-open.org                                                                                                
> |
>
> >  |       
> cc:                                                                                                                                        
> |
>
> >  |       Subject:  RE: [wsrp-interop] Re: [wsrp-conformance]  
> follow-up: 
> templates                                                                  
> |
>
> >  
> >--------------------------------------------------------------------------------------------------------------------------------------------------|
>
> >
> >
> >
> >
> >Richard,
> >
> >
> >On the "always transition" option you raise, I supposed it would be 
> useful
> >for a portlet to say "I don't care about the mode / window state" on 
> a URL.
> >When we introduce events we may be able to make use of this extra 
> semantic
> >information. For 1.0, a link with "mode=wsrp:help&windowState
> >={wsrp:windowState}" allows the portal to select the best window 
> state for
> >displaying help but "mode=wsrp:help&windowState=wsrp:normal" would
> >constrain the portal to call the portlet in the normal window state just
> >because that was the current mode when the url was rendered.
> >
> >
> >regards,
> >Andre
> >
> >
> >-----Original Message-----
> >From: Richard Jacob [mailto:richard.jacob@de.ibm.com]
> >Sent: 10 November 2003 18:05
> >To: Andre Kramer
> >Cc: wsrp-interop@lists.oasis-open.org
> >Subject: RE: [wsrp-interop] Re: [wsrp-conformance] RE: [wsrp-interop]
> >foll ow-up: templates
> >
> >
> >
> >
> >
> >
> >my comments in <rj>
> >
> >
> >Mit freundlichen Gruessen / best regards,
> >
> >
> >        Richard Jacob
> >______________________________________________________
> >IBM Lab Boeblingen, Germany
> >Dept.8288, WebSphere Portal Server Development
> >Phone: ++49 7031 16-3469  -  Fax: ++49 7031 16-4888
> >Email: mailto:richard.jacob@de.ibm.com
> >
> >
> >
> >
> >
> >|---------+---------------------------->
> >|         |           Andre Kramer     |
> >|         |           <andre.kramer@eu.|
> >|         |           citrix.com>      |
> >|         |                            |
> >|         |           11/10/2003 05:49 |
> >|         |           PM               |
> >|---------+---------------------------->
> >  >
> >--------------------------------------------------------------------------------------------------------------------------------------------------|
>
> >
> >
> >  |
> >|
> >
> >
> >  |       To:       wsrp-interop@lists.oasis-open.org
> >|
> >
> >
> >  |       cc:
> >|
> >
> >
> >  |       Subject:  RE: [wsrp-interop] Re: [wsrp-conformance] RE:
> >[wsrp-interop] foll             ow-up: templates
> >|
> >
> >
> >  >
> >--------------------------------------------------------------------------------------------------------------------------------------------------|
>
> >
> >
> >
> >
> >
> >
> >
> >(e) was just for catching tokens allowed by the grammar but not really
> >expected in templates, <ak> below.
> ><rj> agreed
> >Rich: is wsrp-Token not also a relict that should be removed from the 
> spec?
> >
> ></rj>
> >
> >
> >
> >
> >
> >-----Original Message-----
> >From: Richard Jacob [mailto:richard.jacob@de.ibm.com]
> >Sent: 10 November 2003 15:11
> >To: Andre Kramer
> >Cc: wsrp-interop@lists.oasis-open.org
> >Subject: RE: [wsrp-interop] Re: [wsrp-conformance] RE: [wsrp-interop]
> >foll ow-up: templates
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >Good analysis.
> >I agree to a, b, c - at the bottom line it comes to "replace them", 
> since
> >b) is opaque one could consider no substitution as being indeed a
> >substitution, i.e. the consumer would pass {wsrp...} back to the 
> producer,
> >the producer needs to handle it in that case.
> >{wsrp-secureUrl} should be categorized as c) not as e).
> >
> >
> >
> >
> >
> ><ak>I don't {wsrp-secureUrl} is sensible for templates as we have both
> >secure and normal versions for constructing urls.</ak>
> >
> >
> >
> >
> >
> ><rj> agreed, I missed the fact that even for default templates we have a
> >secure one :-), given that I would say it fits in e) as you say it </rj>
> >
> >
> >
> >
> >
> >Since we defined a default value (false) one could even argue that a
> >no-change falls back to default.
> >However I would prefer to replace here anyways.
> >
> >
> >
> >
> >
> >On d):
> >Leaving {wsrp-...} seems the most appropriate here unless we have a 
> special
> >
> >
> >wsrp-value for that (e.g. "wsrp:null").
> >It seems more natural to indicate a no-change to me.
> >This would make {wsrp-...} reserved tokens in the spec. (perhaps we 
> should
> >do that for any wsrp defined string anyway in 1.1).
> >
> >
> >
> >
> >
> ><ak> we did use the "wsrp-" to mean our URI and "{" is used in 
> matching so
> >we are on pretty safe ground here.</ak>
> >
> >
> >
> >
> >
> ><rj> agreed </rj>
> >
> >
> >
> >
> >
> >I think the argument that a mode or window state might carry 
> {wsrp-..} on
> >purpose is not strong enough. In the spec we encourage (although not
> >enforce) people to namespace their self-defined values so my 
> expectation on
> >
> >
> >clashes is very low here.
> >
> >
> >
> >
> >
> ><ak>custom modes & window states need to be declared in service/portlet
> >descriptions which also helps.</ak>
> >
> >
> >
> >
> >
> ><rj> agreed </rj>
> >
> >
> >
> >
> >
> >On e):
> >what is {wsrp-token} for again? Didn't we miss to remove it once we 
> dropped
> >
> >
> >the namespace URL thing?
> >This leaves it at {wsrp-fragmentID} being the only one left in e).
> >Here I would handle it as d), no substitution means "not set".
> >
> >
> >
> >
> >
> ><ak>{wsrp-token} is unneeded and {wsrp-fragmentID} seems currently
> >underspecified.</ak>
> >
> >
> >
> >
> >
> >What strikes me a little bit is the fact that we introduce a more
> >complicated semantic in this processing, people might get confused.
> >It would be easier to understand if we said:
> >Required tokens on an URL must be replaced with values as well as all
> >portlet URL params (10.2.2.9).
> >All optional tokens don't need to be substituted (or better: have our
> >"wsrp:null" for that) and fall back to default.
> >
> >
> >
> >
> >
> >One additional point: If we introduce d) don't we contradict our
> >conformance statements in 10.2.1.4 and 10.2.1.5 where we say that
> >modes/window states MUST be either the wsrp-defined ones or custom ones
> >supported by the producer? So a "MUST replace" here perhaps would fit
> >better? (btw. what makes it complicated for the producer to replace the
> >{wsrp-mode} with the current mode value the portlet is in? This would 
> mean
> >for templates: staying in the same mode is a transition from mode x 
> to mode
> >
> >
> >x.)
> >
> >
> >
> >
> >
> ><ak>I would go for "MUST be either the wsrp-defined ones or custom ones
> >supported by the producer IF replaced". Here the "wsrp-defined" is an
> >unfortunate use of "wsrp-". </ak>
> >
> >
> >
> >
> >
> ><rj> ok, so here you go for the option modes/states do not need to be
> >replaced, right? What about my question for always to transition even 
> if it
> >
> >is mode x -> mode x ?</rj>
> >
> >
> >
> >
> >
> >With that argument it would put a) b) c) d) into one equal group: "MUST
> >replace".
> >Then we would only have e) with "leave-as-is" which is little bit
> >underspecified (as Andre said).
> >This seems even an easier semantics to me.
> >
> >
> >
> >
> >
> >Mit freundlichen Gruessen / best regards,
> >
> >
> >
> >
> >
> >        Richard Jacob
> >______________________________________________________
> >IBM Lab Boeblingen, Germany
> >Dept.8288, WebSphere Portal Server Development
> >Phone: ++49 7031 16-3469  -  Fax: ++49 7031 16-4888
> >Email: mailto:richard.jacob@de.ibm.com
> >
> >
> >
> >
> >
> >
> >
> >
> >|---------+---------------------------->
> >|         |           Andre Kramer     |
> >|         |           <andre.kramer@eu.|
> >|         |           citrix.com>      |
> >|         |                            |
> >|         |           11/10/2003 10:40 |
> >|         |           AM               |
> >|---------+---------------------------->
> >  >
> >--------------------------------------------------------------------------------------------------------------------------------------------------|
>
> >
> >
> >
> >
> >
> >  |
> >|
> >
> >
> >
> >
> >
> >  |       To:       wsrp-interop@lists.oasis-open.org
> >|
> >
> >
> >
> >
> >
> >  |       cc:
> >|
> >
> >
> >
> >
> >
> >  |       Subject:  RE: [wsrp-interop] Re: [wsrp-conformance] RE:
> >[wsrp-interop] foll       ow-up: templates
> >|
> >
> >
> >
> >
> >
> >  >
> >--------------------------------------------------------------------------------------------------------------------------------------------------|
>
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >Agree, there are multiple cases here:
> >
> >
> >
> >
> >
> >a) tokens spec says must be replaced (10.2.2.9). These should always be
> >substituted and so should never occur in a query string. [My original 
> query
> >
> >
> >was aimed at making {wsrp-urlType} one of these but only for default
> >templates.]
> >
> >
> >
> >
> >
> >b) tokens that are opaque to the consumer. Producer can use whatever it
> >likes here (including doing no substitution).
> >
> >
> >
> >
> >
> >c) tokens that are booleans. "true" or "false" must be substituted.
> >
> >
> >
> >
> >
> >d) token that control mode and window state transitions.
> >
> >
> >
> >
> >
> >e) {wsrp-fragmentID}, {secureURL} and {wsrp-token} (!)
> >
> >
> >
> >
> >
> >{wsrp-urlType} (a)
> >{wsrp-url} (a)
> >{wsrp-portletHandle} (a)
> >{wsrp-userContextKey} (a)
> >{wsrp-portletInstanceKey} (a)
> >{wsrp-sessionID} (a)
> >{wsrp-navigationalState} (b)
> >{wsrp-interactionState} (b)
> >{wsrp-requiresRewrite} (c)
> >{wsrp-mode} (d)
> >{wsrp-windowState} (d)
> >{wsrp-secureURL} (e)
> >{wsrp-fragmentID} (e)
> >{wsrp-token} (e)
> >
> >
> >
> >
> >
> >Only (d) and (e) are likely to cause (very minor) problems so we 
> should not
> >
> >
> >impact the other types.
> >
> >
> >
> >
> >
> >My preference would be to only clarify that (d) can use {wsrp-mode} and
> >{wsrp-windowState} or "" to signal no change is requested. We can 
> introduce
> >
> >
> >a "null" token (in our namespace) in next version.
> >
> >
> >
> >
> >
> >(e) is underspecified but allowed by our grammar (10.2.3). Seems 
> safer not
> >to substitute anything for these.
> >
> >
> >
> >
> >
> >regards,
> >Andre
> >      -----Original Message-----
> >      From: Rich Thompson [mailto:richt2@us.ibm.com]
> >      Sent: 07 November 2003 18:22
> >      To: wsrp-interop@lists.oasis-open.org
> >      Subject: [wsrp-interop] Re: [wsrp-conformance] RE: [wsrp-interop]
> >      follow-up: templates
> >
> >
> >
> >
> >
> >
> >
> >
> >      I think there are a couple of issues here. First, I think it is
> >      worthwhile having a value with a semantic meaning that no 
> change in
> >      mode or windowState is being requested as this eliminates 
> processing
> >      cycles for the Consumer. What that value should be is an 
> interesting
> >      question.
> >
> >
> >
> >
> >
> >      The argument in favor of "" is that no mode or windowState will 
> ever
> >      carry this name and therefore it is a 'safe' value.
> >      The argument in favor of {wsrp-mode} (or ...) is that it makes the
> >      querystring (presuming that is where it is in the URL) more 
> readable.
> >
> >
> >
> >
> >
> >
> >
> >
> >      I think Producers will need a bit of logic that supplies the 
> values
> >      for whatever the Portlet does not set. If a Producer chooses to
> >      simply leave tokens like {wsrp-interactionState} in the URL, 
> then the
> >
> >
> >      Consumer is required to supply that as the interactionState during
> >      the performBlockingInteraction invocation (and likewise for
> >      navigationalState). The simplest bit of logic for the Producer 
> would
> >      be to initialize a set of variables to "" and then provide an
> >      interface which allows the portlet to set any of them it wants. 
> When
> >      the URL's string value is being placed into the markup, the 
> Producer
> >      can simply walk the template and blindly replace the portlet URL
> >      parameters with their values. While this may make odd looking
> >      querystrings, I would note they would be valid (and commonly occur
> >      today).
> >
> >
> >
> >
> >
> >      Rich
> >
> >
> >
> >
> >
> >
> > Andre Kramer
> > <andre.kramer@eu.citrix.com>
> >
> >
> >                                                                        
> To
> > 11/07/2003 12:14 PM                              
> wsrp-interop@lists.oasis
> >                                                  -open.org
> >                                                                        
> cc
> >                                                  
> wsrp-conformance@lists.o
> >                                                  asis-open.org
> >                                                                   
> Subject
> >                                                  [wsrp-conformance] RE:
> >                                                  [wsrp-interop]
> >                                                  follow-up: templates
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >      Yes, I favour 3 as it works for unexpected as well as expected {}
> >      token. Query strings such as ?a=x&b=&c=z look strange so "" 
> does not
> >      seem a natural choice.
> >
> >
> >
> >
> >
> >
> >
> >
> >      Also, custom modes & window states are constrained by the values
> >      negotiated and nav and interaction state are opaque to the 
> consumer.
> >
> >
> >
> >
> >
> >
> >
> >
> >      regards,
> >      Andre
> >
> >
> >
> >
> >
> >
> >
> >
> >      -----Original Message-----
> >      From: Richard Jacob [mailto:richard.jacob@de.ibm.com]
> >      Sent: 07 November 2003 16:25
> >      To: wsrp-interop@lists.oasis-open.org
> >      Cc: wsrp-conformance@lists.oasis-open.org
> >      Subject: [wsrp-interop] follow-up: templates
> >
> >
> >
> >
> >
> >
> >
> >
> >      I wanted to add a question on the topic discussed yesterday on 
> both
> >      calls
> >      about token replacement found in templates (sorry for 
> crossposting):
> >      Does the producer/portlet need to replace all tokens in a template
> >      when
> >      generating URLs?
> >      I think we said yes but might replace them with empty strings.
> >      What in the case of {wsrp-mode} or {wsrp-windowState}? For 
> example a
> >      render
> >      template like: http://bla.com/here?mode={wsrp-mode}&ws
> >      ={wsrp-windowState}....
> >
> >
> >
> >
> >
> >
> >
> >
> >      I see the follwing options here:
> >      1. producer replaces with the mode it wants to "change" to 
> (might be
> >      the
> >      current mode), could be one of the valid wsrp-modes or a 
> custom-mode
> >      2. producer replaces with "" (blank), like suggested in yesterdays
> >      call.
> >      In this case we have an interpretation-issue on the consumer side
> >      when
> >      processing these URLs.
> >      Does a "" mode name mean a mode name containing of an empty 
> string?
> >      In this
> >      case the conumer might not know this mode (abviously) and map 
> it to
> >      view.
> >      Or does a "" mode mean, no change requested, stay in current mode?
> >      The
> >      second one seems to be what the portlet wants in that case.
> >      3. producer does not replace at all
> >      Here the consumer needs to check while processing the URL that the
> >      mode
> >      {wsrp-mode} was a template-non-change and interpret this as 
> "stay in
> >      current mode".
> >
> >
> >
> >
> >
> >
> >
> >
> >      2 & 3 imply that "" and "{wsrp-mode}" are reserved mode strings 
> and
> >      are not
> >      allow to use for mode names (don't think one would ever want to 
> name
> >      modes
> >      that way :-) )
> >
> >
> >
> >
> >
> >
> >
> >
> >      I think 1 is the cleanest one, others seem to impose various
> >      interpretation
> >      possibilities.
> >
> >
> >
> >
> >
> >
> >
> >
> >      It seems that the Citrix Producer chooses 3. for all replacement
> >      tokens in
> >      templates in such cases?
> >
> >
> >
> >
> >
> >
> >
> >
> >      Mit freundlichen Gruessen / best regards,
> >
> >
> >
> >
> >
> >
> >
> >
> >              Richard Jacob
> >      ______________________________________________________
> >      IBM Lab Boeblingen, Germany
> >      Dept.8288, WebSphere Portal Server Development
> >      Phone: ++49 7031 16-3469  -  Fax: ++49 7031 16-4888
> >      Email: mailto:richard.jacob@de.ibm.com
> >
> >
> >
> >
> >
> >
> >
> >
> >      To unsubscribe from this mailing list (and be removed from the 
> roster
> >
> >
> >      of the OASIS TC), go to
> >
> >
> >http://www.oasis-open.org/apps/org/workgroup/wsrp-interop/members/leave_workgroup.php 
>
> >
> >
> >
> >      .
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >To unsubscribe from this mailing list (and be removed from the roster 
> of the OASIS TC), go to 
> http://www.oasis-open.org/apps/org/workgroup/wsrp-interop/members/leave_workgroup.php.
>
> >
> > 
> >
>
>
>
> To unsubscribe from this mailing list (and be removed from the roster 
> of the OASIS TC), go to 
> http://www.oasis-open.org/apps/org/workgroup/wsrp-interop/members/leave_workgroup.php.
>




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