Re: Exciting news! Introducing the RDF/JS Wrapper! 🎉

po 2. 3. 2026 v 12:31 odesílatel Jesse Wright <jesse.wright@theodi.org>
napsal:

> Hey everyone,
>
>
> We're thrilled to introduce the new RDF/JS Wrapper! 🚀 This
> object-relational mapping library is designed to make working with RDF data
> in JavaScript incredibly smooth, native, and idiomatic. Our goal is to give
> developers a really low-friction experience. 💡
>
>
> What does it do? It lets you create standard ES classes that model the
> datasets and terms you're working with. Class properties magically
> represent statement arcs (incoming or outgoing) ✨, and accessing these
> properties translates directly into the graph patterns needed to read and
> write the corresponding statements. This is all built on utility methods
> from one of two simple base classes. 🏗️
>
>
> When you use these mapping classes, you get a mutable, in-memory object
> graph that feels just like standard JavaScript—think familiar Objects,
> Sets, Maps, and Arrays. But here's the cool part: this object graph keeps a
> live connection to the underlying RDF data, allowing you to treat it as RDF
> via the RDF/JS abstractions without losing any information. 🔗
>
>
> Check out some of the features and design choices that make this library
> stand out:
>
>    -
>
>    Simple Foundation: We provide two abstract classes with utility
>    methods for mapping RDF to JS patterns, plus a few helpers for
>    predicate-object lists, RDF collections (rdf:List), and
>    language-tagged dictionaries. 🧱
>    -
>
>    Pure JavaScript: The resulting mapping constructs are just plain JS
>    objects. No DSLs, no Proxies, no global context, and zero new conventions
>    to memorize. ✍️
>    -
>
>    Zero Dependencies: By adhering strictly to the RDF/JS data model
>    (Terms and DatasetCore), we remain completely agnostic about the specific
>    RDF implementation you choose. 🧘
>    -
>
>    Bi-Directional Mapping: All mappings optionally support both reading
>    and writing single statements, predicate-object lists, and
>    collections. 🔄
>    -
>
>    Runtime Ready: No build step is required! 💨
>    -
>
>    Modern JS: Built using ES modules. 💻
>    -
>
>    Comprehensive RDF Support: Supports named nodes, blank nodes,
>    arbitrary literal datatypes, arbitrary JS primitives, custom JS/TS classes,
>    and named graphs. 📊
>    -
>
>    Familiar OO: We support standard object-oriented concepts: optional
>    vs. required properties, singular vs. collection properties, property
>    getters/setters, and inheritance. 📐
>    -
>
>    Total Control: You have full control over the shape and logic of your
>    mapping artifacts. You can choose class and property names freely,
>    independent of existing RDFS/SKOS/OWL/SHACL vocabularies. This is great for
>    mixing and matching vocabularies, as we only rely on a predicate IRI. The
>    vocabulary doesn't even need to be published or exist! 👑
>    -
>
>    Fully Dynamic & Live: Instances are lazily loaded, so the mapping is
>    always up to date with the underlying RDF dataset—no synchronization
>    needed. And mutation (using setters, or adding/deleting from sets/arrays)
>    is immediate, materializing statements instantly in the dataset. 📡
>    -
>
>    Universal Support: Works in the browser and in Node.js, for both plain
>    JavaScript and TypeScript. 🌐
>    -
>
>    Future-Proof: Support for RDF 1.2 is built in via the RDF/JS data
>    model. 🔮
>
> To be clear, here’s what the library doesn’t focus on (but you’ll likely
> need another tool for!):
>
>    -
>
>    Retrieving or persisting data from remote sources. 🚫
>    -
>
>    Authentication, caching, and network resilience. 🛡️
>    -
>
>    Integrating into frameworks like React. ⚛️
>    -
>
>    Parsing and serializing various formats. 📤
>    -
>
>    Indexing, performance optimisation, or validation. ⚙️
>    -
>
>    Querying, traversing, or reasoning. 🗺️
>
> The library is available under a dual MIT/Apache 2.0 license over at
> https://github.com/rdfjs/wrapper. 🐙
>
> We’re currently publishing the package as rdfjs-wrapper on GitHub. We
> plan to move it to @rdfjs/wrapper on Monday, March 9th. Please don’t
> hesitate to reach out before then if you have any questions or concerns
> about this move! 📧
>
> Looking forward to hearing what you think! 🙏
>

Interesting work!

Is this related to the W3C RDF Interfaces spec? It reminds me of Nathan
Rixham's js3:

https://github.com/webr3/js3


>
> Best,
> --
> *Jesse Wright (he/him)*
>
> *Project Lead, Solid
> <https://theodi.org/news-and-events/news/odi-and-solid-come-together-to-give-individuals-greater-control-over-personal-data/>*
> The Open Data Institute
> 4th Floor, Kings Place, 90 York Way, London, N1 9AG
> Website: theodi.org
> Book a meeting: https://calendar.app.google/hv63aFQyL6jgjiXG9
> Tel: +44 7862381515
> *My work day may look different than yours. Please do not feel obligated
> to respond outside of your normal working hours.*
>

Received on Monday, 2 March 2026 15:42:08 UTC