Available formats: content-negotiated html turtle (see SIOC for the vocabulary)
Back to channel and daily index: content-negotiated html turtle
These logs are provided as an experiment in indexing discussions using IRCHub.py, Irc2RDF.hs, and SIOC.
| 04:04:45 | <chmod007_> | If I’m getting a URI from an <a href> in an XHTML document, should I decode percent escapes before using it as an rdf:resource document identifier? |
| 04:08:15 | <chmod007_> | I’m not allowed to, am I?… |
| 06:32:15 | <dorian> | durr i totally forgot anselm was on this channel |
| 16:21:23 | <nslater> | I read somewhere that the RDF description of a resource shouldnt live at the same URI as the resource it's self. This makes no sense to me, so I wanted to read up on the issues at hand. I would have thought that the best way to do it would be to serve up RDF for a URI via regular conneg. |
| 16:26:47 | <sbp> | nslater: yeah, I think the mentality is generally to use conneg when you can |
| 16:26:53 | <sbp> | but see also the RDFQA mentality |
| 16:28:03 | <sbp> | ACTION thought danja blogged about this recently, goes a-findin' |
| 16:28:58 | <sbp> | ah, in http://dannyayers.com/2007/11/14/hash-soup |
| 16:29:10 | <sbp> | URIQA, not RDFQA |
| 16:29:12 | <sbp> | -> http://sw.nokia.com/uriqa/URIQA.html |
| 16:29:29 | <sbp> | but again, conneg == good as far as I can tell |
| 16:50:28 | <nslater> | oh thanks, ill take a read now |
| 17:08:54 | <Shepard> | nslater: also see http://www.w3.org/2001/sw/sweo/public/2007/cooluris/ or http://www.dfki.uni-kl.de/~sauermann/2006/11/cooluris/#choosing and http://www.w3.org/TR/swbp-vocab-pub/ and http://www.w3.org/2001/tag/doc/httpRange-14/2007-05-31/HttpRange-14 (which doesn't seem to be supported anymore in the latest version) |
| 17:09:53 | <nslater> | reading |
| 17:11:04 | <nslater> | ooh, looks very useful - thanks |
| 17:36:22 | <nslater> | So, from reading that it talks about 302 redirects for HTML vs RDF, what about if you have pdf/txt/ps/html and rdf, do you have a seperate URI for all of them or only two, one for the rdf and one for the representation? |
| 17:36:56 | <sbp> | you have only one for all of them, if you want |
| 17:37:16 | <nslater> | that goes against everything in http://www.w3.org/2001/sw/sweo/public/2007/cooluris/ |
| 17:37:32 | <nslater> | it also prevents you from linking the representation to the rdf, you need a seperate uri |
| 17:38:18 | <sbp> | (perhaps you meant 303?) |
| 17:38:25 | <nslater> | perhaps i did :) |
| 17:38:34 | <nslater> | maybe it would make sense to have a uri like this |
| 17:38:34 | <sbp> | :-) |
| 17:38:40 | <nslater> | /foo/bar/baz |
| 17:38:41 | <sbp> | even then, I think you probably could send different responses depending on the Accept |
| 17:38:52 | <nslater> | that uri then uses conneg to send you to a direct uri such as |
| 17:38:57 | <nslater> | /foo/bar/baz.rdf |
| 17:38:59 | <nslater> | /foo/bar/baz.html |
| 17:39:03 | <nslater> | /foo/bar/baz.pdf |
| 17:39:06 | <sbp> | right |
| 17:39:10 | <nslater> | using 303 redirects |
| 17:39:18 | <sbp> | makes sense to me |
| 17:39:22 | <nslater> | then you can interlink them all using meta elements and rdf |
| 17:39:28 | <nslater> | hmm, that makes sense to me too |
| 17:40:00 | <nslater> | so, it would make sense to never return a 2xx for /foo/bar/baz? |
| 17:40:16 | <nslater> | /foo/bar/baz becomes the uri of the resource but never the url of a representation |
| 17:40:20 | <sbp> | of course. imagine if it were only redirecting to one place |
| 17:40:25 | <sbp> | then it'd never be returning a 2xx code too |
| 17:40:41 | <nslater> | you lost me |
| 17:40:52 | <sbp> | URIs are always the URIs of resources |
| 17:41:05 | <sbp> | so, take the Dublin Core case |
| 17:41:18 | <sbp> | .head http://purl.org/dc/elements/1.1/title Location |
| 17:41:21 | <phenny> | Location: http://dublincore.org/2006/12/18/dces.rdf#title |
| 17:41:26 | <sbp> | .head http://purl.org/dc/elements/1.1/title |
| 17:41:29 | <phenny> | Status: 302 (for more, try ".head uri header") |
| 17:41:37 | <sbp> | er, bad example |
| 17:41:43 | <nslater> | ACTION looks confused |
| 17:41:49 | <sbp> | .head http://xmlns.com/foaf/0.1/name Location |
| 17:41:52 | <phenny> | Location: http://xmlns.com/foaf/spec/ |
| 17:41:54 | <sbp> | .head http://xmlns.com/foaf/0.1/name |
| 17:41:56 | <phenny> | Status: 303 (for more, try ".head uri header") |
| 17:41:59 | <sbp> | there we go |
| 17:42:08 | <nslater> | wha...? |
| 17:42:09 | <sbp> | so, http://xmlns.com/foaf/0.1/name only ever returns a 303 |
| 17:42:18 | <sbp> | it only ever redirects to http://xmlns.com/foaf/spec/ too |
| 17:42:38 | <sbp> | <http://xmlns.com/foaf/0.1/name> a rdf:Property . |
| 17:42:41 | <nslater> | right, so http://xmlns.com/foaf/0.1/name is the uri |
| 17:42:44 | <sbp> | yes |
| 17:42:46 | <nslater> | http://xmlns.com/foaf/spec/ is the url? |
| 17:43:02 | <sbp> | the url? it's a URI and it's a URL |
| 17:43:07 | <sbp> | I'm not sure about *the* URL. what is "the" URL? |
| 17:43:14 | <sbp> | A:|FOAF Specification |
| 17:43:28 | <sbp> | it's easy to tie yourself up in knots with this |
| 17:43:35 | <sbp> | but actually it's quite simple |
| 17:43:45 | <nslater> | but, we are agreed that my proposed way of laying things out makes sense? |
| 17:43:52 | <nslater> | even if there is only one respresentation of the resource |
| 17:44:05 | <sbp> | yes, that layout suggestion makes sense |
| 17:44:06 | <nslater> | /foo/bar/baz --> 303 --> /foo/bar/baz.html |
| 17:44:24 | <sbp> | FOAF does it, as I say |
| 17:45:01 | <nslater> | okay, now, in my implementation i will want to diferentiate between language as well as media type, so it would actually look like: |
| 17:45:06 | <nslater> | /foo/bar/baz --> 303 --> /foo/bar/baz.en.html |
| 17:45:14 | <sbp> | no problem |
| 17:45:16 | <nslater> | but... the same wouldnt apply to the rdf |
| 17:45:24 | <sbp> | still no problem |
| 17:45:33 | <nslater> | i assume you only have one rdf document even for a resource with representations in many languages |
| 17:45:47 | <sbp> | well, you don't have to |
| 17:46:08 | <sbp> | baz.en.html and baz.fr.html would be fine |
| 17:46:11 | <sbp> | er... |
| 17:46:17 | <sbp> | baz.en.rdf and baz.fr.rdf even |
| 17:46:49 | <nslater> | but, i *could* combine them into one, i mean, realisticly, what seperate information could i convey for the different languages? |
| 17:46:53 | <sbp> | the first might have { :dog rdfs:label "dog"@en } in it and the second { :dog rdfs:label "chien"@fr } |
| 17:46:56 | <nslater> | ... translator, and thats about it |
| 17:46:57 | <sbp> | you could, yes |
| 17:47:20 | <sbp> | so you might have baz.rdf contain { :dog rdfs:label "dog"@en . :dog rdfs:label "chien"@fr } |
| 17:47:23 | <nslater> | aha, yesh - i suppose that makes sense... |
| 17:47:36 | <nslater> | what notation are you using there? |
| 17:47:52 | <sbp> | it might make more sense to split it though if the client is requesting a particular language: give it what it wants |
| 17:47:58 | <sbp> | I'm using a language called Turtle |
| 17:48:01 | <sbp> | .g Turtle RDF |
| 17:48:04 | <phenny> | sbp: http://www.dajobe.org/2004/01/turtle/ |
| 17:48:16 | <sbp> | and I'm using { and } to quote it |
| 17:48:36 | <sbp> | it's a quick, non-XML way of writing RDF |
| 17:48:38 | <nslater> | right you are... okay, so rdf per language makes sense too... this is all very interesting |
| 17:49:14 | <sbp> | don't let any architecture writeup convince you into doing something unintuitive :-) |
| 17:49:33 | <sbp> | because the idea in Web Architecture is to do things as naturally and decently as possible |
| 17:49:41 | <sbp> | if it 'urts, don't prod it |
| 17:49:48 | <nslater> | ... i am writing some software for GNU that manages a collection of source documents and automatically generates the metadata and alternate representations and then serves them up in a nice semweb/conneg fashion |
| 17:50:03 | <nslater> | ... has anyone done this before, in a generic fashion? |
| 17:50:04 | <sbp> | what package is it part of, may I ask? |
| 17:50:15 | <sbp> | "source documents" - for what? |
| 17:50:16 | <nslater> | it's its own package |
| 17:50:47 | <nslater> | source documents, you know - anything - txt, rtf, word, docbook, then it processes them and converts them to a set of standard representations |
| 17:51:07 | <nslater> | i just want to know if there is any prior art, or anything i can borrow from |
| 17:51:23 | <sbp> | timbl was working on an RDF make language once, I think |
| 17:51:33 | <sbp> | not sure how far he got with it, if at all |
| 17:51:52 | <sbp> | I've been thinking about revisiting it myself even |
| 17:52:07 | <nslater> | so, you dump in a document (txt, doc, rtf) and the application adds metadata and processes this into html,txt,ps,pdf,rdf,etc,etc and publishes using the method we just described |
| 17:52:14 | <sbp> | might be nifty for modelling the flow between documents |
| 17:52:50 | <nslater> | it seems like the kinda thing someone else might have built |
| 17:52:56 | <sbp> | not as far as I know |
| 17:53:14 | <nslater> | cool, that makes the project a lot more exciting |
| 17:53:17 | <nslater> | ACTION grins |
| 17:53:18 | <sbp> | heh, heh |
| 17:53:40 | <nslater> | GNU Publish will be it's name, it's a way off yet - but keep en eye open for it. ;) |
| 17:54:12 | <sbp> | ooh, you're a CouchDb contributor |
| 17:54:27 | <nslater> | oh yes, you googled me then, or your a stalker ;) heh |
| 17:54:33 | <sbp> | or both |
| 17:54:39 | <nslater> | and a gnu webmaster ^^^ |
| 17:54:45 | <nslater> | ACTION grins |
| 17:54:48 | <sbp> | yeah, saw that |
| 17:54:51 | <nslater> | heh |
| 17:55:02 | <nslater> | have you tried couchdb? |
| 17:55:09 | <sbp> | no |
| 17:55:09 | <nslater> | we just released 0.7.0 last night... |
| 17:55:20 | <sbp> | I've heard raves about it from friends et al. |
| 17:55:43 | <nslater> | its pretty awsum imho, but i can say that because im not the primary dev ;) |
| 17:55:48 | <sbp> | heh |
| 17:55:56 | <sbp> | can't really think of a use for it yet, is the problem |
| 17:56:41 | <nslater> | yeah, annoyingly i joined the project many months ago thinkging i would use it for gnu publish, i then realised that i could just use the filesystem for my purposes, but meh - im onboard now so no sense jumping ship |
| 17:57:10 | <sbp> | indeed. I've lost count of the times where I realised I could implement something using filesystem-as-database instead |
| 17:57:31 | <nslater> | yeah, it was a massive revelation to me, one of those eurika moments |
| 17:57:57 | <nslater> | the obsession with rdms is baked in pretty strong for most developers |
| 17:58:04 | <sbp> | yeah, dunno why |
| 18:00:46 | <nslater> | so, lets say you set up gnu publish and you write an essay with the uri: |
| 18:01:06 | <nslater> | /rants/i-love-jam |
| 18:01:22 | <nslater> | a web surfer requests this and gets 303 redirected to |
| 18:01:30 | <nslater> | /rants/i-love-jam.en.html |
| 18:01:56 | <nslater> | then the web surfer wants to link to your rant about jam and links direct to the representation instead of the resource |
| 18:02:12 | <nslater> | ... so all the korean readers miss out on your splendid korean translation |
| 18:02:19 | <nslater> | ... and no one finds out about your pdf version |
| 18:02:37 | <nslater> | surely this model is broken? maybe my way of thinking about it |
| 18:03:30 | <sbp> | ah, good point |
| 18:03:54 | <nslater> | so... whats broken with this way of doing things? |
| 18:04:03 | <sbp> | well you don't need to use a 303 |
| 18:04:06 | <nslater> | or rather, how would i fix it |
| 18:04:12 | <sbp> | fix: don't use a 303 |
| 18:04:26 | <nslater> | yeah, i was thinking that, but i could still reference the other uris directly |
| 18:04:27 | <nslater> | right? |
| 18:04:29 | <sbp> | you only use 303 on things that aren't information resources |
| 18:04:35 | <nslater> | ah, right |
| 18:04:47 | <sbp> | you don't have to reference them at all |
| 18:04:47 | <nslater> | a document is clearly an information resource |
| 18:05:05 | <sbp> | so in this case, /rants/i-love-jam just returns a 200 under conneg giving the content of /rants/i-love-jam.en.html |
| 18:05:09 | <sbp> | it doesn't redirect at all |
| 18:05:11 | <nslater> | but lets say, in the html representation i want to link to the rdf representation and the pdf representation i need a direct uri |
| 18:05:27 | <sbp> | then you can use the /rants/i-love-jam.en.html etc. URIs |
| 18:05:36 | <nslater> | aha, and that makes sense? |
| 18:05:39 | <sbp> | yep |
| 18:05:50 | <nslater> | until today i didnt think one resource could have multiple uris |
| 18:05:55 | <nslater> | ... it feels "wrong" |
| 18:06:03 | <sbp> | :-) |
| 18:06:19 | <nslater> | you're meant to say "nah, it's okay, really" |
| 18:06:22 | <nslater> | ACTION winks |
| 18:06:32 | <sbp> | it is okay |
| 18:06:36 | <nslater> | hehe |
| 18:06:45 | <sbp> | think of them as synonyms, perhaps |
| 18:07:15 | <nslater> | perhaps... stil feels "dirty" - maybe its my hatred of redundancy comming through |
| 18:07:17 | <nslater> | :) |
| 18:07:31 | <nslater> | okay, how about this... |
| 18:07:32 | <sbp> | the web is pretty redundant though |
| 18:07:38 | <nslater> | touche |
| 18:07:38 | <sbp> | at least, it has to cope with redundancy |
| 18:07:47 | <nslater> | which of these feels cleaner to you: |
| 18:07:49 | <sbp> | there's a lot of duplicated data |
| 18:08:09 | <sbp> | * linen |
| 18:08:10 | <sbp> | * cotton |
| 18:08:34 | <nslater> | /rants/i-like-jam.en.html$ |
| 18:08:34 | <nslater> | /rants/i-like-jam?language=en&type=html$ |
| 18:08:34 | <nslater> | /rants/i-like-jam#en.html |
| 18:08:44 | <nslater> | ignore the dollar signs please |
| 18:08:49 | <nslater> | /rants/i-like-jam.en.html |
| 18:08:49 | <nslater> | /rants/i-like-jam?language=en&type=html |
| 18:08:52 | <nslater> | /rants/i-like-jam#en.html |
| 18:08:55 | <nslater> | sucky irc client... |
| 18:09:06 | <sbp> | for what? what are they meant to be identifying? |
| 18:09:27 | <sbp> | they're all valid URI references, assuming some base |
| 18:09:27 | <nslater> | suggestions for referencing a specific representation of a resource |
| 18:09:45 | <sbp> | well /rants/i-like-jam.en.html is the normal way of doing it, no? |
| 18:10:07 | <nslater> | yes, but the other two keep the same resolvable uri |
| 18:10:15 | <nslater> | which feels "cleaner" perhaps |
| 18:10:26 | <sbp> | hmm |
| 18:10:35 | <nslater> | not sure using fragids makes sense really |
| 18:10:45 | <sbp> | using fragids for this is fine |
| 18:11:06 | <sbp> | except you can't use it to get the representation variant you want |
| 18:11:18 | <sbp> | via HTTP, that is |
| 18:11:21 | <nslater> | thats true, its not passed over http |
| 18:11:24 | <nslater> | damn heh |
| 18:11:40 | <sbp> | really, /rants/i-like-jam?language=en&type=html is no better or worse than /rants/i-like-jam.en.html |
| 18:11:50 | <sbp> | don't let the way that web servers work slip you a dummy |
| 18:12:04 | <sbp> | it may be that /rants/i-like-jam.en.html?something has nothing to do with /rants/i-like-jam.en.html |
| 18:12:23 | <nslater> | is there no semantic difference between the two? |
| 18:12:59 | <sbp> | (whoops, I meant /rants/i-like-jam?language=en&type=html and /rants/i-like-jam.en.html of course--but it's true in general where URIs are not equal) |
| 18:13:13 | <sbp> | semantic difference? well they can be identifying entirely different things |
| 18:13:26 | <sbp> | it's also true of /some/path/ and /some/path for example |
| 18:13:37 | <nslater> | no, i mean, does either one carry any different semantics? |
| 18:13:46 | <nslater> | as in, more than just here is a URI |
| 18:13:51 | <sbp> | most web servers, when they are given /some/path and locally path is a directory, will send a redirect to /some/path/, but they don't actually have to |
| 18:13:56 | <sbp> | nope, they're just URIs |
| 18:14:13 | <sbp> | nothing innately special about either |
| 18:14:32 | <nslater> | yeah, i prefer the trailing slash, looks nicer :) |
| 18:14:57 | <sbp> | the point is that /some/path might be a document about Dogs and /some/path/ might be a document about Neptune |
| 18:15:07 | <sbp> | and they both return a 200 response |
| 18:15:30 | <nslater> | true, im still undecided how i am going to handle it in my app, i would like to normalise really - so that /some/path redirects to /some/path/ |
| 18:15:34 | <sbp> | the axiom is: URIs are opaque |
| 18:16:08 | <nslater> | but then where do the representations live? /some/path/en.html or /some/path/index.en.html |
| 18:16:31 | <nslater> | given a standard apache install and no funky re-writes, i am wondering the best way to organise it |
| 18:16:40 | <sbp> | aye |
| 18:16:45 | <sbp> | in that case it'd be index.en.html |
| 18:16:55 | <sbp> | that's what apache would demand to do conneg properly there |
| 18:17:01 | <sbp> | or whatever the DirectoryIndex is set to, of course |
| 18:17:02 | <nslater> | at least in that way i could use an index.var for the conneg |
| 18:17:23 | <nslater> | yeah, true, just using index as an example |
| 18:17:53 | <nslater> | it would allow me to use /some/path/ and apache would not only redirect to add the trailing slash but would perform conneg automatically for me \o/ |
| 18:18:14 | <nslater> | /some/path/index.en.html seems a little crufty of the implementation though |
| 18:18:37 | <nslater> | /some/path/en.html would be better, but not sure I could do that easily |
| 18:18:48 | <nslater> | anyway, sorry - this is way OT for semweb discussion |
| 18:18:53 | <nslater> | #apache is where is should be ;) |
| 18:19:40 | <sbp> | we slide easily |
| 18:19:46 | <nslater> | heh, i can imagine |
| 18:21:16 | <sbp> | ACTION is currently thinking about how to hash an RDF document |
| 18:21:25 | <nslater> | hash, as in md5? |
| 18:21:52 | <sbp> | I just realised that in Jeremy Carroll's canonicalisation algorithm, you can XOR hashes to prevent having to sort lexicographically, after the one-step labelling process is complete |
| 18:21:53 | <sbp> | yeah |
| 18:21:58 | <sbp> | for, like, signing graphs |
| 18:22:33 | <sbp> | you still have to do the step 5 sort |
| 18:22:41 | <sbp> | but this means you don't have to do the step 8 sort |
| 18:22:58 | <nslater> | how do you include a signature for a document with the document it's self using a hash? |
| 18:23:06 | <nslater> | this is way over /my/ head |
| 18:23:10 | <sbp> | heh, you don't. but I have been thinking about that |
| 18:23:21 | <sbp> | what you could do is define a patch-like system |
| 18:23:34 | <sbp> | so you effectively say "this is the hash of this document if this triple weren't included" |
| 18:23:38 | <sbp> | which is kinda nifty |
| 18:23:40 | <nslater> | yeah, doesnt http provide an extension for signing a response body? |
| 18:23:41 | <timbl> | ACTION wakes up, rewinds |
| 18:23:56 | <sbp> | not as far as I know, but possibly |
| 18:24:23 | <nslater> | im sure i read something from sam ruby about signing http responses, but meh |
| 18:24:36 | <timbl> | hmmm . hashing graphs is tricky, spb ... why don'y you hash a specific serialization of it? |
| 18:24:42 | <sbp> | this? http://intertwingly.net/blog/2007/10/07/Secure-Business-Data-Interchange-Using-HTTP |
| 18:24:50 | <nslater> | quite possibly |
| 18:24:55 | <sbp> | timbl: because you still have to canonicalise it |
| 18:25:02 | <sbp> | i.e. the order of the triples is important |
| 18:25:10 | <sbp> | oh, you mean... right |
| 18:25:19 | <sbp> | yeah, I know that's what people do mainly nowadays |
| 18:25:19 | <timbl> | Well, it depends on what you want the signature for. |
| 18:25:35 | <timbl> | If it for people who have seen the document, mail etc, then they can check the original bytes |
| 18:26:09 | <timbl> | I could sell you a canonicalization routine .. but it better architecture not to go there if you don't have to IMHO |
| 18:26:09 | <sbp> | the main reason I've been thinking about this is in trying to implement n3 |
| 18:26:14 | <sbp> | you have to canonicalise the graphs, right? |
| 18:26:20 | <sbp> | the formulae, I should say |
| 18:26:34 | <timbl> | ummm ... well, you don't *have* to |
| 18:26:46 | <sbp> | you do if you want to use cwm tests! :-) |
| 18:27:02 | <sbp> | or test against cwm as a reference implementation |
| 18:27:27 | <timbl> | Ah .. yes .. then you have to canon'ize for the test results. So you could just use th same cant.py |
| 18:27:31 | <sbp> | of course the problem with jjc's algorithm is that it doesn't work for all graphs; but also it's a deterministic algorithm, so actually it's not all that expensive |
| 18:27:54 | <timbl> | I suspect jjc;s algio is very similar to cant.py's |
| 18:27:58 | <sbp> | hmm, that's a point |
| 18:28:06 | <timbl> | cnt.py will cononicalize it or tell you it cn't/ |
| 18:28:18 | <sbp> | oh, it doesn't canonicalise all graphs? that's interesting |
| 18:28:24 | <timbl> | In practice I haven't found a test suite result which it can't |
| 18:28:29 | <sbp> | gotcha |
| 18:28:51 | <timbl> | Well, if you try to canonicalize something with a lot of symmetry, you cant find a magic starting place. |
| 18:29:03 | <sbp> | right, if it's a big mass of bNodes... |
| 18:29:17 | <sbp> | but those documents don't tend to be interesting, thankfully |
| 18:29:17 | <timbl> | You can then of course look at its symmetry and determine that then there are some chioice which are arbitrary -- it doens't do that |
| 18:29:25 | <timbl> | Indeed. |
| 18:29:39 | <timbl> | So please not to make any test cases with hypercubes as output. |
| 18:29:43 | <sbp> | hehe |
| 18:29:49 | <timbl> | (Just the thing Yosi does for fun) |
| 18:29:51 | <sbp> | I'll try... |
| 18:30:26 | <timbl> | I was just working on tabulator to get it viewing nested formulae |
| 18:30:43 | <sbp> | interesting. what use-case for? |
| 18:31:08 | <Wikier> | hi |
| 18:31:12 | <sbp> | hey Wikier |
| 18:32:22 | <timbl> | Use-case is showing users policies. |
| 18:32:42 | <timbl> | and rule files and proofs and stuff |
| 18:35:02 | <sbp> | ACTION looks at http://www.w3.org/DesignIssues/diagrams/arch/follow.png again haven't implemented a huge swathe of it today; notices it doesn't mention character encoding, which is a big part of what he's had to deal with today |
| 18:35:23 | <timbl> | nslater, you can never use the same URI for two different things. So a picture and info about the picture are different. |
| 18:35:23 | <sbp> | especially for detecting GRDDL, because you have to peek for <meta http-equiv ... charset=... |
| 18:35:34 | <timbl> | character encodinh |
| 18:35:52 | <sbp> | (if there's no charset= in the HTTP header) |
| 18:36:40 | <nslater> | timbl: so /some/document/ should never serve up RDF about it's self? |
| 18:38:10 | <nslater> | timbl: given a set of documents/articles (information resources) are you saying i should keep all the representations under a single URI served up with conneg but have the RDF located elsewhere? |
| 18:38:40 | <timbl> | char encoding. yes |
| 18:39:20 | <sbp> | so in general you don't parse bytes, you parse a unicode string (from a bytes, encoding tuple over HTTP) |
| 18:39:33 | <timbl> | nslater, if all the representations you have are equivalent, they really are substitutble, have thr sem content, then yes you can. |
| 18:40:05 | <timbl> | but note you can give them each separate URIs just in case you want to refer to one specifically. |
| 18:40:12 | <timbl> | the Apache conneg module does this |
| 18:40:25 | <nslater> | timbl: but you wouldnt consider an rdf document about the resource to be a representation of said resource? |
| 18:40:53 | <timbl> | So on the w3.org site fo.gif and foo.jpg foo.pdf etc can all exist, but the link is always to foo |
| 18:40:59 | <timbl> | and then conneg works |
| 18:41:11 | <nslater> | yeah, totally - that makes sense |
| 18:41:17 | <timbl> | if you have an RDF file of metadata about foo, then that should NOT be connegged. |
| 18:41:29 | <nslater> | right, that's where i was misunderstanding things |
| 18:41:44 | <timbl> | I have played with using HTTP link headers to link from the photo etc to the metadata |
| 18:41:50 | <nslater> | leaves me a pickle where to store the rdf though, but thats an unrelated problem |
| 18:41:58 | <timbl> | Wy a pickle/ |
| 18:42:03 | <timbl> | Why a pickle? |
| 18:42:07 | <nslater> | yeah, or embed a link to the rdf inside the image meta data |
| 18:42:18 | <timbl> | In XMP |
| 18:42:28 | <timbl> | If you can munge the image, then sure |
| 18:42:40 | <timbl> | ]if you can't then it has to be an HTTP header |
| 18:42:47 | <nslater> | well, my application lets users place documents anywhere they wish, i want the application to generate the rdf - so should it just take /some/document/ and pop a /data/some/document/ rdf file? |
| 18:43:28 | <nslater> | or perhaps just use /some/document/rdf... |
| 18:43:45 | <timbl> | $ curl -I http://www.w3.org/2007/ont/unit gives Link: meta;rel=meta |
| 18:43:46 | <timbl> | as an example |
| 18:44:18 | <timbl> | |
| 18:44:30 | <timbl> | ummm filename generation for meta files ... many opions |
| 18:44:46 | <nslater> | actually, that makes sense - if you have /some/document/ with /some/document/html and /some/document/txt that can either be served with conneg for /some/document/ or dereferenced directly then I could also have /some/document/rdf which is never served up with conneg but referenced from the html or via http headers as you say |
| 18:45:28 | <sbp> | hmm |
| 18:45:28 | <sbp> | $ curl -I http://www.w3.org/2007/ont/unit |
| 18:45:28 | <sbp> | HTTP/1.1 200 OK |
| 18:45:29 | <timbl> | For apacjhe, it has to be .html not /html |
| 18:45:35 | <sbp> | that's illegal; Link was removed from HTTP 1.1 |
| 18:46:05 | <timbl> | Link was, I am told, ommitted by mistake |
| 18:46:07 | <nslater> | yeah, i would probably do it with index.html, index.txt and index.rdf |
| 18:46:11 | <timbl> | It was in an earlier versions. |
| 18:46:13 | <sbp> | I wrote to Mark Nottingham the other day about this--he's trying to get it reinstated |
| 18:46:15 | <nslater> | then use an index.var which misses out the index.rdf |
| 18:46:22 | <sbp> | but that process seems to have stalled |
| 18:46:28 | <sbp> | (hence my writing to him) |
| 18:46:28 | <timbl> | stalled? |
| 18:46:34 | <sbp> | well, he wrote an I-D for it |
| 18:46:35 | <nslater> | I dont get what that link header means... |
| 18:46:39 | <timbl> | The new WG is just starting |
| 18:46:45 | <sbp> | and there's a note somewhere that he intends to see it through to an RFC |
| 18:47:00 | <sbp> | but the I-D has expired now; been expired about a year or so |
| 18:47:11 | <timbl> | nslater, the link header means the same as <link rel="meta" href="meta"> |
| 18:47:22 | <timbl> | I guess using meta as the filename was confusing in that example |
| 18:47:28 | <nslater> | timbl: heh, just worked that out now, very hand |
| 18:47:31 | <nslater> | *handy |
| 18:47:38 | <sbp> | ACTION wonders what it'll say about link types not defined in HTML 4.01 |
| 18:47:40 | <timbl> | It means "If you want metadata, g look in <meta> |
| 18:47:58 | <sbp> | (rel:meta isn't defined in HTML 4.01) |
| 18:48:04 | <nslater> | timbl: in my case i could point to index.rdf for consistency with the other URIs |
| 18:48:21 | <sbp> | ACTION really, really wants Link: meta;rel=meta to be spec-legal |
| 18:48:22 | <timbl> | You can point to wherever you want of course. |
| 18:48:47 | <timbl> | To point to something which includes the filename of the thing asked for, you need apache 2. |
| 18:48:59 | <timbl> | Apache 1 can add constant headers to certian files. |
| 18:49:09 | <nslater> | I have to go now, thanks so much for helping me out sbp and timbl. :) |
| 18:49:20 | <timbl> | http://esw.w3.org/topic/LinkHeader |
| 18:49:23 | <timbl> | no prob |
| 18:49:30 | <sbp> | yw. c'ya nslater! |
| 18:49:33 | <timbl> | B:The HTTP Link Header (wiki) |
| 18:49:39 | <nslater> | c'ya! |
| 18:50:01 | <sbp> | timbl: ah, thanks! bunging http://lists.w3.org/Archives/Public/ietf-http-wg/2007OctDec/thread.html#msg46 on my reading stack |
| 18:55:28 | <sbp> | ACTION thinks about how to handle Link: meta from an API point of view |
| 18:55:49 | <sbp> | Graph(uri) - if uri is of a GRDDL document but it also has link rel:meta... |
| 18:56:05 | <sbp> | do you add it to the graph? or only do that if you specify some parameter? hmm |
| 18:56:27 | <timbl> | No, I don't add it to the graph of te document. |
| 18:56:52 | <timbl> | Tabulator has a HTTP request object which can also be a valid provenence of a triple. |
| 18:57:11 | <timbl> | I use that for things like the HTTP link, and the conclusions eg 200 > foo a Document. |
| 18:57:33 | <sbp> | ah! |
| 18:57:50 | <sbp> | ooh, so it'd be more like: |
| 18:57:58 | <sbp> | response = web.GET(uri) |
| 18:58:31 | <sbp> | G = Graph(response.headers.metalinks()[0]) |
| 18:58:36 | <timbl> | kb.load(kb.sym(uri)) |
| 18:59:15 | <timbl> | then acc = kb.any(kb.sym(uri), LINK('access')) |
| 18:59:19 | <timbl> | or something like that |
| 18:59:23 | <sbp> | hmm |
| 18:59:38 | <timbl> | I leave the metadata in eth streo. For tabulator |
| 18:59:45 | <timbl> | For cwm there are flags |
| 18:59:45 | <sbp> | gotcha |
| 18:59:57 | <sbp> | I haven't got as far as representing the HTTP transactions in RDF yet |
| 19:00:08 | <sbp> | but it's on my todo list... |
| 19:00:47 | <sbp> | I think in the case of link/meta, having some raw-response-object method to get it would probably be a good thing. need some way to get it from the HTML too... |
| 19:00:53 | <sbp> | <link rel="meta" ... |
| 19:01:44 | <timbl> | Yes. |
| 19:02:18 | <timbl> | the tabulator has an xHTML handler which gets those out. |
| 19:02:37 | <timbl> | But it can't parse bad xml at the moment |
| 19:03:48 | <sbp> | yeah, I just wrote an HTML parser that can handle both for charset (and ultimately GRDDL) detection |
| 19:04:07 | <sbp> | it just gives out tag events, ignoring cdata, comments, pis, DOCTYPE, etc. |
| 19:06:24 | <sbp> | ACTION sits back and waits for someone to complain about lack of SGML NOTATION support... |
| 19:08:19 | <timbl> | :) |
| 19:09:18 | <sbp> | hmm. another Tabulator project for someone to do: |
| 19:09:29 | <sbp> | add a SIMILE Timeplot plugin |
| 19:09:53 | <timbl> | The simile timeline? |
| 19:09:57 | <timbl> | it has that |
| 19:10:01 | <sbp> | I've got some weather forecast data in RDF, and my favourite representation of it so far is a ... |
| 19:10:03 | <sbp> | really?! |
| 19:10:27 | <timbl> | Yup :) |
| 19:10:36 | <sbp> | this is the kind of view I want to produce: http://inamidst.com/sw/meteo/gram |
| 19:10:59 | <sbp> | (red = temp, blue = precip, grey = cloud) |
| 19:11:32 | <timbl> | I want somene to add the dot->canvas thing as a tabulator veiw |
| 19:11:43 | <LeeF_> | timeplot and timeline are two different simile widgets, AFAIK |
| 19:11:51 | <timbl> | They are. |
| 19:11:56 | <timbl> | I hadn't seen timeplot |
| 19:12:07 | <timbl> | Is there a registry of simile eidgets? |
| 19:12:12 | <LeeF_> | good question |
| 19:13:01 | <timbl> | ACTION dreams of things loading themselves dynamically |
| 19:13:17 | <sbp> | ACTION loads http://inamidst.com/sw/meteo/rdf/London into Tabulator to see what it can do with it |
| 19:13:54 | <sbp> | ACTION reads http://dig.csail.mit.edu/2005/ajar/ajaw/tut/calHelp.html |
| 19:14:19 | <timbl> | Difficult to brows that graph |
| 19:14:33 | <timbl> | No URIs. |
| 19:14:39 | <timbl> | No single place to start from |
| 19:15:30 | <timbl> | However, I have to say that it is gratifying to have the documeny data veiw I checked in 5 minues ago |
| 19:15:43 | <timbl> | or it would be impossible to see it at all |
| 19:16:53 | <sbp> | hehe |
| 19:17:12 | <timbl> | Where did you get it from? |
| 19:17:16 | <sbp> | you can open Place -> forecast -> ... |
| 19:17:19 | <sbp> | I got it from NOAA |
| 19:17:35 | <sbp> | the MET Office charges like £12,000/annum for fifty cities |
| 19:17:39 | <timbl> | I wonder whether they got it from the met offfice |
| 19:17:42 | <sbp> | from NOAA it's free, but it's kinda tricky to parse |
| 19:18:03 | <sbp> | nope, I think they use their own climate prediction data |
| 19:18:05 | <timbl> | ACTION gives sbp a parsing medal and wishes for an RDF registry of scrapers |
| 19:18:24 | <sbp> | heh, yeah, that'd be cool. on the ESW Wiki person... |
| 19:18:29 | <sbp> | s/person/perhaps/ |
| 19:18:55 | <sbp> | ACTION looks about for an existing page to use, and will start one if not |
| 19:19:37 | <sbp> | how does http://esw.w3.org/topic/ScrapedData sound? |
| 19:21:20 | <sbp> | ACTION puts DBPedia top of the list... king of all scrapes |
| 19:21:34 | <timbl> | I think we have convertsToRDF |
| 19:21:39 | <timbl> | I think we have convertersToRDF |
| 19:21:57 | <timbl> | I want an RDF version |
| 19:22:12 | <digikim> | sbp: ...DBPedia is perhaps not really a scrape, more like a transformation from one structured presentation to another |
| 19:22:24 | <timbl> | I never understood why the simile people didn't make their scrapers an standard API and make a community of scraper mapers |
| 19:23:03 | <timbl> | You could add your thing to convertersToRDF |
| 19:23:13 | <sbp> | ah, gotcha |
| 19:23:17 | <sbp> | digikim: so is Meteo... |
| 19:23:24 | <timbl> | It would of course be ironic if we had to scrape the list of scrapers |
| 19:23:30 | <digikim> | :D |
| 19:23:36 | <sbp> | hehe |
| 19:24:00 | <sbp> | [[[ |
| 19:24:02 | <sbp> | Random |
| 19:24:02 | <sbp> | Seriously. |
| 19:24:02 | <sbp> | * |
| 19:24:02 | <sbp> | random2rdf generates synthetic random graphs encoded in RDF/N3. |
| 19:24:05 | <sbp> | ]]] - ConverterToRDF |
| 19:24:07 | <sbp> | that's pretty funny |
| 19:24:39 | <sbp> | ACTION notes the "This should be in a data format like Semantic Media Wiki or in N3 -- TimBL" comment at the bottom |
| 19:24:47 | <sbp> | hey, I wonder if we could use danja's gLinks for that? |
| 19:25:08 | <timbl> | We could use the datawiki |
| 19:25:14 | <sbp> | -> http://danja.talis.com/glink/ |
| 19:25:32 | <sbp> | yeah, but it'd be nice to get the existing data out first |
| 19:26:14 | <sbp> | hmm, looks like it's impossible to make http://esw.w3.org/topic/ConverterToRdf GRDDL |
| 19:26:20 | <sbp> | not very wiki, is it... |
| 19:29:45 | <sbp> | ACTION runs it through Tidy: http://cgi.w3.org/cgi-bin/tidy?docAddr=http%3A%2F%2Fesw.w3.org%2Ftopic%2FConverterToRdf&forceXML=on |
| 19:29:53 | <sbp> | then that through the W3C's XSLT service... |
| 19:30:24 | <sbp> | -> http://www.w3.org/2005/08/online_xslt/xslt?xslfile=http%3A%2F%2Fdanja.talis.com%2Fglink%2Fgroklinks.xsl&xmlfile=http%3A%2F%2Fcgi.w3.org%2Fcgi-bin%2Ftidy%3FdocAddr%3Dhttp%253A%252F%252Fesw.w3.org%252Ftopic%252FConverterToRdf%26forceXML%3Don&content-type=&submit=transform |
| 19:30:29 | <sbp> | and then let's bung that into Tabulator... |
| 19:31:38 | <sbp> | ...that didn't work |
| 19:31:59 | <sbp> | hmm. odd |
| 19:32:04 | <timbl> | No, ConverterToRDF has no GRDDL |
| 19:32:27 | <sbp> | timbl: I just fed it the long URI above |
| 19:32:33 | <sbp> | which is an RDF/XML document |
| 19:33:01 | <sbp> | (that applies danja's transformation to the Tidy'd version of ConverterToRDF) |
| 19:33:13 | <sbp> | Tabulator thinks the only triple in it is "<> dc:title "ConverterToRdf - ESW Wiki"." |
| 19:33:51 | <timbl> | Yes. |
| 19:33:58 | <timbl> | It got that from the XHTML |
| 19:34:15 | <sbp> | no, I fed it http://www.w3.org/2005/08/online_xslt/xslt?xslfile=http%3A%2F%2Fdanja.talis.com%2Fglink%2Fgroklinks.xsl&xmlfile=http%3A%2F%2Fcgi.w3.org%2Fcgi-bin%2Ftidy%3FdocAddr%3Dhttp%253A%252F%252Fesw.w3.org%252Ftopic%252FConverterToRdf%26forceXML%3Don&content-type=&submit=transform |
| 19:34:20 | <sbp> | .head http://www.w3.org/2005/08/online_xslt/xslt?xslfile=http%3A%2F%2Fdanja.talis.com%2Fglink%2Fgroklinks.xsl&xmlfile=http%3A%2F%2Fcgi.w3.org%2Fcgi-bin%2Ftidy%3FdocAddr%3Dhttp%253A%252F%252Fesw.w3.org%252Ftopic%252FConverterToRdf%26forceXML%3Don&content-type=&submit=transform Content-Type |
| 19:34:24 | <timbl> | There is no GRDDL transform - |
| 19:34:24 | <phenny> | Content-Type: text/html |
| 19:34:29 | <sbp> | oh. huh |
| 19:34:35 | <timbl> | oh, glinks |
| 19:35:00 | <sbp> | ACTION goes back to the form and fills in the output media type... |
| 19:35:02 | <timbl> | ACTION tries SELECT ?time, ?celcius |
| 19:35:02 | <timbl> | WHERE |
| 19:35:02 | <timbl> | { |
| 19:35:02 | <timbl> | ?x <http://purl.org/ns/meteo#time> ?time . |
| 19:35:03 | <timbl> | ?x <http://purl.org/ns/meteo#temperature> ?z. |
| 19:35:03 | <timbl> | ?z <http://purl.org/ns/meteo#celsius> ?celcius ]; |
| 19:35:04 | <timbl> | } |
| 19:35:18 | <sbp> | ah there we go! that worked |
| 19:35:24 | <sbp> | ooh |
| 19:35:28 | <sbp> | ACTION tries that |
| 19:35:51 | <timbl> | on spb's data, and gets times but temps are not displayd in the table |
| 19:36:08 | <sbp> | the URI for the ESW scrape is: |
| 19:36:10 | <sbp> | http://www.w3.org/2005/08/online_xslt/xslt?xslfile=http%3A%2F%2Fdanja.talis.com%2Fglink%2Fgroklinks.xsl&xmlfile=http%3A%2F%2Fcgi.w3.org%2Fcgi-bin%2Ftidy%3FdocAddr%3Dhttp%253A%252F%252Fesw.w3.org%252Ftopic%252FConverterToRdf%26forceXML%3Don&content-type=application%2Frdf%2Bxml&submit=transform |
| 19:36:11 | <timbl> | And it doesn't realize it ahs a time |
| 19:36:15 | <sbp> | if you wanna try that in Tabulator |
| 19:36:28 | <sbp> | no temps: ah, that's a shame |
| 19:37:39 | <timbl> | That last big URI of yours does work in tabulator |
| 19:37:43 | <timbl> | in data view |
| 19:38:16 | <sbp> | yup |
| 19:38:36 | <sbp> | ACTION puts the meteo SPARQL into Tabulator... |
| 19:38:40 | <sbp> | it gives me this out: |
| 19:38:40 | <sbp> | WHERE |
| 19:38:41 | <sbp> | { |
| 19:38:41 | <sbp> | ?x <http://purl.org/ns/meteo#time> ?time . |
| 19:38:41 | <sbp> | ?x <http://purl.org/ns/meteo#temperature> ?z . |
| 19:38:41 | <sbp> | } |
| 19:38:51 | <sbp> | which is kinda weird. it just erased the celsius triple |
| 19:39:03 | <timbl> | werid indeed |
| 19:39:09 | <sbp> | and the Timeline view won't let me select that query |
| 19:39:31 | <timbl> | Ah.. that is why the query doen't do much! |
| 19:39:58 | <sbp> | yeah |
| 19:40:04 | <sbp> | ACTION puts it in again, and this time it seems to work |
| 19:40:17 | <sbp> | Timeline view still won't let me display it though |
| 19:40:22 | <sbp> | the checkboxes are greyed out |
| 19:40:38 | <sbp> | (one for the broken celsius-deleted query, and one from the apparently fine query) |
| 19:41:18 | <sbp> | hmm, the second one deletes SELECT *. perhaps I'm not meant to put the SELECT bit in... |
| 19:41:36 | <timbl> | No, you are |
| 19:41:45 | <sbp> | aye. when I take it out it adds it back in for me. heh |
| 19:41:51 | <timbl> | The select gives it the columns to output |
| 19:42:01 | <chmod007> | hmm, I’m not looking forward to implementing <http://www.uwgb.edu/dutchs/UsefulData/UTMFormulas.HTM> in XSL |
| 19:42:16 | <timbl> | I replaces the missing triple at topAND bottom, and got a query with 3 triples :-/ |
| 19:42:27 | <timbl> | No improvemnet when it comes to the result though |
| 19:42:43 | <sbp> | I still can't select any of the many test queries I have now in Timeline view |
| 19:43:03 | <timbl> | No.. it has some kludge for deciding a column is a datetime |
| 19:43:16 | <timbl> | Maybe it only happnes in the tranfer from the outline mode |
| 19:43:22 | <sbp> | aha |
| 19:43:28 | <sbp> | looks cool in Table view though! |
| 19:43:47 | <sbp> | input was; |
| 19:43:48 | <sbp> | SELECT ?time ?celsius |
| 19:43:48 | <sbp> | WHERE |
| 19:43:48 | <sbp> | { |
| 19:43:48 | <sbp> | ?x <http://purl.org/ns/meteo#time> ?time . |
| 19:43:48 | <sbp> | ?x <http://purl.org/ns/meteo#temperature> ?z . |
| 19:43:50 | <sbp> | ?z <http://purl.org/ns/meteo#celsius> ?celsius . |
| 19:43:52 | <sbp> | } |
| 19:44:04 | <sbp> | ACTION uses the Export to HTML feature... nice |
| 19:48:20 | <timbl> | You get a decent table now? |
| 19:48:26 | <sbp> | yep |
| 19:48:37 | <sbp> | time in first column, temperature in second |
| 19:48:43 | <sbp> | sorted by time |
| 19:50:26 | <timbl> | Did you write the sparql or browse from the tabulator? |
| 19:50:45 | <sbp> | I wrote it; I dunno how to make a query through the UI |
| 19:50:46 | <timbl> | I just got a table by browsing |
| 19:50:51 | <sbp> | ooh, how? |
| 19:50:58 | <timbl> | I didn't realize before you had links to London |
| 19:51:06 | <timbl> | So I uses the online version, |
| 19:51:23 | <timbl> | started from #Place (the only link from the datya view, the very bottom of the file) |
| 19:51:53 | <timbl> | The opened up london and a forecast, slected the predicate cells of time and celcius, and hiot find all |
| 19:52:10 | <timbl> | pht no timeline still |
| 19:52:56 | <timbl> | I wonder what the algorithm is |
| 19:58:04 | <timbl> | Oh, you haven't made a query? |
| 19:58:11 | <timbl> | You have browse from a root place, open things up till you have an *example* of what you are looking for. |
| 19:58:25 | <timbl> | Then you highlight *multiple* predicate fields. |
| 19:58:29 | <timbl> | Not object fields |
| 19:58:46 | <timbl> | Then press "Find all" and it finds all subgrphs matching your pattern. |
| 19:58:59 | <timbl> | eg I just did |
| 19:59:00 | <timbl> | SELECT ?v12 ?v13 ?v14 ?v15 ?v16 ?v17 ?v18 ?v19 ?v20 ?v21 |
| 19:59:00 | <timbl> | WHERE |
| 19:59:00 | <timbl> | { |
| 19:59:00 | <timbl> | ?v12 <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://purl.org/ns/meteo#Place> . |
| 19:59:01 | <timbl> | ?v12 <http://purl.org/ns/meteo#location> ?v13 . |
| 19:59:02 | <timbl> | ?v13 <http://www.w3.org/2003/01/geo/wgs84_pos#lat> ?v14 . |
| 19:59:04 | <timbl> | ?v13 <http://www.w3.org/2003/01/geo/wgs84_pos#long> ?v15 . |
| 19:59:06 | <timbl> | ?v12 <http://purl.org/ns/meteo#forecast> ?v16 . |
| 19:59:08 | <timbl> | ?v16 <http://purl.org/ns/meteo#time> ?v17 . |
| 19:59:10 | <timbl> | ?v16 <http://purl.org/ns/meteo#temperature> ?v18 . |
| 19:59:12 | <timbl> | ?v18 <http://purl.org/ns/meteo#celsius> ?v19 . |
| 19:59:14 | <timbl> | ?v16 <http://purl.org/ns/meteo#humidity> ?v20 . |
| 19:59:16 | <timbl> | ?v21 <http://purl.org/ns/meteo#humidity> ?v20 . |
| 19:59:18 | <timbl> | } |
| 19:59:20 | <timbl> | by selecting fieldss in outline view |
| 19:59:29 | <timbl> | Link to query: http://dig.csail.mit.edu/2005/ajar/ajaw/tab?query=SELECT+%3Fv12+%3Fv13+%3Fv14+%3Fv15+%3Fv16+%3Fv17+%3Fv18+%3Fv19+%3Fv20+%3Fv21+WHERE+%7B+%3Fv12+%3Chttp%3A//www.w3.org/1999/02/22-rdf-syntax-ns%23type%3E+%3Chttp%3A//purl.org/ns/meteo%23Place%3E+.+%3Fv12+%3Chttp%3A//purl.org/ns/meteo%23location%3E+%3Fv13+.+%3Fv13+%3Chttp%3A//www.w3.org/2003/01/geo/wgs84_pos%23lat%3E+%3Fv14+.+%3Fv13+%3Chttp%3A//www.w3.org/2003/0 |
| 20:00:03 | <sbp> | it got truncated at "3Chttp%3A//www.w3.org/2003/0" |
| 20:00:18 | <timbl> | ah |
| 20:00:24 | <sbp> | and yeah, I followed the steps |
| 20:00:32 | <sbp> | but what I get is a load of columns |
| 20:00:39 | <sbp> | many of which just say "..." in the cells |
| 20:00:58 | <sbp> | but two of which are the time and temperature at least (with correct values) |
| 20:01:17 | <timbl> | Yes, it adds in the nodes in the grpah which it adds to complete the graph, not interetsing when they are bnodes |
| 20:01:23 | <timbl> | "..." is bnode |
| 20:01:25 | <timbl> | with no label |
| 20:01:32 | <sbp> | ahh. any way to filter these out? |
| 20:01:48 | <timbl> | Suppress the variables form the SPARQL |
| 20:02:00 | <timbl> | There used to be a 'delete column' x but it rotted |
| 20:02:01 | <sbp> | oh I see, you can then edit the raw query |
| 20:02:14 | <sbp> | ACTION hmms at <http://inamidst.com/sw/meteo/rdf/London> <http://www.w3.org/2007/ont/link#mentionsClass> ?v0 . |
| 20:02:47 | <timbl> | That is an observation added by the tabulator |
| 20:03:00 | <timbl> | It helps navigate whn yo don't have a dta view |
| 20:03:13 | <timbl> | ('data in document' view) |
| 20:03:17 | <timbl> | (which I just added) |
| 20:03:20 | <timbl> | :) |
| 20:03:22 | <sbp> | hehe |
| 20:03:35 | <timbl> | So the "mentionsClass" might go. |
| 20:03:49 | <sbp> | it's still kinda useful. gives a more abbreviated view |
| 20:04:09 | <timbl> | When there are rdf:type statements |
| 20:04:57 | <timbl> | Picking a starting lace to browse a file is an interesting quetsion. |
| 20:05:08 | <timbl> | Maybe the node with the most arcs is a good one. |
| 20:05:16 | <timbl> | Would work for your meteo data. |
| 20:05:26 | <sbp> | yeah, good idea |
| 20:14:05 | <timbl> | Ah, the predicate has to be one it knows (http://www.w3.org/2002/12/cal/icaltzd#dtstart etc) or contain the string 'date' ! |
| 20:18:00 | <timbl> | ACTION heads off for a bit |
| 21:21:23 | <Wikier> | hi |
| 22:49:36 | <DanC> | wild! the .xls statement download option from discovercard.com is actually HTML format! that's one for breadcrumbs... |
| 22:49:41 | <DanC> | logger, pointer? |
| 22:49:42 | <logger> | See http://chatlogs.planetrdf.com/swig/2007-11-18#T22-49-42 |
| 22:52:08 | <dajobe> | timbl hasn't done a breadcrumbs blog for >1yr |
| 22:52:45 | <timbl_> | Sigh ... |
| 22:52:54 | <dajobe> | :) |
| 22:53:02 | <timbl_> | Too many things to blog about |
| 22:53:03 | <dajobe> | ACTION can talk, I blog quarterly at best |
| 22:53:58 | <timbl_> | The ISWC conference data is in RDF |
| 22:54:05 | <timbl_> | But it does not prefer RDF |
| 22:54:14 | <timbl_> | The tabulator extension gets HTML |
| 22:54:18 | <timbl_> | as it can handle either. |
| 22:55:28 | <timbl_> | DanC, I have some support for Oshani's tami work |
| 22:55:51 | <timbl_> | I added a dcoument view, and nested formulas in the tabulator |
| 22:56:32 | <timbl_> | We've mever had a view of t e data actually in one specific document |
| 22:59:55 | <DanC> | ACTION tunes in |
| 23:00:34 | <timbl_> | You can look at rules file sin a way now. |
| 23:00:52 | <timbl_> | I don't know whether it will be deemed user-friedly |
| 23:01:01 | <DanC> | ACTION should learn to run the tabulator extension out of local svn checkout |
| 23:01:14 | <timbl_> | ACTION should document that |
| 23:01:43 | <DanC> | sometimes wishing for somebody to write up an exchange here works |
| 23:02:53 | <DanC> | ACTION reads http://en.wikipedia.org/wiki/Cricket_Communications after getting some large t-mobile bills ... |
| 23:02:55 | <timbl_> | http://dig.csail.mit.edu/2007/tab/README |
| 23:03:24 | <DanC> | hmm... not GSM |
| 23:03:31 | <timbl_> | C: Developers: How to run the SVN trunk version of Tabulator as n extension |
| 23:03:52 | <timbl_> | C:|Developers: How to run the SVN trunk version of Tabulator as n extension |
| 23:04:12 | <timbl_> | C1: |
| 23:12:58 | <ericP> | timbl_, shouldn't tabulator prefer rdf? |
| 23:14:35 | <timbl_> | Why? |
| 23:14:58 | <timbl_> | The tabulator extension in ffox is a regular browser too |
| 23:15:25 | <timbl_> | i can't say the user doesn't want HTML or the browser deosn't display it well. |
| 23:15:50 | <timbl_> | However, if the HTML is generated from the RDF, then the RDF is better than the HTML. |
| 23:15:53 | <ericP> | i see it as "if i can get semantic data, give it to me, otherwise, i'll take HTML and let the user sort it out" |
| 23:16:35 | <timbl_> | It could say that |
| 23:16:39 | <ericP> | for instance, if i have an RDF calendar widget, i'd prefer it to do my interface |
| 23:16:44 | <timbl_> | Should it say that for any new thing, like video? |
| 23:17:04 | <timbl_> | Right, but suppose the RDF has been generated from eth HTML, with loss? |
| 23:17:24 | <timbl_> | Only the server knows which is the original. |
| 23:17:50 | <ericP> | yeah, loss is an unfortunate practicality that may drive this decision is a less-than-perfect direction |
| 23:18:07 | <timbl_> | ACTION looks at tweaking his accept header |
| 23:18:23 | <ericP> | ideally, folks only negotiate on equivilant representations, but that's just not reallistic |
| 23:18:38 | <timbl_> | Why? |
| 23:18:55 | <timbl_> | I think it is a severe error to conneg on anything which i snot equivalent |
| 23:19:20 | <ericP> | right, but it's hard for folks not to make that mistake |
| 23:19:25 | <timbl_> | (we had a discussion fo conneging on a pictrue and its metadata - i think that would be a bug) |
| 23:19:39 | <ericP> | (agreed) |
| 23:19:51 | <timbl_> | It' hard for folks not to make that mistake? This is early days of sem web best practcies. |
| 23:20:11 | <timbl_> | It is true apache doesn't make it ultr-easy |
| 23:20:30 | <timbl_> | My current string (from about:config) is text/xml,application/xml,application/xhtml+xml,text/html;q=0.5,text/plain;q=0.5,image/png,*/*;q=0.1,application/rdf+xml;q=1.0,text/rdf+n3;q=0.5 |
| 23:20:52 | <ericP> | i tried to be diligent with the MASE server and have it only do conneg once's i'd found an RDF representation for *all* of the HTML information |
| 23:21:19 | <ericP> | but that required diligence and discipline that comes from having lots of eyes on you |
| 23:22:00 | <ericP> | it would have been easy to offer a subset to meet some use-case and conneg to that |
| 23:22:24 | <timbl_> | Yes, and in the end users would just not get the infor you wanted tem to get. |
| 23:22:34 | <ericP> | ya know what? i think it needs to be a UI button |
| 23:22:42 | <timbl_> | No. |
| 23:22:48 | <timbl_> | ':) |
| 23:23:02 | <timbl_> | We are trying to make an intuuitive system. |
| 23:23:36 | <timbl_> | That is like asking the driver to adjust the fuel injection timing |
| 23:23:37 | <ericP> | could be labeled "plebian-mode" vs. "hard-to-use-mode" |
| 23:24:15 | <ericP> | i see it as more like asking folks if they want to heuristically render badly formed documents |
| 23:24:24 | <timbl_> | Marketing ... you obviously have spent a lot of time in Marketing .. |
| 23:24:41 | <timbl_> | "plebian-mode" vs. "hard-to-use-mode" |
| 23:25:17 | <timbl_> | Seems simple to me. |
| 23:25:22 | <ericP> | it's an interface that has stood the test of time -- it must be very popular |
| 23:25:24 | <timbl_> | Cwm should always get the RDF |
| 23:25:43 | <timbl_> | An old browser should always get the HTML |
| 23:25:53 | <timbl_> | Firefox+Tabulator should get whichever has less loss |
| 23:26:24 | <ericP> | ahhh, so servers should assign a higher q to the one with the best info |
| 23:26:27 | <timbl_> | test of time, what the fuel injection advance knob? |
| 23:26:30 | <ericP> | that works for me |
| 23:26:30 | <dajobe> | hmm |
| 23:26:50 | <dajobe> | I've been wondering about adding conneg to triplr.org's services. I need to pick the q carefully it seems ;) |
| 23:27:11 | <timbl_> | Dead right! |
| 23:27:32 | <timbl_> | Well, between rdf/xml and N3, you don't really hve to be fussy |
| 23:27:51 | <timbl_> | I see Tabulator does n3 at 0.5 left over from hen we were testing the browser |
| 23:27:57 | <timbl_> | s/browser/parser/ |
| 23:28:24 | <dajobe> | yeah but e.g. you could ask for http://triplr.org/-/example.org and it'd use conneg in the request to figure out what serialiser to use, if there were multiple choices |
| 23:30:07 | <timbl_> | So I am in fact asking for RDF at 1.0 and text/html at 0.5 |
| 23:30:30 | <timbl_> | but now the server seems to have broken at http://data.semanticweb.org/organizations/ for example "results" |
| 23:30:43 | <timbl_> | "sorry, endpoint returned no results" |
| 23:34:33 | <DanC> | ACTION chuckes @ video from a local band... http://www.youtube.com/watch?v=4b_5mqf-lpY |
| 23:43:14 | <timbl_> | Is there a unicode character or HTML entity which is an optional line break, which one could put after the slashes in a URI so it would not messs up an HTML table? |
| 23:43:55 | <ericP> | cehcking... |
| 23:45:51 | <ericP> | of ‐ ‑ ‒ – — ―, none seem appropriate |
| 23:46:14 | <ericP> | of ‐ ‑ ‒ – — ―, none seem appropriate |
| 23:46:51 | <Zola> | guys... |
| 23:47:11 | <timbl> | I think that if it existed people would have used it before |
| 23:47:14 | <Zola> | what's the best way to handle attributes in something like JSON, which does not support attributes being separate from children as XML does? |
| 23:47:26 | <ericP> | (hyphen, non-breaking hyphen, dash, en-dash, em-dash, horizontal bar) |
| 23:47:30 | <ericP> | agreed |
| 23:47:55 | <Zola> | k0 { __attributes: { k1: v, k2: v }, child1: v, child2: v } |
| 23:47:59 | <Zola> | this presents a problem |
| 23:48:20 | <Zola> | if a child is ever called "__attributes" |
| 23:48:23 | <timbl> | We have non-space-break, non-breaking space, optional-breaking-space ; I want an option-break-non-space |
| 23:48:28 | <Zola> | the other option is... |
| 23:48:31 | <ericP> | Zola, are you looking for a general JSON-2-RDF mapping, or one for this particular appliation data? |
| 23:48:49 | <Zola> | k0 { attributes: { k1: v, k2: v }, contents: { child1: v, child2: v } } |
| 23:48:59 | <Zola> | however. this screws everything up |
| 23:49:16 | <Zola> | cause your semantic hierarchy no longer matches the syntax of hierarchy |
| 23:49:16 | <chmod007> | is it safe to have xpaths using unrecognized extension function in XSLT, on the condition that they are never used? |
| 23:49:24 | <Zola> | ericP: im not using RDF at all |
| 23:49:41 | <Zola> | im just looking for a simple solution |
| 23:50:16 | <ericP> | chmod007, i know that some XSLT processors have done late-binding on function resolution (causing me to find bugs much later than i'd have liked) |
| 23:50:38 | <chmod007> | ok, but they are allowed to err out early? |
| 23:52:03 | <ericP> | chmod007, i'm asking around, but 20% thatn i'll get a definitive answer for you |
| 23:52:20 | <chmod007> | ericP: that’s kind of you, thanks :) |
| 23:52:30 | <Zola> | "k0": { "attributes": { "k1": v, "k2":v }, "child1": v, "child2": { } } |
| 23:52:38 | <Zola> | what is the GENERAL solution in simple-JSON |
| 23:52:50 | <chmod007> | there is none. json is pretty free-form |
| 23:53:02 | <Zola> | to use, when "attributes" key in my example describes some settings for "k0" |
| 23:53:13 | <chmod007> | Zola: use a UUID for the “attributes” key if you’re afraid of collisions. |
| 23:53:18 | <Zola> | chmod007: well, could you even give me an example? |
| 23:53:47 | <chmod007> | Zola: or something that is not an identifier in the target language, so could not possibly be a valid property / attribute / etc |
| 23:54:04 | <Zola> | like what |
| 23:54:13 | <Zola> | !&@^*#@!#&^@ ? |
| 23:54:23 | <Zola> | that can definitely be a child |
| 23:54:23 | <chmod007> | it obviously depends on the language. |
| 23:54:29 | <Zola> | there is no language |
| 23:54:49 | <Zola> | there is no target language |
| 23:55:05 | <Zola> | it's user-data. children are names. like "little bo peep" |
| 23:55:06 | <chmod007> | when you lay out the required structure of your JSON objects, you can specify whatever restrictions you want or need. |
| 23:55:51 | <Zola> | that doesnt really help me |
| 23:55:57 | <Zola> | i simply want attributes alongside children |
| 23:56:56 | <chmod007> | here you go. your very own UUID to use as a key for either the kids or the attrs: 9E5B682F-ECFA-493B-A8A2-13FB6EF55C27 |
| 23:57:14 | <Zola> | rofl |
| 23:57:42 | <Zola> | so |
| 23:57:51 | <Zola> | you think the world will explode before someone uses the UUID ? |
| 23:58:10 | <chmod007> | yes, unless they’re being malicious (which you should account for) |
| 23:58:14 | <das05r> | Zola: try this method: http://www.xml.com/pub/a/2006/05/31/converting-between-xml-and-json.html |
| 23:58:53 | <chmod007> | ok, so the “target” language was xml. |
Back to channel and daily index: content-negotiated html turtle