ODE
  1. ODE
  2. ODE-281

XPath functions for RESTful BPEL: combineUrl, composeUrl, expandTemplate

    Details

    • Type: New Feature New Feature
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.1
    • Fix Version/s: 1.2
    • Component/s: BPEL Runtime
    • Labels:
      None

      Description

      Provide 2 new Xpath functions as described in the ODE wiki:

      _combineUrl(base, relative)_
      ----------------------------------------------------
      Takes the relative URL and combines it with the base URL to return a new absolute URL. If the relative parameter is an absolute URL, returns it instead.

      _composeUrl(template, [name, value]*)_
      _composeUrl(template, pairs)_
      ----------------------------------------------------
      Expands the template URL by substituting place holders in the template, for example, ('/order/

      {id}

      ', 'id', 5) returns '/order/5'. Substitute values are either name/value pairs passed as separate parameters, or a node-set returning elements with name mapping to value. The functions applies proper encoding to the mapped values. Undefined variables are replaced by an empty string.
      Basically a uri is always returned.
      Compliant with the URI Template spec [1].

      _expandTemplate(template, [name, value]*)_
      _expandTemplate(template, pairs)_
      ----------------------------------------------------
      Same behavior as composeUrl except that undefined variables are NOT replaced by an empty string. The corresponding expansion pattern is not replaced. The immediate coensquence is that the function may return a template.

      [1] http://bitworking.org/projects/URI-Templates/spec/draft-gregorio-uritemplate-03.html

        Issue Links

          Activity

          Alexis Midon created issue -
          Alexis Midon made changes -
          Field Original Value New Value
          Description Provide 2 new Xpath functions as described in the ODE wiki:

          __combineUrl(base, relative)__
          ----------------------------------------------------
          Takes the relative URL and combines it with the base URL to return a new absolute URL. If the relative parameter is an absolute URL, returns it instead.

          __composeUrl(template, [name, value]*)__
          __composeUrl(template, pairs)__
          ----------------------------------------------------
          Expands the template URL by substituting place holders in the template, for example, ('/order/{id}', 'id', 5) returns '/order/5'. Substitute values are either name/value pairs passed as separate parameters, or a node-set returning elements with name mapping to value. The functions applies proper encoding to the mapped values, and with incomplete mapping may return a new URL template.
          Provide 2 new Xpath functions as described in the ODE wiki:

          __combineUrl(base, relative)__
          ----------------------------------------------------
          Takes the relative URL and combines it with the base URL to return a new absolute URL. If the relative parameter is an absolute URL, returns it instead.

          __composeUrl(template, [name, value]*)__
          __composeUrl(template, pairs)__
          ----------------------------------------------------
          Expands the template URL by substituting place holders in the template, for example, ('/order/{id}', 'id', 5) returns '/order/5'. Substitute values are either name/value pairs passed as separate parameters, or a node-set returning elements with name mapping to value. The functions applies proper encoding to the mapped values, and with incomplete mapping may return a new URL template.

          See also: http://bitworking.org/projects/URI-Templates/spec/draft-gregorio-uritemplate-03.html
          Alexis Midon made changes -
          Summary Xpath function for RESTful BPEL: combineUrl, composeUrl XPath functions for RESTful BPEL: combineUrl, composeUrl
          Alexis Midon made changes -
          Description Provide 2 new Xpath functions as described in the ODE wiki:

          __combineUrl(base, relative)__
          ----------------------------------------------------
          Takes the relative URL and combines it with the base URL to return a new absolute URL. If the relative parameter is an absolute URL, returns it instead.

          __composeUrl(template, [name, value]*)__
          __composeUrl(template, pairs)__
          ----------------------------------------------------
          Expands the template URL by substituting place holders in the template, for example, ('/order/{id}', 'id', 5) returns '/order/5'. Substitute values are either name/value pairs passed as separate parameters, or a node-set returning elements with name mapping to value. The functions applies proper encoding to the mapped values, and with incomplete mapping may return a new URL template.

          See also: http://bitworking.org/projects/URI-Templates/spec/draft-gregorio-uritemplate-03.html
          Provide 2 new Xpath functions as described in the ODE wiki:

          __combineUrl(base, relative)__
          ----------------------------------------------------
          Takes the relative URL and combines it with the base URL to return a new absolute URL. If the relative parameter is an absolute URL, returns it instead.

          __composeUrl(template, [name, value]*)__
          __composeUrl(template, pairs)__
          ----------------------------------------------------
          Expands the template URL by substituting place holders in the template, for example, ('/order/{id}', 'id', 5) returns '/order/5'. Substitute values are either name/value pairs passed as separate parameters, or a node-set returning elements with name mapping to value. The functions applies proper encoding to the mapped values. Undefined variables are replaced by an empty string.
          Compliant with the URI Template spec [1].


          __expandTemplate(template, [name, value]*)__
          __expandTemplate(template, pairs)__
          ----------------------------------------------------
          Same behavior as composeUrl except that undefined variables are *NOT* replaced by an empty string. The corresponding expansion pattern is not replaced. Meaning that the function may return a template.

          [1] http://bitworking.org/projects/URI-Templates/spec/draft-gregorio-uritemplate-03.html
          Alexis Midon made changes -
          Description Provide 2 new Xpath functions as described in the ODE wiki:

          __combineUrl(base, relative)__
          ----------------------------------------------------
          Takes the relative URL and combines it with the base URL to return a new absolute URL. If the relative parameter is an absolute URL, returns it instead.

          __composeUrl(template, [name, value]*)__
          __composeUrl(template, pairs)__
          ----------------------------------------------------
          Expands the template URL by substituting place holders in the template, for example, ('/order/{id}', 'id', 5) returns '/order/5'. Substitute values are either name/value pairs passed as separate parameters, or a node-set returning elements with name mapping to value. The functions applies proper encoding to the mapped values. Undefined variables are replaced by an empty string.
          Compliant with the URI Template spec [1].


          __expandTemplate(template, [name, value]*)__
          __expandTemplate(template, pairs)__
          ----------------------------------------------------
          Same behavior as composeUrl except that undefined variables are *NOT* replaced by an empty string. The corresponding expansion pattern is not replaced. Meaning that the function may return a template.

          [1] http://bitworking.org/projects/URI-Templates/spec/draft-gregorio-uritemplate-03.html
          Provide 2 new Xpath functions as described in the ODE wiki:

          __combineUrl(base, relative)__
          ----------------------------------------------------
          Takes the relative URL and combines it with the base URL to return a new absolute URL. If the relative parameter is an absolute URL, returns it instead.

          __composeUrl(template, [name, value]*)__
          __composeUrl(template, pairs)__
          ----------------------------------------------------
          Expands the template URL by substituting place holders in the template, for example, ('/order/{id}', 'id', 5) returns '/order/5'. Substitute values are either name/value pairs passed as separate parameters, or a node-set returning elements with name mapping to value. The functions applies proper encoding to the mapped values. Undefined variables are replaced by an empty string.
          Basically a uri is always returned.
          Compliant with the URI Template spec [1].


          __expandTemplate(template, [name, value]*)__
          __expandTemplate(template, pairs)__
          ----------------------------------------------------
          Same behavior as composeUrl except that undefined variables are *NOT* replaced by an empty string. The corresponding expansion pattern is not replaced. The immediate coensquence is that the function may return a template.

          [1] http://bitworking.org/projects/URI-Templates/spec/draft-gregorio-uritemplate-03.html
          Alexis Midon made changes -
          Attachment ODE-281_#1_xpaths_function.patch [ 12381919 ]
          Alexis Midon made changes -
          Summary XPath functions for RESTful BPEL: combineUrl, composeUrl XPath functions for RESTful BPEL: combineUrl, composeUrl, expandTemplate
          Alexis Midon made changes -
          Attachment ODE-281_#1_xpaths_function.patch [ 12381919 ]
          Alexis Midon made changes -
          Attachment ODE-281_#2_xpaths_function.patch [ 12381958 ]
          Alexis Midon made changes -
          Link This issue is part of ODE-282 [ ODE-282 ]
          Alexis Midon made changes -
          Link This issue is part of ODE-282 [ ODE-282 ]
          Alexis Midon made changes -
          Issue Type New Feature [ 2 ] Sub-task [ 7 ]
          Parent ODE-282 [ 12395951 ]
          Alexis Midon made changes -
          Parent ODE-282 [ 12395951 ]
          Issue Type Sub-task [ 7 ] New Feature [ 2 ]
          Alexis Midon made changes -
          Link This issue is part of ODE-282 [ ODE-282 ]
          Alexis Midon made changes -
          Attachment ODE-281_#2_xpaths_function.patch [ 12381958 ]
          Alexis Midon made changes -
          Attachment ODE-281_#2_xpath_functions.patch [ 12381996 ]
          Matthieu Riou made changes -
          Fix Version/s 1.2 [ 12312664 ]
          Hide
          Matthieu Riou added a comment -

          Patch applied.

          Show
          Matthieu Riou added a comment - Patch applied.
          Matthieu Riou made changes -
          Resolution Fixed [ 1 ]
          Status Open [ 1 ] Resolved [ 5 ]
          Assignee Matthieu Riou [ mriou ]

            People

            • Assignee:
              Matthieu Riou
              Reporter:
              Alexis Midon
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development