RFC 6588

A URN Namespace for ucode

πŸ“… published April 2012, from ietf

Title Block: RFC 6588 πŸŽ€

Okay bestie, this is RFC 6588: A URN Namespace for ucode, written by C. Ishikawa from the YRP Ubiquitous Networking Lab πŸ’– It's an Informational doc, not a Standards Track one, and it was dated April 2012. Its ISSN is 2070-1721 ✨ The header doesn't list anything it obsoletes or updates, so there's nothing to report there 🫢

Abstract ✨

So this doc describes a Uniform Resource Name (URN) namespace for ucode, an identifier system for objects and places πŸ¦‹ ucode tech is used in tons of applications, and this doc gives ucode its own URN namespace so it can actually be used in Internet-related devices and software. Main character energy πŸ‘‘

Status of This Memo πŸ“

This doc is NOT an Internet Standards Track spec, it's just published for informational purposes 🌸

Also, it's an IETF product. It represents the IETF community's consensus, got public review, and was approved for publication by the Internet Engineering Steering Group (IESG). Not every IESG-approved doc is a candidate for any level of Internet Standard, so check Section 2 of RFC 5741 if you want the full story 🧚

For the latest status, errata, and how to give feedback on this doc, go to the link in the original header (http://www.rfc-editor.org/info/rfc6588) πŸ’œ

Copyright (c) 2012 IETF Trust and the persons identified as the document authors. All rights reserved πŸ’…

This doc is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) as in effect on the date of publication. Please read them carefully, because they explain your rights and restrictions for this doc 🫢 Code Components pulled out of this doc must include Simplified BSD License text, as described in Section 4.e of the Trust Legal Provisions, and they come without warranty, as described in the Simplified BSD License πŸ”₯

1. Introduction ✨

[UCODE] is ucode, an identifier meant to live in many kinds of tags, not just Radio Frequency Identification (RFID) tags 🏷️ Allocation and management are handled by the Ubiquitous ID Center [UIDC], and the Ubiquitous ID Center also specifies how ucode gets embedded in lots of tag types: RFID tags, optical codes, infrared markers, and even sound sources πŸ”Š

The basic length of ucode is 128 bits, but it can extend in units of 128 bits if needed 🌸

ucode was built to identify objects and places where existing standards just don't fit the app needs, or where the allocation policy of those standards is too limited for Small and Medium Enterprises (SMEs), small-scale research labs at academic institutions, or individual users πŸ’–

Apps that use ucode take full advantage of the Internet 🌐 Anybody can use ucode πŸŽ€ If you want ucode allocated to you, you can either get a ucode subspace allocated directly from the Ubiquitous ID Center [UIDC], or buy tags that already have ucode stored on them from so-called "providers" [UCDMIP]. Those tags are certified as ucode tags [UIDTAG], and the reader specs are published so there will be lots of readers for them πŸ¦‹

Having a URN for ucode means we can use it across many Internet-related devices and software 🧚 That helps current and future ucode users, plus people who access tags attached to objects and places ✨ An ucode-based app can run across organizational boundaries and spread across regions and countries, so a formal URN Namespace Identifier (NID) assignment for 'ucode' is requested πŸ’…

2. 'ucode' Registration Template πŸŽ€

Namespace ID:

'ucode' requested

Registration Information:

Registration Version Number: 1 Registration Date: 2011-12-21

Declared registrant of the namespace:

T-Engine Forum
2-20-1, Nishi-Gotanda
Shinagawa, Tokyo, 141-0031
Japan
office@t-engine.org
Tel: +81-3-5437-0572

Declaration of syntactic structure:

The structure of the 'ucode' namespace, using the hexadecimal representation of the identifier, is shown below in ABNF [RFC5234] πŸ’œ

UCODE-URN = "urn:ucode:" ucode-name
ucode-name = "_" ucode-number
ucode-number = 1*ucode-value
ucode-value = 32HEXDIG
HEXDIG         =  DIGIT / "A" / "B" / "C" / "D" / "E" / "F"
DIGIT          =  %x30-39
               ; 0-9
