db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Rick Hillegas (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (DERBY-6256) Move the XmlVTI into the product.
Date Fri, 05 Jul 2013 12:15:49 GMT

    [ https://issues.apache.org/jira/browse/DERBY-6256?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13700629#comment-13700629
] 

Rick Hillegas commented on DERBY-6256:
--------------------------------------

Thanks, Knut. That's a good point. I can add a new constructor which takes an URL instead
of a string. Because URL is Serializable, that constructor would be usable provided that the
user first bound a user-defined type to URL:

create type URL external name 'java.net.URL' language java;

I think that an URL will survive transmission across the network. Technically, File is Serializable
too, so it would be possible to bind a user-defined type to it and add a constructor with
a File argument. But I don't think that File, either in its raw form or in its string form,
will be meaningful when sent across a network. The file is only usable when it's located server-side.
It still makes sense to me that the constructor with the string argument should be used for
xml resources stored in server-side files. Existing Derby routines represent file arguments
as strings and it seems reasonable to me to follow that convention.

Thanks,
-Rick
                
> Move the XmlVTI into the product.
> ---------------------------------
>
>                 Key: DERBY-6256
>                 URL: https://issues.apache.org/jira/browse/DERBY-6256
>             Project: Derby
>          Issue Type: Improvement
>          Components: SQL, Tools
>    Affects Versions: 10.11.0.0
>            Reporter: Rick Hillegas
>            Assignee: Rick Hillegas
>              Labels: derby_triage10_11
>         Attachments: derby-6256-01-aa-move-XmlVTI-into-product.diff, derby-6256-02-aa-allowParentTags.diff,
derby-6256-03-aa-useFileNotURL.diff
>
>
> The XmlVTI under derbyDemo has been useful to me for many years. It has become even more
useful now that Derby supports varargs. That is because varargs make it very easy to declare
an XmlVTI. At this point, I think it is worth re-phrasing the XmlVTI in terms of varargs and
moving it into the product so that we can use it for internal table functions. There is no
rush to expose XmlVTI as part of Derby's public api, but we could consider doing that if other
people find this table function to be useful.
> The XmlVTI is a table function which turns an xml file into a tabular data set which
you can query via sql. When you declare an XmlVTI, you state the following arguments:
> 1) The url of an xml file.
> 2) The name of the element in the xml file which you want to treat as a record or row.
> 3) The names of the attributes and subelements of that record which you want to treat
as columns. Now that we have varargs, it is possible to represent this trailing argument as
a variable length argument list.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message