On Friday 30 May 2008 09:22:57 Tammo van Lessen wrote:
> Hi Marc,
>
> thanks for the patch. Would you mind to file a JIRA with the patch and
> select the ASF License grant check box? Otherwise we cannot directly
> incorporate it...

done.

best regards Marc

> Thanks,
>    Tammo
>
> Marc Bischof wrote:
> > Hej devs,
> >
> > here is the patch for the grammar and the tree-grammar.
> >
> > Marc
> >
> > On Thursday 29 May 2008 17:57:30 Alex Boisvert wrote:
> >> Hi Marc,
> >>
> >> Yes, you're right about the cardinality issue in the grammar.  A patch
> >> would be greatly appreciated!
> >>
> >> alex
> >>
> >> On Thu, May 29, 2008 at 8:23 AM, Marc Bischof <[EMAIL PROTECTED]> wrote:
> >>> Hello devs,
> >>>
> >>> I'am a student at the IAAS and working on a BPEL2SimPEL translator.
> >>>
> >>> I looked at the SimPEL-Grammar and I think you've missed something when
> >>> modeling non-empty lists.
> >>>
> >>> I also propose that the rewrite-rules should be correct in the grammar
> >>> so the translation into tree-grammar would be clearer and less error
> >>> prone.
> >>>
> >>> Here a short example:
> >>>
> >>> In the param_block-rule you've modeled an optional ID-list. But in the
> >>> rewrite-rule this is missing. So I think that there should be $in* (in
> >>> general this should be a $in+, but in this special case the complete
> >>> list is
> >>> optional).
> >>> When this was done in the proposed way in the grammar, it would also
> >>> affect the tree-grammar. There, the param-block-rule is currently
> >>> modeled with $ID+
> >>> instead of $ID*.
> >>>
> >>> So I went over the grammar and looked for these errors (changes in
> >>> tree-grammar analog):
> >>>
> >>> * param_block : '{' ('|' in+=ID (',' in+=ID)* '|')? proc_stmt+ '}' ->
> >>> ^(SEQUENCE $in proc_stmt+);
> >>>
> >>>> param_block : '{' ('|' in+=ID (',' in+=ID)* '|')? proc_stmt+ '}' ->
> >>>
> >>> ^(SEQUENCE $in* proc_stmt+);
> >>>
> >>> * flow : 'parallel' b+=body ('and' b+=body)* -> ^(FLOW $b);
> >>>
> >>>>    flow : 'parallel' b+=body ('and' b+=body)* -> ^(FLOW $b+);
> >>>
> >>> * join : 'join' '(' k+=ID (',' k+=ID)* (',' expr)? ')' -> ^(JOIN $k
> >>> expr?);
> >>>
> >>>>    join : 'join' '(' k+=ID (',' k+=ID)* (',' expr)? ')' -> ^(JOIN $k+
> >>>
> >>> expr?);
> >>>
> >>> * with_ex : 'with' '(' wm+=with_map (',' wm+=with_map)* ')' body ->
> >>> ^(WITH $wm* body);
> >>>
> >>>>    with_ex : 'with' '(' wm+=with_map (',' wm+=with_map)* ')' body ->
> >>>
> >>> ^(WITH
> >>> $wm+ body);
> >>>
> >>> * partner_link : 'partnerLink' pl+=ID (',' pl+=ID)* -> ^(PARTNERLINK
> >>> $pl);
> >>>
> >>>>    partner_link : 'partnerLink' pl+=ID (',' pl+=ID)* -> ^(PARTNERLINK
> >>>
> >>> $pl+);
> >>>
> >>> * correlation : '{' corr_mapping (',' corr_mapping)* '}' ->
> >>> ^(CORRELATION corr_mapping*);
> >>>
> >>>  >   correlation : '{' corr_mapping (',' corr_mapping)* '}' ->
> >>>
> >>> ^(CORRELATION
> >>> corr_mapping+);
> >>>
> >>> * path_expr : pelmt+=ns_id ('.' pelmt+=ns_id)* -> ^(PATH $pelmt);
> >>>
> >>>>    path_expr : pelmt+=ns_id ('.' pelmt+=ns_id)* -> ^(PATH $pelmt+);
> >>>
> >>> Do you think, I'm right. Should I file a patch?
> >>>
> >>> Kind regards
> >>>     Marc Bischof


Reply via email to