Re: Checking equality of graphs serialized in JSON-LD and Turtle

On 10/19/14 5:22 AM, ☮ elf Pavlik ☮ wrote:
> On 10/19/2014 09:50 AM, Melvin Carvalho wrote:
>> >
>> >
>> >On 18 October 2014 23:03, ☮ elf Pavlik ☮ <perpetual-tripper@wwelves.org
>> ><mailto:perpetual-tripper@wwelves.org>> wrote:
>> >
>> >     On 10/18/2014 11:59 AM, bergi wrote:
>> >     > Am 17.10.2014 um 15:35 schrieb ☮ elf Pavlik ☮:
>> >     >> Howdy,
>> >     >>
>> >     >> I work on automated tests for examples in draft of
>> >     ActivityStreams 2.0
>> >     >> spec[1]
>> >     >>
>> >     >> So far I use jsonld.js to get N-Quads from JSON-LD examples in spec +
>> >     >> latest context document. For now I modified those N-Quads by hand to
>> >     >> make it more human readable Turtle so we can review and define
>> >     expected
>> >     >> RDF as fixtures.
>> >     >>
>> >     >> I still don't have clear strategy how to compare graphs serialized in
>> >     >> both JSON-LD and Turtle. I plan to use N3.js to parse turtle, also in
>> >     >> LevelGraph extensions[2][3] we already have code which converts both
>> >     >> serializations to array of plain triples for persisting them. It may
>> >     >> require some carefulness with blank nodes...
>> >     >>
>> >     >> I remember us having conversation about common js format which we
>> >     could
>> >     >> use as common base for converting all the other serializations. I
>> >     think
>> >     >> we considered expanded JSON-LD as main candidate.
>> >     >>
>> >     >> Any recommendations for quick way of comparing, for now just
>> >     equality,
>> >     >> graphs serialized in JSON-LD and Turtle?
>> >     >
>> >     > I have created the module rdf-test-utils[1] for my RDF-Ext
>> >     tests[2]. The
>> >     > module contains a compareGraph method to compare two RDF-Interfaces
>> >     > graph objects. The jsonld.normalize function is used to generate
>> >     > canonical N-Triples. You could use the RDF-Ext parsers to get
>> >     > RDF-Interfaces graph objects. Internal RDF-Ext also uses the
>> >     JSON-LD and
>> >     > N3.js library.
>> >     neat! it almost solved my task, but then*blank node identifiers*  jumped
>> >     at me and after normalizing graphs it compared '' with '' returning
>> >     true :D
>> >     https://github.com/bergos/rdf-ext/issues/3
>> >
>> >
>> >Dont use bnodes, you are violating axiom 0 of the web (among others!),
>> >anything of significance should be given a URI.
> Melvin, IMO*sometimes*  they do make sense, still all the time
> triggering debates:
> *http://lists.w3.org/Archives/Public/semantic-web/2014Sep/0101.html
> *http://lists.w3.org/Archives/Public/semantic-web/2014Sep/0106.html
> *http://manu.sporny.org/2013/rdf-identifiers/#comment-3369
>
> Anyways, once we patch RDF-Ext I can compare equality of graphs with
> blank nodes and normalized to JSON-LD, this way I address current state
> of things:)
>
> *http://www.w3.org/2001/sw/wiki/How_to_diff_RDF#Some_Related_Papers
> *http://www.w3.org/DesignIssues/Diff
>
>
>

Yes, blank nodes (indefinite pronouns [1]) are useful. The key is to use 
them where useful.

They are not implicitly bad.

A Language without pronouns is limited, at best.

[1] https://www.englishclub.com/grammar/pronouns-indefinite.htm .

-- 
Regards,

Kingsley Idehen 
Founder & CEO
OpenLink Software
Company Web: http://www.openlinksw.com
Personal Weblog 1: http://kidehen.blogspot.com
Personal Weblog 2: http://www.openlinksw.com/blog/~kidehen
Twitter Profile: https://twitter.com/kidehen
Google+ Profile: https://plus.google.com/+KingsleyIdehen/about
LinkedIn Profile: http://www.linkedin.com/in/kidehen
Personal WebID: http://kingsley.idehen.net/dataspace/person/kidehen#this

Received on Sunday, 19 October 2014 16:25:40 UTC