@thi.ng/prefixes
TypeScript icon, indicating that this package has built-in type declarations

2.3.16 • Public • Published

@thi.ng/prefixes

npm version npm downloads Mastodon Follow

[!NOTE] This is one of 192 standalone projects, maintained as part of the @thi.ng/umbrella monorepo and anti-framework.

🚀 Please help me to work full-time on these projects by sponsoring me on GitHub. Thank you! ❤️

About

50+ Linked Data vocabulary prefixes and their namespace URLs.

Status

STABLE - used in production

Search or submit any issues for this package

Related packages

Installation

yarn add @thi.ng/prefixes

ESM import:

import * as pre from "@thi.ng/prefixes";

Browser ESM import:

<script type="module" src="https://cdn.skypack.dev/@thi.ng/prefixes"></script>

Skypack documentation

For Node.js REPL:

const pre = await import("@thi.ng/prefixes");

Package sizes (brotli'd, pre-treeshake): ESM: 1.10 KB

Dependencies

None

API

Generated API docs

This package only contains constants, no actual code. Please see source code for full list provided.

Note: some namespace URIs exist in two flavors - for RDF vocab and as XML namespace. The latter versions are always prefixed with XML_, e.g.:

import { xsd, XML_XSD } from "@thi.ng/prefixes";

xsd     // http://www.w3.org/2001/XMLSchema#
XML_XSD // http://www.w3.org/2001/XMLSchema

Usage with @thi.ng/hiccup

All current @thi.ng/hiccup consumers/processors support RDFa attributes and specifically allow the prefix attrib value to be given as object of prefixes. This allows for very compact prefix definitions like so:

import { serialize } from "@thi.ng/hiccup";
import { article, body, div, h1, html } from "@thi.ng/hiccup-html";
import { dc, schema } from "@thi.ng/prefixes";

serialize(
    html({ lang: "en" },
        body({ prefix: { dc, schema } },
            article({ resource: "/posts/hello-world", typeof: "schema:BlogPosting"},
                h1({ property: "dc:title" }, "Hello World"),
                div({ property: "schema:articleBody" }, "...")
            )
        )
    )
);

Serialized HTML/RDFa result:

<html lang="en">
    <body prefix="dc: http://purl.org/dc/elements/1.1/ schema: http://schema.org/">
        <article resource="/posts/hello-world" typeof="schema:BlogPosting">
            <h1 property="dc:title">Hello World</h1>
            <div property="schema:articleBody">...</div>
        </article>
    </body>
</html>

Authors

If this project contributes to an academic publication, please cite it as:

@misc{thing-prefixes,
  title = "@thi.ng/prefixes",
  author = "Karsten Schmidt",
  note = "https://thi.ng/prefixes",
  year = 2020
}

License

© 2020 - 2024 Karsten Schmidt // Apache License 2.0

Dependents (6)

Package Sidebar

Install

npm i @thi.ng/prefixes

Weekly Downloads

265

Version

2.3.16

License

Apache-2.0

Unpacked Size

31.6 kB

Total Files

26

Last publish

Collaborators

  • thi.ng