# LV2 URID

http://lv2plug.in/ns/ext/urid
Features for mapping URIs to and from integers.

Version | 1.4
Date | 2018-03-16
Discuss | devel@lists.lv2plug.in (subscribe)
Developer | Gabriel M. Beddingfield
Maintainer | David Robillard

- Index
- Reference
- History
- API

This extension defines a simple mechanism for plugins to map URIs to and from integers, usually for performance reasons (e.g. processing events typed by URIs in real time). Typically, plugins map URIs to integers for things they "understand" at instantiation time, and store those values for use in the audio thread without doing any string comparison. This allows for the extensibility of RDF but with the performance of integers.

This extension is intended as an improved and simplified replacement for the uri-map extension, since the map context parameter has been found problematic. This extension is functionally equivalent to the uri-map extension with a NULL context. New implementations are encouraged to use this extension for URI mapping.

## Index

Instances | Files
--- | ---
map unmap | lv2-urid.doap.ttl urid.h urid.ttl

## Reference

### Instance urid:map

A feature which is used to map URIs to integers. To support this feature, the host must pass an LV2_Feature to LV2_Descriptor::instantiate() with URI LV2_URID__map and data pointed to an instance of LV2_URID_Map.

Type | lv2:Feature

### Instance urid:unmap

A feature which is used to unmap URIs previously mapped to integers by urid:map. To support this feature, the host must pass an LV2_Feature to LV2_Descriptor::instantiate() with URI LV2_URID__unmap and data pointed to an instance of LV2_URID_Unmap.

Type | lv2:Feature

## History

Version 1.4 (2012-10-14)
  - Fix typo in urid:unmap documentation.
Version 1.2 (2012-04-17)
  - Merge with unified LV2 package.
  - Add feature struct names.
Version 1.0 (2011-11-21)
  - Initial release.