IRC log of dig on 2012-07-27
Timestamps are in UTC.
- 02:35:50 [Pipian]
- Pipian (~pipian@static-mum-59.181.115.17.mtnl.net.in) has joined #dig
- 02:43:52 [Pipian]
- Pipian has quit (Ping timeout: 252 seconds)
- 02:44:28 [Pipian]
- Pipian (~pipian@static-mum-59.181.115.17.mtnl.net.in) has joined #dig
- 03:30:31 [bblfish]
- bblfish (~bblfish@AAubervilliers-651-1-221-90.w86-198.abo.wanadoo.fr) has joined #dig
- 04:30:08 [Pipian]
- Pipian has quit (Quit: Pipian)
- 04:41:44 [Pipian]
- Pipian (~pipian@static-mum-59.181.115.17.mtnl.net.in) has joined #dig
- 06:37:06 [kennyluck]
- kennyluck (~kennyluck@119.161.158.96) has joined #dig
- 07:17:43 [kennyluck]
- kennyluck has quit (Read error: Connection reset by peer)
- 07:17:50 [kennyluck]
- kennyluck (~kennyluck@119.161.158.96) has joined #dig
- 07:30:19 [danbri]
- danbri (~danbri@host86-153-168-172.range86-153.btcentralplus.com) has joined #dig
- 07:35:17 [trueg_away]
- trueg_away is now known as trueg
- 07:38:29 [bblfish]
- bblfish has quit (Remote host closed the connection)
- 07:39:08 [kennyluck_]
- kennyluck_ (~kennyluck@119.161.158.96) has joined #dig
- 07:39:56 [kennyluck]
- kennyluck has quit (Read error: Connection reset by peer)
- 07:39:57 [kennyluck_]
- kennyluck_ is now known as kennyluck
- 07:47:49 [bblfish]
- bblfish (~bblfish@AAubervilliers-651-1-221-90.w86-198.abo.wanadoo.fr) has joined #dig
- 07:54:53 [deiu]
- deiu (~andrei@157.159.103.85) has joined #dig
- 07:54:53 [deiu]
- deiu has quit (Changing host)
- 07:54:53 [deiu]
- deiu (~andrei@unaffiliated/deiu) has joined #dig
- 08:01:42 [kennyluck]
- kennyluck has quit (Read error: Connection reset by peer)
- 08:01:57 [kennyluck]
- kennyluck (~kennyluck@119.161.158.96) has joined #dig
- 08:17:30 [kennyluck]
- kennyluck has quit (Read error: Connection reset by peer)
- 08:17:38 [kennyluck]
- kennyluck (~kennyluck@119.161.158.96) has joined #dig
- 08:39:55 [bblfish]
- bblfish has quit (Remote host closed the connection)
- 08:45:16 [bblfish]
- bblfish (~bblfish@AAubervilliers-651-1-221-90.w86-198.abo.wanadoo.fr) has joined #dig
- 09:07:23 [danbri]
- danbri has quit (Remote host closed the connection)
- 09:13:44 [deiu]
- trueg, bblfish, are we going to have another talk about the paper?
- 09:14:12 [bblfish]
- hi
- 09:14:18 [bblfish]
- I sent a pull request in
- 09:14:30 [bblfish]
- I can't remember when the deadline for the paper was
- 09:14:44 [deiu]
- end of the month
- 09:14:48 [bblfish]
- but we can always submit it at some other conf
- 09:14:58 [deiu]
- it's a good conf
- 09:15:12 [deiu]
- would be a pity to miss it, imo
- 09:15:32 [deiu]
- s/would/it would
- 09:15:48 [bblfish]
- well, there was not enough progress
- 09:15:55 [bblfish]
- we can't finish it in time I think
- 09:16:01 [bblfish]
- we should have implementations
- 09:16:11 [bblfish]
- that work together and then write a paper
- 09:16:17 [deiu]
- btw bblfish, what convention are you using when working with WebIDs inside URIs?
- 09:16:20 [bblfish]
- or do both simultaneously
- 09:16:34 [deiu]
- for example, doing a GET on a user's profile
- 09:16:55 [bblfish]
- I don't know what "working with WebIDs inside URIs" means
- 09:17:26 [deiu]
- Ex: FQDN/user/?webid=http....
- 09:18:14 [bblfish]
- What would the purpose of that URI be?
- 09:18:53 [deiu]
- to view a profile
- 09:19:05 [bblfish]
- you can do what you want really
- 09:19:38 [deiu]
- I'm trying to come up with the best solution, from a REST p.o.v.
- 09:19:39 [bblfish]
- I'd do profile?webid=URLEncoded(webid)
- 09:20:27 [bblfish]
- it's ok to have it as a GET as it is nullipotent
- 09:20:56 [deiu]
- My problem is that I don't think this convention is quite as obvious for a 3rd party service accessing your application for the first time
- 09:21:32 [bblfish]
- don't think that's a problem
- 09:21:35 [deiu]
- It must know beforehand that the encoded webid uri must be passed inside a "webid" parameter
- 09:21:43 [bblfish]
- you can even encode that in a form
- 09:22:03 [bblfish]
- profile without ? is a form
- 09:22:09 [deiu]
- similar to pingback
- 09:22:12 [bblfish]
- you enter the webid and done
- 09:22:14 [bblfish]
- yes
- 09:22:15 [rszeno]
- how do you check a uri that is safe?
- 09:22:25 [bblfish]
- what is a safe uri?]
- 09:22:30 [deiu]
- good question
- 09:22:40 [bblfish]
- what do you meant by that?
- 09:22:45 [deiu]
- you never know it's a safe uri until you dereference it
- 09:22:46 [bblfish]
- by safe?
- 09:23:01 [rszeno]
- a uri which doesn't inject some code in your app and exploit something
- 09:23:06 [bblfish]
- if you do a GET you cannot be liable for anything
- 09:23:17 [bblfish]
- like with HEAD
- 09:23:29 [bblfish]
- you can't acceidentally be buying something
- 09:23:58 [bblfish]
- I don't know with php how one has to act to be safe
- 09:24:14 [deiu]
- rszeno, with PHP you can use filter_var or filter_input
- 09:24:15 [rszeno]
- same problem with any language
- 09:24:29 [rszeno]
- to check what?
- 09:24:34 [bblfish]
- if you just parse the results you can't really be in danger if you put the results in a graph
- 09:24:35 [rszeno]
- is a uri
- 09:24:46 [bblfish]
- if you execute the content sent to you you are in danger
- 09:25:01 [bblfish]
- ( especially if you do it wtih same priviledges )
- 09:25:49 [rszeno]
- i think trust and this come togheter but i don't know how to use this
- 09:26:21 [deiu]
- rszeno, how do you trust any user input when submitting forms?
- 09:26:27 [deiu]
- it's the same question really
- 09:26:44 [rszeno]
- is a different thing, you validate input
- 09:27:06 [deiu]
- no, you validate data
- 09:27:12 [rszeno]
- here is gust an parameter to a url webid=url enocoded
- 09:27:42 [rszeno]
- data is user input
- 09:28:04 [deiu]
- ah, so you just refer to the URI string?
- 09:28:06 [rszeno]
- so, is same thing
- 09:28:16 [rszeno]
- yes
- 09:28:38 [deiu]
- depends what you do with it
- 09:29:12 [deiu]
- if you plan to store it in a DB, then you can apply the same techniques for inserting user input
- 09:29:19 [rszeno]
- yes but a uri to a bot script is still a uri
- 09:29:41 [deiu]
- what would that bot script really be able to do?
- 09:29:53 [deiu]
- I don't see how it can affect you
- 09:29:56 [rszeno]
- well, a lot of things, :)
- 09:30:56 [rszeno]
- i have a collection of such links if you want to try one, :)
- 09:31:04 [deiu]
- You need to provide a strong argument, otherwise it's just your personal fears
- 09:33:32 [rszeno]
- this is an article about one who explote a wordpress plugin, http://www.emergingthreatspro.com/bot-of-the-day/under-my-timthumbs-thumb/
- 09:34:23 [deiu]
- I'll check it out in a sec
- 09:35:51 [rszeno]
- i didn't read it, just a fast search with google for timthumb bot and pick first
- 09:43:15 [rszeno]
- finaly each argument is a string so you can simple to pass it as any user data after some validation but i ask myself if is possible based on webid to compute something, kind of trust level
- 09:56:35 [Pipian]
- Pipian has quit (Quit: Pipian)
- 10:35:18 [kennyluck]
- kennyluck has quit (Quit: kennyluck)
- 10:54:21 [Pipian]
- Pipian (~pipian@182.19.16.70) has joined #dig
- 11:08:53 [trueg]
- trueg is now known as trueg_away
- 11:21:48 [RalphS]
- RalphS (Ralph@30-7-118.wireless.csail.mit.edu) has joined #dig
- 11:34:24 [bblfish]
- bblfish has quit (Remote host closed the connection)
- 11:37:16 [deiu]
- deiu has quit (Quit: Leaving)
- 11:46:02 [Pipian]
- Pipian has quit (Quit: Pipian)
- 11:50:14 [trueg]
- trueg (~trueg@HSI-KBW-46-237-239-121.hsi.kabel-badenwuerttemberg.de) has joined #dig
- 11:52:46 [trueg_away]
- trueg_away has quit (Ping timeout: 252 seconds)
- 11:57:35 [deiu]
- deiu (~andrei@157.159.16.177) has joined #dig
- 11:57:35 [deiu]
- deiu has quit (Changing host)
- 11:57:35 [deiu]
- deiu (~andrei@unaffiliated/deiu) has joined #dig
- 12:18:30 [bblfish]
- bblfish (~bblfish@AAubervilliers-651-1-221-90.w86-198.abo.wanadoo.fr) has joined #dig
- 12:25:48 [bblfish_]
- bblfish_ (~bblfish@ALagny-551-1-117-83.w92-141.abo.wanadoo.fr) has joined #dig
- 12:26:14 [bblfish]
- bblfish has quit (Ping timeout: 272 seconds)
- 12:28:41 [bblfish_]
- bblfish_ is now known as bblfish
- 13:09:00 [deiu]
- bblfish, what rdf resource would you use for the form element corresponding to the "webid" parameter?
- 13:09:18 [deiu]
- there should be something like foaf:webid
- 13:34:34 [danbri]
- danbri (~danbri@cpc6-aztw25-2-0-cust83.aztw.cable.virginmedia.com) has joined #dig
- 13:53:38 [bblfish]
- I am not sure what you mean deiu
- 13:54:53 [bblfish]
- betehess: MRDFStore is said to be Monadic, but where is that written out?
- 13:55:12 [bblfish]
- I was thinking that scalaz's Monad would turn up somwhere there
- 13:55:57 [bblfish]
- deiu there is no encoding of html forms in rdf that has been standardly adopted yet that I know of
- 13:56:18 [betehess]
- bblfish, it's necessary only on the call site
- 13:56:29 [betehess]
- where you say: I need M to be Monadic
- 13:56:55 [betehess]
- it could be many other things
- 13:57:03 [betehess]
- depends what you want :-)
- 13:57:19 [bblfish]
- ah. ok. Was looking for an example of a using scalaZ monads
- 13:57:21 [betehess]
- eg. you may want to extract a value from M, and doing so could fail, etc.
- 13:57:35 [betehess]
- we have that. give me 2s
- 13:57:38 [bblfish]
- eg I wanted to create a Claim[T] class that would be monadic
- 13:58:34 [betehess]
- https://github.com/w3c/banana-rdf/blob/master/rdf-test-suite/src/main/scala/MGraphStoreTest.scala#L12
- 13:59:04 [betehess]
- here, jon only needed M to comply with Bind, not Monad
- 13:59:13 [deiu]
- bblfish, I have a form with RDFa elements in it, specifically an text field for the webid.
- 13:59:18 [betehess]
- and we also use UnsafeExtractor
- 13:59:34 [betehess]
- in practice, Monad is required
- 14:00:00 [deiu]
- But for clients to understand that they need to perform a GET on it, I need to semantically described that form field.
- 14:00:44 [bblfish]
- deiu, you have to ask some rdf working group. I don't think forms can be ended with rdfa
- 14:01:30 [deiu]
- bblfish, it's the same principle behind pingback
- 14:01:59 [bblfish]
- no, in pingback there is no encoding of the form. We do it by convention while waiting for such a standard to be created
- 14:02:15 [deiu]
- right
- 14:03:24 [deiu]
- we need a similar convention for RESTful requests on a semweb app then
- 14:03:36 [bblfish]
- why do you want the forms to be globally readable? If you are just producing an html view on some data, there is not that much need to automate it. people should fetch the data directly from the sourxe
- 14:04:23 [bblfish]
- ah yes, betehess, i remember the discussion
- 14:06:16 [deiu]
- bblfish, yeah, I think you're right
- 14:06:41 [bblfish]
- we should ping the rdfa people to get form semantics added to rdfa
- 14:06:50 [bblfish]
- perhaps its there in the latest spec?
- 14:20:01 [bblfish]
- betehess: is the val bind ever used in MGraphSToreTest?
- 14:20:22 [bblfish]
- or is that just a way to limit the M to something that is a Bind?
- 14:24:39 [betehess]
- bblfish, you wouldn't add a constraint if it wouldn't be to use it :-)
- 14:24:58 [betehess]
- Bind gives flatMap, map, filter, etc.
- 14:25:07 [betehess]
- so it's used in the for-loops
- 14:25:08 [betehess]
- https://github.com/w3c/banana-rdf/blob/master/rdf-test-suite/src/main/scala/MGraphStoreTest.scala#L47
- 14:25:28 [bblfish]
- yes, but there is no mention of bind in the class
- 14:25:59 [betehess]
- well, there is
- 14:26:05 [betehess]
- because of import Scalaz._
- 14:26:32 [betehess]
- so, what is the return type of, let's say, store.removeGraph(u1)
- 14:26:33 [betehess]
- ?
- 14:26:40 [betehess]
- it's an M[something]
- 14:26:51 [bblfish]
- let me look
- 14:26:56 [betehess]
- what do we know about this M?
- 14:27:08 [bblfish]
- yes, it has to be a Bind
- 14:27:11 [betehess]
- that there is a bind: Bind[M]
- 14:27:33 [betehess]
- so we could somehow call a flatMap somewhere
- 14:27:37 [bblfish]
- ah yes, just noticed the implicit at the top
- 14:27:47 [betehess]
- yes, it's a typeclass
- 14:28:07 [betehess]
- and Scalaz._ gives you some interesting stuff
- 14:28:12 [bblfish]
- say how do I say that Claim[P] is a Monad?
- 14:28:30 [betehess]
- that would not makes sense in itself
- 14:28:46 [bblfish]
- ( I am not yet sure if it should be a monad or not )
- 14:28:53 [betehess]
- a Monad is applied to a type constructor
- 14:29:21 [betehess]
- could you describe what you need?
- 14:29:36 [bblfish]
- I want to say have a Claim[X509Certificate]
- 14:29:44 [bblfish]
- (I was just writing this out in a mail....)
- 14:29:52 [betehess]
- ok, will wait for the email
- 14:30:39 [bblfish]
- betehess: just sent it
- 14:30:44 [betehess]
- k
- 14:31:02 [bblfish]
- it's not finished. But I wanted to get scalaz working on it so I could work out what Claim is by playing with it
- 14:32:48 [bblfish]
- I was thinking I could have a claim.map(x509->webid): Claim[WebID] for example
- 14:33:01 [bblfish]
- then I'd need some verify function to extract the object from the claim
- 14:33:59 [bblfish]
- me too. I'll send you updates. Was thinking of sending it to the scalaz list, when I get a handle on it...
- 14:34:20 [bblfish]
- ( But in my case it's more the scalaz that I need to digest :-)
- 14:41:56 [betehess]
- bblfish, do you have other examples than X509Certificate that could be seen as a Claim?
- 14:42:07 [bblfish]
- pretty much any Graph
- 14:42:21 [betehess]
- and what specific information would you expect to extract?
- 14:42:27 [betehess]
- or operation to apply?
- 14:42:44 [bblfish]
- well for example if I have an x509c
- 14:43:18 [bblfish]
- x509c.map(x509 => x509.getSubjectAlt...): Claim[URI]
- 14:43:35 [bblfish]
- if I map a claim, I still get a claim
- 14:43:42 [deiu]
- deiu has quit (Quit: Leaving)
- 14:43:46 [bblfish]
- if I verify it somehow
- 14:43:47 [betehess]
- hrmmm
- 14:44:08 [bblfish]
- x509c.verify( webidVerificationFunction ): WebID
- 14:44:10 [bblfish]
- or perhaps
- 14:44:29 [bblfish]
- x509c.verify( webidVerificationFunction ): Validation[Exc,WebID]
- 14:44:31 [betehess]
- try to think this way:
- 14:45:01 [bblfish]
- I am thinking of a graph as a monad (or something of that kind )
- 14:45:08 [betehess]
- * suppose that you control WebID and Graph (ie you can change their inheritance hierarchy)
- 14:45:26 [betehess]
- * you want to write some code common to both, though a super class
- 14:45:45 [betehess]
- * ask yourself this question: what would this common superclass look like?
- 14:46:25 [bblfish]
- yes, so I was thinking of something like that.
- 14:46:38 [bblfish]
- it could have a map function as explained above
- 14:46:47 [betehess]
- I want to make sure that you have the right intuition about typeclasses and monads and stuff
- 14:46:54 [bblfish]
- I can transform a claim with a map, but that still leaves me with a claim
- 14:47:05 [betehess]
- map is about something contained in a container
- 14:47:15 [betehess]
- but you would stay in the same kind of container
- 14:47:20 [bblfish]
- ie: I could transform a claim[X509Cert] with map to Claim[Graph]
- 14:47:25 [betehess]
- ie. all the invariants are the same
- 14:47:36 [bblfish]
- I would not be saying that the Graph is true, just that it is claimed
- 14:48:03 [bblfish]
- next I want to verify that the actual world is the Claimed World
- 14:48:27 [bblfish]
- ie claimedGraph contains Actuality
- 14:48:30 [betehess]
- what does it mean for a Claim to allow one to map its contained element(s)?
- 14:49:07 [betehess]
- I still don't see the constraints/invariants/contracts on Claim
- 14:49:08 [bblfish]
- well above it could be a transform to map an x509 claim to say the rdf representation of that claim
- 14:49:27 [betehess]
- you're putting too much emphasizes on the contained type
- 14:49:40 [bblfish]
- what I don't want it the object in the claim to be extractable, other than through a verification function
- 14:49:55 [betehess]
- can you try to write down the superclass please?
- 14:50:26 [betehess]
- and try to propose 2 different subclasses where you would adapt the methods to be supported
- 14:50:35 [betehess]
- based on existing classes
- 14:51:00 [bblfish]
- ok. I'll write it out for Claim[X509Ceritificate] and Claim[Graph]
- 14:51:11 [betehess]
- thanks
- 14:51:34 [bblfish]
- trying to see if I can align modal logic intutions with category theory :-)
- 14:51:45 [betehess]
- don't think too much about that
- 14:52:04 [bblfish]
- modal logic is how I think
- 14:52:09 [betehess]
- category theory is about understanding the deepest patterns in programming
- 14:52:17 [bblfish]
- :-)
- 14:52:24 [betehess]
- so it's more about factorising code
- 14:52:32 [betehess]
- you first need to understand what you need
- 14:52:38 [bblfish]
- yes
- 14:53:21 [bblfish]
- yes
- 14:53:45 [bblfish]
- you are in a relation to a set of possible worlds each of which contains me overthinking
- 14:54:10 [bblfish]
- those set of possible worlds you believe to contian the actual world
- 14:54:17 [betehess]
- heh
- 14:54:31 [betehess]
- I knew you would answer my silly question
- 14:54:40 [bblfish]
- :-)
- 14:54:57 [bblfish]
- in n3 one could put it like this
- 14:55:14 [bblfish]
- :bethess :believes { bblfish a OverThinker } .
- 14:55:32 [bblfish]
- then if you had rules such as
- 14:56:10 [bblfish]
- { x? a OverThinker } => { ?x reducecpuTime 5ms }
- 14:56:28 [bblfish]
- and of course anything you believe is something you believe to be true
- 14:56:45 [bblfish]
- so hence from :bethess :believes { bblfish a OverThinker } . you conclude that bblfish a Overthinker
- 14:56:51 [bblfish]
- bblfish a Overthinker
- 14:57:04 [bblfish]
- which according to rule given above you reduce cpuy time to
- 14:57:06 [bblfish]
- oops
- 14:57:20 [bblfish]
- I have just reduce my cpu time in your brain
- 14:58:06 [betehess]
- well, I'd need to overclock first
- 14:58:26 [bblfish]
- :-)
- 14:58:30 [betehess]
- write the class if you need my help!
- 14:58:41 [betehess]
- also, write with class ;-)
- 15:23:34 [bblfish]
- ok, I have to qo cyclcing quickly, before the storm
- 15:23:46 [bblfish]
- cycling in the storm... (sounds like a doors song)
- 15:24:06 [bblfish]
- bblfish has quit (Remote host closed the connection)
- 16:05:27 [Picote]
- Picote (~Picote@unaffiliated/picote) has joined #dig
- 16:10:59 [trueg]
- trueg is now known as trueg_away
- 16:17:10 [danbri_]
- danbri_ (~danbri@cpc6-aztw25-2-0-cust83.aztw.cable.virginmedia.com) has joined #dig
- 16:19:53 [danbri]
- danbri has quit (Ping timeout: 244 seconds)
- 16:40:59 [bblfish]
- bblfish (~bblfish@AAubervilliers-651-1-221-90.w86-198.abo.wanadoo.fr) has joined #dig
- 17:29:47 [bblfish]
- bblfish has quit (Remote host closed the connection)
- 17:50:10 [timbl]
- timbl (~timbl@147.152.248.46) has joined #dig
- 17:54:42 [danbri_]
- danbri_ has quit (Remote host closed the connection)
- 18:14:04 [bblfish]
- bblfish (~bblfish@AAubervilliers-651-1-221-90.w86-198.abo.wanadoo.fr) has joined #dig
- 18:15:55 [Picote]
- Picote has left #dig
- 18:22:29 [cheater_]
- cheater_ (~cheater@p4FD0E633.dip.t-dialin.net) has joined #dig
- 18:25:04 [cheater__]
- cheater__ has quit (Ping timeout: 240 seconds)
- 18:27:52 [trueg_away]
- trueg_away is now known as trueg
- 19:13:27 [trueg]
- trueg is now known as trueg_away
- 19:21:53 [trueg_away]
- trueg_away is now known as trueg
- 19:29:36 [danbri]
- danbri (~danbri@cpc6-aztw25-2-0-cust83.aztw.cable.virginmedia.com) has joined #dig
- 19:34:31 [groupcat]
- [Olympic Global Notice] freenode wishes all of the Olympic competitors the best of luck in the upcoming Olympic Games, the opening ceremony kicks off in a little under 30 minutes. A very British Hurrah to all!
- 19:35:14 [trueg]
- trueg has quit (Remote host closed the connection)
- 19:35:38 [trueg]
- trueg (~trueg@hsi-kbw-46-237-239-121.hsi.kabel-badenwuerttemberg.de) has joined #dig
- 19:40:05 [groupcat]
- [Olympic Global Notice] P.S. I was meant to say, talk about the games in ##olympics.
- 19:56:06 [trueg]
- trueg is now known as trueg_away
- 20:19:34 [danbri]
- danbri has quit (Remote host closed the connection)
- 20:23:41 [RalphS]
- RalphS has quit ()
- 20:44:24 [danbri]
- danbri (~danbri@cpc6-aztw25-2-0-cust83.aztw.cable.virginmedia.com) has joined #dig
- 20:44:42 [danbri]
- danbri has quit (Remote host closed the connection)
- 20:47:29 [trueg_away]
- trueg_away is now known as trueg
- 21:26:32 [trueg]
- trueg is now known as trueg_away
- 22:00:02 [bblfish]
- bblfish has quit (Remote host closed the connection)
- 22:45:11 [danbri]
- danbri (~danbri@cpc6-aztw25-2-0-cust83.aztw.cable.virginmedia.com) has joined #dig
- 22:47:25 [danbri]
- danbri has quit (Remote host closed the connection)
- 23:05:50 [betehess]
- betehess has quit (Quit: Leaving)
- 23:52:07 [danbri]
- danbri (~danbri@cpc6-aztw25-2-0-cust83.aztw.cable.virginmedia.com) has joined #dig
- 23:54:14 [danbri]
- danbri has quit (Remote host closed the connection)