NOTE 1: The "1*" at the start of the ucode-number definition is not a typo πŸ™ˆ The currently used ucode [UCODE] is 128 bits (16 octets), which needs 32 hexadecimal characters to write out serially. ucode is designed to extend in 128-bit increments, so in the distant future we may need to repeat the 128-bit chunks. That's why "1*" comes before ucode-value 🌈
NOTE 2: ucode-name starts with a "_" because it's also meant to be an identifier for XML [W3CXML] 🧚 An XML tag can't start with a digit, so an "_" (underscore) goes at the start to make sure ucode-name begins with a non-digit 🫢 For example, the 128-bit ucode value 0123456789ABCDEF0123456789ABCDEF, written in hexadecimal digits, looks like this:
urn:ucode:_0123456789ABCDEF0123456789ABCDEF

Relevant ancillary documentation:

ucode, the identifier expressed by ucode-number, is managed by the Ubiquitous ID Center [UIDC], which is a sub-organization of the T-Engine Forum [TEF] ✨ The document "Ubiquitous Code: ucode" [UCODE] defines this identifier system πŸ¦‹

Identifier uniqueness considerations:

The 'ucode' namespace is managed by the Ubiquitous ID Center πŸ‘‘ The Ubiquitous ID Center assigns the identifier, ucode, in a way that keeps the 'ucode' namespace unique πŸ’–

Identifier persistence considerations:

The assignment process guarantees that names are never reassigned, and that the binding between a name and its resource is permanent. That holds regardless of any standards or organizational changes, or the assignment period πŸ”₯

Process of identifier assignment:

Names are assigned by the Ubiquitous ID Center, and by any entities sub-delegated by the Ubiquitous ID Center 🌸 This assignment process is based on "ucode Management Implementing Procedures" [UCDMIP], established by the Ubiquitous ID Center πŸ’…

Process of identifier resolution:

Identifier resolution is currently based on the "ucode Resolution Protocol" [UCSURP] 🌐 It will be enhanced by using newer recommendations from ITU-T and/or standards from ISO 🧚

Rules for lexical equivalence:

The entire UCODE-URN is case-sensitive πŸ™ˆ

NOTE: This is an extra restriction on the ucode namespace, required by some major ucode applications that already exist πŸ’€ Only capital "A", "B", "C", ..., "F" are allowed as hexadecimal characters πŸŽ€

Conformance with URN syntax:

There are no special reserved characters. The URN of this namespace conforms to RFC 2141 [RFC2141] and RFC 3986 [RFC3986] ✨

Validation mechanism:

No special considerations πŸ’œ

Scope:

Global 🌈

3. IANA Considerations πŸ³οΈβ€πŸŒˆ

One URN Namespace registration for 'ucode' (46) has been entered into the IANA "Formal URN Namespaces" sub-registry for URN NIDs πŸŽ€

4. Namespace Considerations πŸ¦‹

ucode, the identifier expressed by ucode-number, is a unique identification number for a tangible object or a place πŸ“ ucode can also be assigned to "content" or "information" that doesn't exist in the real world, or to a "concept" that's even more abstract 🧚

Like before, ucode was devised for objects and places where existing standards don't fit the app needs or the scope of the apps, or where the allocation policy of existing standards is too limited for SMEs, small-scale research labs at academic institutions, or individual users πŸ’–

ucode is only an identification number. Its value (or its sub-bitfields) has no pre-assigned meaning 🫢 Any relevant info about the object or place a ucode is assigned to is stored in a data server, which you can reach through a "resolution process" [UCSURP] 🌐 That resolution process usually happens over the Internet ✨

A ucode can be assigned to an object to be identified, no matter what kind of application it's for πŸ’… ucode is expected to be stored in all kinds of tags (2D optical codes, RFID, and so on), and it gives everyone a framework to get unique numbers for identification πŸ”₯

ucode was designed to provide the services outlined in ITU-T Recommendation F.771 [ITU-T-F771] and to operate within the framework of ITU-T Recommendation H.621 [ITU-T-H621] πŸ‘‘

The ucode architecture is general enough to cover many applications for users 🌸

5. Community Considerations 🌈

This namespace lets ucode be stored in tags that are designed to store URNs πŸŽ€ ucode-related info can also be described as metadata using the URN namespace πŸ’œ So the namespace makes it easier to exchange descriptions of objects and places among multiple organizations 🫢

