Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Jun 23 21:57
    barthanssens commented #3128
  • Jun 23 21:51
    barthanssens labeled #3128
  • Jun 23 21:40
    volkerjaenisch opened #3128
  • Jun 23 10:00
    barthanssens labeled #3127
  • Jun 23 10:00
    barthanssens labeled #3127
  • Jun 23 10:00
    barthanssens labeled #3127
  • Jun 23 10:00
    barthanssens assigned #3127
  • Jun 23 10:00
    barthanssens opened #3127
  • Jun 23 08:50
    barthanssens closed #3125
  • Jun 22 20:37

    barthanssens on develop

    GH-3125: upgrade commons io and… (compare)

  • Jun 22 20:37
    barthanssens closed #3126
  • Jun 22 19:51
    barthanssens edited #3126
  • Jun 22 19:51
    barthanssens opened #3126
  • Jun 22 17:23
    barthanssens edited #3125
  • Jun 22 16:49
    barthanssens edited #3125
  • Jun 22 16:41
    barthanssens milestoned #3125
  • Jun 22 16:41
    barthanssens labeled #3125
  • Jun 22 16:41
    barthanssens assigned #3125
  • Jun 22 16:41
    barthanssens opened #3125
  • Jun 22 13:32
    barthanssens ready_for_review #2406
Dimitirje Mitić
@RedCrusaderJr
I read somewhere that they are still out of sparql spec
but again there is a xpath namespace with some functions (I am looking for square root)
Jeen Broekstra
@jeenbroekstra
@RedCrusaderJr I don't think we have square root out of the box. But it shouldn't be hard to add as a custom function (see https://rdf4j.org/documentation/tutorials/custom-sparql-functions/) . If you're up for it, might be a nice new contribution too :)
Dimitirje Mitić
@RedCrusaderJr
oh ok
where should I put it?
Jeen Broekstra
@jeenbroekstra
good question.
I think a new maven module might be a good idea. let me take a look, one sec
Dimitirje Mitić
@RedCrusaderJr
and can I also create my custom functions that would stay out of the rdf4j source, but still somehow be added to the reasoner?
Jeen Broekstra
@jeenbroekstra
reasoner?
Dimitirje Mitić
@RedCrusaderJr
yeah yeah, my bad
so custom functions must be part of this namespace http://example.org/custom-function/
Jeen Broekstra
@jeenbroekstra
no not at all, you can use any namespace you like.
Let's keep things easy for now. just try out building a few custom functions on your own, and see if you can get them to work. Once you have what you need, and you're willing to contribute them, we can talk about the best place to fit them in.
Dimitirje Mitić
@RedCrusaderJr
deal
Jeen Broekstra
@jeenbroekstra
sweet :)
Dimitirje Mitić
@RedCrusaderJr
now I saw that everything is up to the added configuration
Jeen Broekstra
@jeenbroekstra
yeah. Not sure if you have any experience with SPI configuration. It's not as hard as it sounds at first glance, it's basically just a text file that needs to be in the right place in your jar file
Dimitirje Mitić
@RedCrusaderJr
I am trying it out
Iwan Aucamp
@aucampia
Iwan Aucamp
@aucampia
And related, is there a a way to set both language tag and type: https://rdf4j.org/javadoc/latest/org/eclipse/rdf4j/model/ValueFactory.html ?
I guess the one implies the other
Jeen Broekstra
@jeenbroekstra
@aucampia I think it is called 'label' mostly because "lexical value" felt like rather a mouthful. But to be honest it's been called that for so long that I can't quite remember. It might also be that in an earlier draft of RDF it was actually called the label.
Iwan Aucamp
@aucampia
thanks
I am working on some go implementation, not sure what will come of it, but I am modelling it heavily of rdf4j and a bit on jena also - I will share interfaces sometime if someone wants to have a look, initially it will be much less complete and lack many things that rdf4j does but it is a start
Jeen Broekstra
@jeenbroekstra
Not really a go expert but sounds interesting :)
Jeen Broekstra
@jeenbroekstra
In case you need something uplifting this Ascension Day: https://open.spotify.com/track/2H0nxRrV8i8dxeTremZYNr?si=346091a9081047a7
Fernando Luján Martínez
@ferchitas
Hello everybody, I would like to contribute in the project. I already read the CONTRIBUTING.md and checked all the issues but I'm not sure where I can start
Bart Hanssens
@barthanssens
Hi @ferchitas , thanks, would be great if you could contribute :-) Feel free to start any issue you feel comfortable with, but perhaps you might want to look at one of the issues tagged with a "hactoberfest" or "good first issue" label (see https://github.com/eclipse/rdf4j/labels/hacktoberfest or https://github.com/eclipse/rdf4j/labels/good%20first%20issue)
those should be fairly stand-alone and not too big... and of course, we'd be happy to help if you would have any questions
Jeen Broekstra
@jeenbroekstra
I would like to hear some opinions on #3056 - considering moving the main user forum from google groups to the newfangled Github discussions.
Iwan Aucamp
@aucampia
I would say go for it, I dispise google groups and mailing lists in general
but that is maybe just me :)
Jeen Broekstra
@jeenbroekstra
Thanks Iwan, I'm kind of on the same page to be honest :)
Iwan Aucamp
@aucampia
I am trying to fix RDFLib's graph diff: RDFLib/rdflib#1294 - but I'm not sure I will fix it because it does not make a lot of sense to me right now, not well documented. I looked at what RDF4J does to diff graphs, not sure you do have a comparable diff method, but I guess Models.isomorphic and Models.isSubset can be used to implement graph diff.
So I guess what I'm asking, is there a specific graph diff function, and if not, am I correct in thinking this isSubset can be used to implement a graph diff similar to rdflib graph_diff? The specific RDFlib method in rdflib is this one: https://rdflib.readthedocs.io/en/stable/apidocs/rdflib.html#rdflib.compare.graph_diff - it returns (in_both, in_first, in_second) - each is a triple set
Iwan Aucamp
@aucampia
Maybe a related question, does anyone know of some implementation of a similar algorithm for RDF that works: https://github.com/RDFLib/rdflib/blob/master/rdflib/compare.py#L260
Jeen Broekstra
@jeenbroekstra

