Transforms the {iri} to match what a browser would fetch for that IRI.
Effectively the IRI without the fragment (#).
Transforms the {iri} to match what a browser would fetch for that IRI.
Effectively the IRI without the fragment (#).
Get the filename (with extension) from an IRI.
The IRI to get the filename from.
The base folder to trim. Will be guessed if omitted.
The filename with extension or an empty string if it has no filename.
Get the filename (with extension) from an IRI.
The IRI to get the filename from.
The base folder to trim. Will be guessed if omitted.
The filename with extension or an empty string if it has no filename.
Get the origin of the {iri} without trailing slash
Get the origin of the {iri} without trailing slash
Get the IRI of the directory containing {iri} or its parent if {iri} has a trailing slash.
Get the IRI of the directory containing {iri} or its parent if {iri} has a trailing slash.
Get the origin of the {iri} with trailing slash
Get the origin of the {iri} with trailing slash
Get a term name for this {iri}. This guesses a term name using either the fragment or a path segment. Has no preconception of well-known ontologies.
Get a term name for this {iri}. This guesses a term name using either the fragment or a path segment. Has no preconception of well-known ontologies.
Generated using TypeDoc
js.rdf.dev/iri
A lot of IRI/URI manipulation can happen while working with linked data, this package provides utility functions to do just that.
Example
import rdf from "@ontologies/core"; import { doc, filename, origin, parentDir, site, term } from "@rdfdev/iri"; const myIRI = rdf.namedNode("https://example.com/people/1#profilePicture"); doc(myIRI) // rdf.namedNode("https://example.com/people/1") filename(myIRI) // "1" parentDir(myIRI) // rdf.namedNode("https://example.com/people") origin(myIRI) // rdf.namedNode("https://example.com") site(myIRI) // rdf.namedNode("https://example.com/") term(myIRI) // "profilePicture"
Getting started
Just install the package and its peer dependencies.
npm i @rdfdev/iri @ontologies/core
yarn add @rdfdev/iri @ontologies/core
Documentation
See the js.rdf.dev/iri documentation
See the complete js.rdf.dev documentation
Need help with linked data?
This package is brought to you by Ontola. We build production-grade linked data solutions and can help you from advice to building custom web services.