Re: High level sexy JS rdf interface?

> On 21 Dec 2015, at 15:39, Robin Berjon <robin@berjon.com> wrote:
> 
> On 20/12/2015 11:53 , Ruben Verborgh wrote:
>>>  - Has no visible artifacts of the RDF system like the URIs of data types
>> This is a very important requirement indeed.
>> SimpleRDF is a beautiful example already,
>> and many more things are possible with ES6.
> 
> One thing I'm curious about, but haven't had time to explore: has anyone
> looked into transpiling to support those goals? The typical JS project
> includes a build step these days, so there's no reason to find one's
> imagination limited by what can be piggybacked off vanilla JS.

Indeed. Banana-RDF is written in Scala but with http://scala-js.org now compiles to
very efficient JavaScript. As a result one can use all the neat DSL features
from Scala. I opened an issue on the banana-rdf mailing list to look in
more detail about how far it already succeeds in satisfying Tim's needs.

https://github.com/banana-rdf/banana-rdf/issues/308

To give you some ideas here's how one can write a quick graph:


val g = (
      bnode("betehess")
      -- foaf.name ->- "Alexandre"
      -- foaf.age ->- 29
      -- foaf.height ->- 1.80
    ).graph


Here's some initial work by Alistair Johnson how one can do some owl:

val sg2 = f.ChildlessPerson ≡ (f.Person ⊓ ¬(f.Parent))

And here is how one can explore a graph.

 (betehess / foaf.knows / foaf.name).as[String] must_==(Success("Henry Story"))

Hope that helps,

 Henry

Received on Monday, 21 December 2015 15:17:06 UTC