You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jena.apache.org by "Andy Seaborne (JIRA)" <ji...@apache.org> on 2015/06/17 14:14:01 UTC

[jira] [Updated] (JENA-967) Suggested ARQ Extension function: afn:printf(...)

     [ https://issues.apache.org/jira/browse/JENA-967?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andy Seaborne updated JENA-967:
-------------------------------
    Description: 
There are situations where it would be useful to be able to format strings bound to variable. In particular I have wanted to create some zero-filled numeric strings.

I've accomplished the task with a pair of BINDs as follows where {{?code}} is bound to a numeric string:

{noformat}
   BIND( "000000" as ?zfill )
   BIND( concat(if(strlen(?code)>=strlen(?zfill),"",substr(?zfill,strlen(?code)+1)),?code) as ?reg_notation)
{noformat}

But it would have been nice to be able to use something less opaque like:

{noformat}
   BIND( afn:printf("%06d",?code) as ?reg_notation)
{noformat}

So 'improvement'/'new feature' suggestion is an additional ARQ Extension function that exposes java {{printf}} method.



  was:
There are situations where it would be useful to be able to format strings bound to variable. In particular I have wanted to create some zero-filled numeric strings.

I've accomplished the task with a pair of BINDs as follows where `?code` is bound to a numeric string:

   BIND( "000000" as ?zfill )
   BIND( concat(if(strlen(?code)>=strlen(?zfill),"",substr(?zfill,strlen(?code)+1)),?code) as ?reg_notation)

But it would have been nice to be able to use something less opaque like:

   BIND( afn:printf("%06d",?code) as ?reg_notation)

So 'improvement'/'new feature' suggestion is an additional ARQ Extension function that exposes java `printf` method.




> Suggested ARQ Extension function: afn:printf(...)
> -------------------------------------------------
>
>                 Key: JENA-967
>                 URL: https://issues.apache.org/jira/browse/JENA-967
>             Project: Apache Jena
>          Issue Type: New Feature
>          Components: ARQ
>            Reporter: Stuart Williams
>            Priority: Minor
>
> There are situations where it would be useful to be able to format strings bound to variable. In particular I have wanted to create some zero-filled numeric strings.
> I've accomplished the task with a pair of BINDs as follows where {{?code}} is bound to a numeric string:
> {noformat}
>    BIND( "000000" as ?zfill )
>    BIND( concat(if(strlen(?code)>=strlen(?zfill),"",substr(?zfill,strlen(?code)+1)),?code) as ?reg_notation)
> {noformat}
> But it would have been nice to be able to use something less opaque like:
> {noformat}
>    BIND( afn:printf("%06d",?code) as ?reg_notation)
> {noformat}
> So 'improvement'/'new feature' suggestion is an additional ARQ Extension function that exposes java {{printf}} method.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)