Lots of small-scale providers are expected to offer ucode tags to small users, and large-scale providers are expected to hand out millions of tags to users πŸ¦‹

The resolution servers and apps will be available to general users with appropriate access control over the Internet 🌐 The published spec for resolver and access services for 'ucode' allows client software to be built for many types of computers, including small mobile terminals and ever-popular smartphones πŸ“±βœ¨

6. Security Considerations 🚨

There are no additional security considerations other than those normally associated with the use and resolution of URNs in general πŸ”’

7. References πŸ“š

7.1. Normative References

[UCODE]      T-Engine Forum, Ubiquitous ID Center, "ucode: Ubiquitous
             Code", UID-00010,
             <http://www.uidcenter.org/spec#UID-00010>.

[UCDMIP]     T-Engine Forum, Ubiquitous ID Center, "ucode Management
             Implementing Procedures", UID-00034,
             <http://www.uidcenter.org/spec#UID-00034>.

[UCSURP]     T-Engine Forum, Ubiquitous ID Center, "Simplified ucode
             Resolution Protocol", UID-00005,
             <http://www.uidcenter.org/spec#UID-00005>.

[UIDTAG]     T-Engine Forum, Ubiquitous ID Center, "ucode Tag
             Architecture", UID-00017,
             <http://www.uidcenter.org/spec#UID-00017>.

[RFC2141]    Moats, R., "URN Syntax", RFC 2141, May 1997.

[RFC3986]    Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform
             Resource Identifier (URI): Generic Syntax", STD 66, RFC
             3986, January 2005.

[RFC5234]    Crocker, D., Ed., and P. Overell, "Augmented BNF for
             Syntax Specifications: ABNF", STD 68, RFC 5234, January
             2008.

[ITU-T-F771] ITU-T, "Service description and requirements for
             multimedia information access triggered by tag-based
             identification", ITU-T Recommendation F.771,
             <http://www.itu.int/rec/T-REC-F.771-200808-I>.

[ITU-T-H621] ITU-T, "Architecture of a system for multimedia
             information access triggered by tag-based
             identification", ITU-T Recommendation H.621,
             <http://www.itu.int/rec/T-REC-H.621-200808-I>.

7.2. Informative References

[W3CXML]     W3C, "Extensible Markup Language (XML) 1.1",
             <http://www.w3.org/TR/xml11/>.

[UIDC]       Ubiquitous ID Center, <http://www.uidcenter.org/>.

[TEF]        T-Engine Forum, <http://www.t-engine.org/>.

8. Acknowledgments ✨

okay bestie, big thank-you energy 🫢 The author wants to give a huge shoutout to Peter Saint-Andre, the Document Shepherd/Responsible Area Director for this document, for dropping some seriously valuable suggestions πŸ’… The author also sends love to the following people, who helped make this document even better:

  • Adrian Farrel 🌸
  • David Harrington 🌸
  • Pete Resnick 🌸
  • Stephen Farrel 🌸
  • Ted Hardie 🌸
  • Wesley Eddy 🌸

The author also wants to thank the members of T-Engine Forum, who built prototype and real-world applications using ucode and gave really useful feedback πŸ”₯ You can check out their application examples on the Ubiquitous ID Center web site [UIDC] and on www.youtube.com (search for "uidcenter" without the quotes) πŸŽ€


9. Contributors πŸ‘‘

Here are the people who contributed, no cap πŸ’–

  • Ken Sakamura πŸ’œ
  • Noboru Koshizuka πŸ’œ
  • Katsunori Shindo πŸ’œ
  • Tomonori Usaka πŸ’œ
  • Past and current members of the uID architecture group at the University of Tokyo and the YRP Ubiquitous Networking Laboratory (YRP UNL) πŸ¦‹

Author's Address πŸ“

Chiaki Ishikawa
YRP Ubiquitous Networking Laboratory
2-20-1, Nishi-Gotanda
Shinagawa, Tokyo, 141-0031
Japan

Tel: +81-3-5437-2270
FAX: +81-3-5437-2271
EMail: chiaki.ishikawa@ubin.jp
πŸ“¦ where this page comes from