"hello world" data dictionary terms

@Zachary_Trautt suggested the following:

Our proposal states the following (emphasis mine): “a data dictionary is created and deployed online, with resolvable HTTP URLs for each term, that documents the fields of the dataset;” I propose that individuals within the group volunteer to create a resolvable instance of the term “hello world”, using whatever technology they see fit, in any service they see fit. This will enable us to see likely approaches among service providers and begin to make mappings between identical terms of “hello world”.

With the help of @ml-evs, I put up a small something at https://ns.polyneme.xyz/2021/04/marda-dd/test#helloWorld. The source is at GitHub - marda-dd/hello-world in the “dwinston” directory. Pull requests are very welcome if you’d like to share a different approach in a separate directory.

@Zachary_Trautt also has a demo up with the following information:

Here is a “hello world” (noting that everything here is under active development and subject to change/interruption):

API: https://api.materialhub.org/objects/20.500.12772/0a4d55a8d778e5022fab

UI: https://materialhub.org/resource/?id=20.500.12772/0a4d55a8d778e5022fab

We still have some handle configuration changes, but you can redirect the PID to the API view via:
https://hdl.handle.net/20.500.12772/0a4d55a8d778e5022fab?locatt=view:json

1 Like

Presumably we could now add a relation between the two terms? (Following @Zachary_Trautt’s use of SKOS):

@base <http://ns.polyneme.xyz/2021/04/marda-dd/test> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .

<#helloWorld> rdfs:label "hello world" ;
    rdfs:comment "This is a beautiful term." ;
    skos:closeMatch "https://api.materialhub.org/objects/20.500.12772/0a4d55a8d778e5022fab" .

I also had a play around the rdflib plugin for JSON-LD but found it quite lacking (seems to equally apply to many of the Python tools in this field)…

Presumably we could now add a relation between the two terms?

Yeah, that seems great. I like your conservative choice of skos:closeMatch rather than skos:exactMatch, as we’re not confident yet how interchangeable the terms are because the respective enclosing vocabularies are not fully formed. From the SKOS reference:

skos:closeMatch and skos:exactMatch are used to link SKOS concepts in different schemes. A skos:closeMatch link indicates that two concepts are sufficiently similar that they can be used interchangeably in some information retrieval applications. A skos:exactMatch link indicates a high degree of confidence that two concepts can be used interchangeably across a wide range of information retrieval applications.

Minor note for the Turtle serialization: We’ll want to encode the skos:closeMatch object using the URI notation
<https://api.materialhub.org/objects/20.500.12772/0a4d55a8d778e5022fab> rather than using the string literal notation "https://api.materialhub.org/objects/20.500.12772/0a4d55a8d778e5022fab".

I also had a play around the rdflib plugin for JSON-LD but found it quite lacking (seems to equally apply to many of the Python tools in this field)…

Yeah, it seems that the rdflib-jsonld package results in JSON for curl -H "Accept: application/ld+json", but the base param isn’t incorporated, so you don’t get full URIs in the output. :frowning:

1 Like