Skip to content

emareg/id2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ID2 – Identifier Identifier

Actions Status

Demo: https://id2.dev

We humans like to ask the four "W" questions: who, what, when, and where. That is why our brains have invented identifiers to answer these questions. However, today there are so many identification schemes that it becomes difficult to distinguish them. Do you know what 8FWH4HX8+QR or 1.3.6.1.4.1.343 identifies?

As a remedy, we are introducing ID², an identifier idenfication scheme that

  • annotates identifiers in a standardized pure-text form
  • has a short and fixed maximum length
  • has intuitive class names
  • is URN/URL compatible

Syntax

The full syntax of an ID2 is

ID2 = "id2" ":" [digowtx] ":" [a-z0-9]{2,4} ":" CHAR+

Example

   class   identifier
     |     ┌────┴────┐
 id2:g:olc:8FWH4HX8+QR
 └┬┘   └┬┘            
prefix type       

An even shorter form for certain well-known and well-defined IDs are possible in the form of

 §g:8FWH4HX8+QR

In this case § serves as the prefix, g is the class of the identifier, : the separator, and the rest the identifier itself.

Identifier Classes

We have chosen 8 classes of identifiers. Why classes? You might not be able to remember all id2 identifier types but you can remember these 8 categories. Thus, it will give you a hint what the ID will identify. Furthermore, classes help to prevent name clashes of ID types in case two or more IDs have the same name/acronym.

class Meaning Example
d Document, Digital Media DOI
i General Identifier UUID
g Geographic Location OLC
o Object (physical) EAN
t Time 24h
q Quantity NUM
w Who, human/company TEL
x eXtension, eXperiments --

Long Term Vision

Our vision is that id2 becomes a standard URI scheme that allows browsers to resolve an ID based on user preferences. For example, the mailto: scheme already works that way and will open your preferred mail-client to write a new email to the specified person. ID2 aims for a similar behavior but for a much larger amount of identifiers.

For example, id2:l:olc:796RWF8Q+WF specifies an Open Location Code (OLC) that would then open your preferred Map-app or website.

Identifier Requirements

Which IDs can be part of ID2? Any identifier that is of public interest. In detail, it is required that the identifier in question ...

  • is used by many people directly or indirectly,
  • refers to something unique (object or concept),
  • can be publicly resolved, but
  • is difficult to resolve by a simple web search.

Related Work

References

About

Identifier Identifier

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages