Changes between Initial Version and Version 1 of UUID


Ignore:
Timestamp:
05/04/10 22:39:14 (15 years ago)
Author:
Dominic König
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • UUID

    v1 v1  
     1[[TOC]]
     2= UUID conventions =
     3
     4== General ==
     5
     6UUIDs (Universal Unique IDentifiers) in Eden follow the Python uuid implementation,
     7which is specified in RFC4122:
     8
     9    http://www.faqs.org/rfcs/rfc4122.html
     10
     11However, other systems do not necessarily follow this convention (especially data sets
     12outside of IT systems), but we still must be able to identify such data resources.
     13
     14Therefore, in every shared resource (XML+JSON), the UUID shall be prefixed by the domain
     15name of the originating instance (authoritative domain) plus a slash ("/"), e.g.
     16
     17{{{
     18    haiti.sahanafoundation.org/12345678-1234-5678-1234-567812345678
     19}}}
     20
     21Generally, a "domain name" here can be any arbitraty XML name except it must not contain
     22any slashes. However, the domain name must be unique, of course - and therefore it is
     23recommended to use the internet domain name of the current instance. This in turn requires
     24that all applications which share that domain name and take part in the data exchange adhere
     25to the same UUID convention (UUID's have to be unique at least within the same domain).
     26
     27== Implementation Guideline ==
     28
     29At '''import''', when the system receives a resource with a prefixed UUID and the prefix matches
     30the domain of the current instance, then the prefix gets removed to identify the resource
     31in the database. If the prefix differs from our domain, then the prefix is retained in the
     32database record.
     33
     34At '''export''', all unprefixed UUIDs from the database get prefixed by the domain name of the
     35current instance. In those UUIDs which already have a prefix (because they have been imported
     36from another domain), the prefix is retained.
     37