Mirror of the Rel4tion website/wiki source, view at <http://rel4tion.org>

[[ 🗃 ^yEzqv rel4tion-wiki ]] :: [📥 Inbox] [📤 Outbox] [🐤 Followers] [🤝 Collaborators] [🛠 Commits]

Clone

HTTPS: git clone https://vervis.peers.community/repos/yEzqv

SSH: git clone USERNAME@vervis.peers.community:yEzqv

Branches

Tags

master :: projects / smaoin / design / realization /

uid.mdwn

Purpose

Talk about practical use of uids.

Content

A resource is essensially a uid. It’s usually a character string identifying the resource uniquely in the database. However, in order to allow data to be shared and queried between databases, a uid must be unique globally. UUIDs are one way to generate such uids.

In order to work together, two databases thus must use the same uid to refer to the same thing. But how do they discover these shared uids and ensure consistency?

There must be many possible models for sharing uids and the resources’ information. These three are probably common in network-based systems:

As many people may work on many parts of the universal dictionary, it’s possible to have overlapping definitions. For example, two ontologies may define a different class to represent the same set. Then two entities refer to the same thing. On the long term a good solution is to unify them and use a single uid, but on the short term it may not be practical, especially if many databases already use both entities. A solution for the short term, which can be applied immediately, is to define an equivalence relation between resources: If resources a and b are equivalent, then they refer to the same thing and everything true for one is true for the other.

In the expression model such a relation means a property, say isSynonymOf or isEquivalentTo. If two resources are related by this property, they can be treated as the same thing. Whenever a query referring to one of them is executed, the operation must also take into account the statements involving the other (or others, in case there are more than 2 resources which are all equivalent).

[See repo JSON]