@aucampia it kind of depends what exactly you mean with "difference" in the context of RDF models. For example, consider these two models:

:a :p _:b1 . 
_:b1 :q :z .

and

:a :p _:b2 . 
_:b2 :q :z .

Are those different, in your opinion? They're not equal, but they are isomorphic under blank nodes mapping. And what about this one:

:a :p _:b1 , _:b2. 
_:b1 :q :z .
_:b2 :q :z.

Not structurally isomorphic with the the first or the second, but semantically isomorphic (it can be leaned).

The problem is that if you don't consider isomorphism important, then doing model difference is fairly simple, and you can use standard Java collection or stream API stuff to implement it on top of a Model. But if you want to do diffing under isomorphism it immediately becomes quite complex because there is usually not a single well-defined difference: there can be multiple half-complete blank node mappings that lead to different triples appearing in the difference, depending on the order. Some form of canonicalization may help there, but it's un-trivial (is that a word?)
Jeen Broekstra
@jeenbroekstra
That being said, have a look at how isomorphism is actually implemented in RDF4J, in GraphComparisons. We use the notion of an "iso-canonical blank node mapping". I haven't tried myself yet but it should be doable to use that mapping to come up with a meaningful way to determine the difference between two graphs.
Frens Jan Rumph
@frensjan

Pretty off topic, but can anyone here point me to an online community for some sparring about RDF lists and blank nodes?

I have an application that I want to migrate to RDF (currently on PostgreSQL with vertically partitioned fact/property tables). There are some structures in the schema with lists of 'tagged strings' (pertaining to names and addresses) that cause me too but heads with RDF lists, blank nodes, etc. I tried stackoverflow, but got little response.

Jeen Broekstra
@jeenbroekstra
The rdf4j mailinglist (or our new GitHub discussion section) might be good. If you want a wider audience than rdf4j, perhaps the w3c semantic-web mailing list?
Do you have a link to your SO question btw?
Frens Jan Rumph
@frensjan
Thanks @jeenbroekstra. I'll mail the w3c list!
The SO question is on https://stackoverflow.com/questions/65982459/rdf-modelling-of-list-of-name-elements
(I am hesitant to soil the rdf4j community with general RDF related questions from a semantic web novice ...)
Jeen Broekstra
@jeenbroekstra
I'd actually be really happy with a bit more traffic on the GitHub forum, novice questions welcome :) but the w3c is a good spot too if sometimes a bit academic
Bart Hanssens
@barthanssens
fwiw, looking into ES/Solr/Lucene (again), seems Lucene 8.7 + ES 7.10.2 work just fine, Solr somewhat stuck on 8.4.1... looks like there is a small change in highlighting behavior in Solr 8.5, that may lead to failing tests
Bart Hanssens
@barthanssens
if it would take too much time, I'd suggest to already create CQs for the newer Lucene/ES (latest ES with old license) and include Solr 8.4.1, to at least have some improvement in that area
Jeen Broekstra
@jeenbroekstra
@barthanssens wouldn't it be easier for now to just get the PR that is there ready for inclusion - since that has all CQs approved? Sorry if this makes no sense, I'm a little out of the loop on where we are with this
Bart Hanssens
@barthanssens
@jeenbroekstra true :-) ok, let's do that instead