- From: Christopher Gutteridge <cjg@ecs.soton.ac.uk>
- Date: Thu, 22 May 2014 09:51:13 +0100
- To: Gregg Kellogg <gregg@greggkellogg.net>, Andy Seaborne <andy@apache.org>
- CC: Ivan Herman <ivan@w3.org>, W3C CSV on the Web Working Group <public-csv-wg@w3.org>
I've done quite a bit of work in this area using our home grown tool and this is fine IF you can proscribe the column headings, the catch is that there's terms which cause problems. You can have characters in a CSV heading which are not legal in a URI. The most obvious of which is \n .. you can have a valid CSV which contains a new line inside a cell. I've also been bitten by the fact that RDF+XML can't express predicates which have a decimal as the first character after the last [/#] eg. <http://example.org/resource/dataset1> <http://example.org/ns/5starRating> "3". To my best knowledge this will upset RDF+XML as you have to write <rdf:Description rdf:about="http://example.org/resource/dataset1" <myns:5starRating xmlns="http://example.org/ns/">3</myns:5starRating> </rdf:Description> and XML does not allow elements to start with 0-9. Sigh. That one really muddled me for a while. My point is that it will take some thought to take what's essentially a free text string and convert it to a part of a URI. I've also found that people who edit spreadsheets are pretty liberal about whitespace and capitalisation. My system turns the headers into camalCase, which covers some of these issues, but that may not work for all, especially non-latin headings. On 22/05/2014 00:37, Gregg Kellogg wrote: > Gregg Kellogg > gregg@greggkellogg.net > > On May 19, 2014, at 7:14 AM, Andy Seaborne <andy@apache.org> wrote: > >> On 19/05/14 15:00, Ivan Herman wrote: >>>>> Generating a template, if none provided, would keep the user-template driven mechanism and metadata-gdefineeneated template mechanism in-step. It would be clear that they aren't alternatives with (potentially) capabilities in the direct roue not in the template route. You could get the generated template and tweak it, for example. >>>>> >>> I would need an example to understand what you mean... >>> >> If the columns are "foo" and "bar" and no template is in the metadata then we define the process to be to create and use: >> >> ------------------------- >> [ >> :foo "{foo}" . >> :bar "{bar}" . >> ] >> ------------------------- > +1; pretty much exactly what I came up with :) > > Gregg > >> Andy >> >> > -- Christopher Gutteridge -- http://users.ecs.soton.ac.uk/cjg University of Southampton Open Data Service: http://data.southampton.ac.uk/ You should read the ECS Web Team blog: http://blogs.ecs.soton.ac.uk/webteam/
Received on Thursday, 22 May 2014 08:52:43 UTC