Hacker News new | ask | show | jobs
by retube 291 days ago
What is "RDF" ? Not defined in the article
2 comments

Resource Description Framework [1] is basically a way to describes resources with (subject, verb, object) predicates, where subject is the resource being described and object is another resource related to the subject in a way verb defines (verb is not necessarily a grammatical verb/action, it's often a property name).

There are several formats to represent these predicates (Turtle), database implementations, query languages (SPARQL), and there are ontologies, which are schemas, basically, defining/describing what how to describe resource in some domain.

It's highly related to the semantic web vision of the early 2000s.

If you don't know about it, it is worth taking a few minutes to study it. It sometimes surfaces and it's nice to understand what's going on, it can give good design ideas, and it's an important piece of computer history.

It's also the quiet basis for many things, OpenGraph [3] metadata tags in HTML documents are basically RDF for instance. (TIL about RDFa [4] btw, I had always seen these meta tags as very RDF-like, for a good reason indeed).

[1] https://en.wikipedia.org/wiki/Resource_Description_Framework

[2] https://en.wikipedia.org/wiki/Semantic_Web

[3] https://ogp.me/

[4] https://en.wikipedia.org/wiki/RDFa

Also worth checking out schema.org, which provides a baseline ontology that pops up in many places

https://schema.org/Thing

Does OpenGraph gain any benefit from its definition as linked data? Or might it just as well have been defined as, say, JSON Schema's and referring to those property names in html?
I'm not expert on OpenGraph, and it's been a while I've actually manipulated RDF other than the automatically generated og meta tags.

I'd say defining this as linked data was quite idiomatic / elegant. It's possibly mainly because OpenGraph was inspired of Dublin Core [1], which was RDF-based. They didn't reinvent everything with OpenGraph, but kept the spirit, I suppose.

In the end it's probably quite equivalent.

And in this end, why not both? Apparently we defined an RDF ontology for JSON schemas! [2]

[1] https://en.wikipedia.org/wiki/Dublin_Core

[2] https://www.w3.org/2019/wot/json-schema

Thanks vm for the detailed reply, most helpful!
We meet this casual use of acronyms all too often on HN. It only takes a line or two to enable everyone to follow along without recourse to a search expedition.
You wouldn't spell out HyperText Markup Language each time.

RDF is one of those things it's easy to assume everybody has already encountered. RDF feels fundamental. Its predicate triplet design is fundamental, almost obvious (in hindsight?). It could not have not existed. Had RDF not existed, something else very similar would have appeared, it's a certitude.

But we might have reached a point where this assumption is quite false though. RDF and the semantic web were hot in the early 2000s, which was twenty years ago after all.

Tim Berners-Lee, now co-founder of Inrupt [0], has launched Solid Project [1] where he kept working on semantic web concepts and linked data specs. Looks like Inrupt went full AI today. What ailed Solid was I think the academic approach mentioned in other comments, the heavy-weight specification process (inspired by W3C), and overlooking the fact that you better get your dev community on board and excited as a good road to adoption. Inrupt didn't spend much attention to their Solid community, except for the active followers in their chat channels, and were directly targeting commercial customers. I don't know the health of Solid project today, but there are a couple of interesting projects around social networking and the fediverse.

[0] https://www.inrupt.com/about

[1] https://solidproject.org/

I wish more people would get on board with Solid, it would solve a lot of the surveillance capitalism problems that plague modern society.

For what it’s worth, I think Solid is still very much “in development” and is a pre 1.0 thing no?

My impression too. I felt that in the past "solid apps" in practice boiled down to "rebooting the semantic web", and adopting / maturing the whole host of specs needed for end-to-end generic linked data app development defined by open standards. Solid as "Out with the old, in with the new. The web done right, this time". Which may be too ambitious.

Update: Reboot the semantic web seems still the goal. From About Solid page [0]:

> Solid is an open standard for structuring data, digital identities, and applications on the Web. Solid aims to support the creation of the Web as Sir Tim Berners-Lee originally envisioned it when he invented the Web at CERN in 1989. Tim sometimes refers to Solid as “the web - take 3" — or Web3.0 — because Solid integrates a new layer of standards into the Web we already have. The goal of Solid is for people to have more agency over their data.

A more manageable scope for the project would be "Personal data vaults for self-sovereign linked data" or something like that. That positioning would make me more interested than current "let's reboot" call-to-action.

[0] https://solidproject.org/about

Right. I was thinking "RDF - vaguely remember that as some XML thing from Semantic Web era".

Yup, it's still that RDF. Inevitably, it had to be converted to new JSON-like syntaxes.

It reminds me of the "is-a" predicate era of AI. That turned out to be not too useful for formal reasoning about the real world. As as a representation for SQL database output going into a LLM, though, it might go somewhere. Maybe.

Probably because the output of an SQL query is positional, and LLMs suck at positional representations.