- Documentation.Repository - The term "Repository" means different things in different contexts. This page tries to explore some of those meanings...
|
Example 1: A user's repository
In this diagram Pat and Mary and Cliff each have their own repository. Pat's repository is on Pat's computer, and holds Pat's items.
Example 2: True sharing
In this diagram Pat uses the Documentation.Chandler
True Trash.SharingGlossary? feature to subscribes to items from Mary's repository and Cliff's repository. Now Pat's repository has a main section that has Pat's items, plus special sub-sections that hold the subscription proxy items that correspond to items in Mary's repository and Cliff's repository.
Example 3: A repository with more than one user
In this diagram the Chemistry Department has a single computer with a single copy of Documentation.Chandler installed, and Pat and Mary each have their own user repositories stored in the Chemistry Department repository.
Example 4: Documentation.Replication
In this diagram there's a single user, Pat, who has a single repository, Pat's repository. Pat's repository is replicated on Pat's home computer and Pat's work computer.
Concepts that need names
Additional confusing things to sort out
- If Chao and Mitch and Mimi all share things with each other, how many "Sharing Circles" are there?
- If Mimi shares an item with Chao, so that Chao has a local copy of the item in his repository, is that replication? Or does replication only happen between the different simple repositories in Chao's virtual repository?
Email from Andi
From: Andi Vajda
Date: 3/29/2004
Subject: Re: proposed terminology -- "Persona+" becomes "SharingAddress"
Principal is fine but it's only part of what Brian's talking about I think.
Principal@repository.somewhere is that SharingAddress, isn't it ?
For example, you may have several personas, or one persona, and each may
be used with one or several repositories, therefore, the SharingAddress is a
N-M mapping between personas and repositories.
For example: say lisa@home, lisa@work, lisa_the_stampcollector@home where
lisa_the_stampcollector is another persona you use in a
different context. You can have as many cyber-personalities as
you want, right ? They can all use the same repository or not or
both, right ?
So, to sum up, SharingAddress is a persona@location, where location is a
Chandler installation coupled with a repository.
As for principal, I definitely plan to use the Principal terminology at the
low-level in exactly the sense you mentioned, ie "something you can give
privileges to", no need to overload some well understood terminology...
Andi..
Email from Lisa
From: Lisa Dusseault
Date: 3/29/2004
Subject: Re: proposed terminology -- "Persona+" becomes "SharingAddress"
I think the definition of "Principal" actually includes the notion that it may
be a remote principal or a local principal. Or it may be a combination -- a
locally defined group containing both locally defined principals and remotely
defined principals. These sentences read properly to me, so I believe it's part
of the way "principal" is used commonly.
Isn't it possible that we'll want to grant read permissions to one "principal"
but send the sharing information to more than one destination? Is that destination
the "sharing address"? E.g. the principal which is "the build manager" might have
Morgen's sharing address one day and Markie's sharing address the next. I think
that's a slightly different take on how principal and sharing address might not
be the same thing. I'll still assert that principal is what you grant permissions
to at an API level and maybe all of us working at that level already agree on that.
Lisa