LID Services
From LID Wiki
{proposed}
Rationale
LID 2.0 is a layered system consisting of MinimumLID and a number of optional LID 2.0 Profiles. This architecture allows LID(tm) implementors to choose the the level of LID(tm) functionality that they want to support for a given LID(tm) URL. For example, a LID(tm) URL that is intended to be used only for entirely anonymous, minimal-disclosure interaction only needs to support MinimumLID. The LID(tm) URL for a complex individual's entire on-line presence will support a broad range of profiles, some of them standard and some others proprietary for their own purposes.
Each of the LID 2.0 Profiles has a computable name that enables LID Clients to determine which LID 2.0 Profiles a given LID Server supports, and in which version. This allows LID Clients to adjust their behavior accordingly.
Note also LID's relationship to YADIS, the identity interoperability system we initiated with the OpenID folks. From YADIS, LID will inherit a number of interesting features, such as XML-based capability discovery and the ability to resolve LID operations against a different URL than the user specifies (what OpenID calls "delegation").
Minimum LID(tm)
See MinimumLID.
Minimum LID(tm) is the minimal functionality that MUST be supported by any URL to be a LID(tm) URL.
Requires: none
Computable name: http://lid.netmesh.org/ (note: this is the name of the protocol, not of a profile)
YADIS URI: http://lid.netmesh.org/minimum-lid/VERSION (where VERSION is the current LID version, such as 2.0)
LID(tm) SSO Profile
See LID SSO Profile.
Defines the protocol and parameters by which a LID Client may authenticate itself for a LID Server or a LID Relying Party.
Requires: MinimumLID.
Computable name: org.netmesh.lid.sso
YADIS URI: http://lid.netmesh.org/sso/VERSION (where VERSION is the version of this profile, such as 2.0)
LID Relying Party Profile
See LID Relying Party Profile.
Defines the protocol and parameters by which any URL (LID(tm) URL or not) can accept authenticated LID(tm) requests.
Requires: none (not even MinimumLID: a LID(tm) relying party need not have a LID(tm) URL itself, although that often may be advantageous.)
Computable name: org.netmesh.lid.relying-party
YADIS URI: http://lid.netmesh.org/relying-party/VERSION (where VERSION is the version of this profile, such as 2.0)
LID(tm) for Traversals and Selections
See LID 2.0 Traversal Profile.
Adds the ability to specify xpath=/... traversal and selection operations. Does not define a minimum set of vocabularies.
Requires: MinimumLID
Computable name: org.netmesh.lid.traversal
YADIS URI: http://lid.netmesh.org/traversal/VERSION (where VERSION is the version of this profile, such as 2.0)
LID(tm) Format Negotiation
See LID 2.0 Format Negotiation Profile.
Allows a LID Client to convey, to the LID Server, which formats it is willing to accept. For example, format=mime:text/xml conveys that the LID Client will accept, from the LID Server, responses that are in XML format. Does not define a minimum set of formats.
Requires: MinimumLID, but often most advantageous in connection with LID 2.0 Traversal Profile.
Computable name: org.netmesh.lid.format-negotiation
YADIS URI: http://lid.netmesh.org/format-negotiation/VERSION (where VERSION is the version of this profile, such as 2.0)
LID(tm) Profile for Contact Information Management
Defines a vocabulary, to be used with LID 2.0 Traversal Profile, that can express common contact information, such as Name, Address, Phone Number etc.
Requires: LID 2.0 Traversal Profile
Computable name: org.netmesh.lid.traversal.vcard
YADIS URI: http://lid.netmesh.org/traversal/vcard/VERSION (where VERSION is the version of this profile, such as 2.0)
LID(tm) Profile for Social Networking
See LID 2.0 FOAF Profile.
Defines a vocabulary, to be used with LID 2.0 Traversal Profile, that can express the relationship between the owner of the LID(tm) URL and other personas. Also defines a canonical way of identitying Personas in FOAF files using LID(tm).
Requires: LID 2.0 Traversal Profile
Computable name: org.netmesh.lid.traversal.foaf
YADIS URI: http://lid.netmesh.org/traversal/foaf/VERSION (where VERSION is the version of this profile, such as 2.0)
LID(tm) Mechanics Profile
See LID 2.0 Mechanics Profile.
Defines a vocabulary, to be used with LID 2.0 Traversal Profile, that allows LID Objects to exchange information such as "how long should I keep this public key", or "who accessed this LID".
Requires: LID 2.0 Traversal Profile
Computable name: org.netmesh.lid.traversal.mechanics
YADIS URI: http://lid.netmesh.org/traversal/mechanics/VERSION (where VERSION is the version of this profile, such as 2.0)
LID(tm) POST Sender Profile
See LID 2.0 POST Sender Profile.
Note: the previously listed LID 2.0 POST Profile has been split into LID 2.0 POST Sender Profile and LID 2.0 POST Receiver Profile and is thus obsolete.
Defines the sender part of a protocol by which a LID Object (identified by its own LID(tm) URL, and supporting the LID 2.0 POST Sender Profile) may send information (such as a message) to a URL which supports the LID 2.0 POST Receiver Profile (but which may or may not be a LID URL, or a LID Relying Party). The sent information is authenticated, and may be encrypted. Does not define the structure of the information.
May be used in conjunction with LID 2.0 Traversal Profile to specify where the sending LID Object recommends the receiver store the information, once received.
Requires: MinimumLID
Computable name: org.netmesh.lid.post.sender
YADIS URI: http://lid.netmesh.org/post/sender/VERSION (where VERSION is the version of this profile, such as 2.0)
LID(tm) POST Receiver Profile
See LID 2.0 POST Receiver Profile.
Note: the previously listed LID 2.0 POST Profile has been split into LID 2.0 POST Sender Profile and LID 2.0 POST Receiver Profile and is thus obsolete.
Defines the sender part of a protocol by which a LID Object (identified by its own LID(tm) URL, and supporting the LID 2.0 POST Sender Profile) may send information (such as a message) to a URL which supports the LID 2.0 POST Receiver Profile (but which may or may not be a LID URL, or a LID Relying Party). The sent information is authenticated, and may be encrypted. Does not define the structure of the information.
May be used in conjunction with LID 2.0 Traversal Profile to specify where the sending LID Object recommends the receiver store the information, once received.
Requires: none, but LID Relying Party recommended
Computable name: org.netmesh.lid.post.receiver
YADIS URI: http://lid.netmesh.org/post/receiver/VERSION (where VERSION is the version of this profile, such as 2.0)
LID(tm) 3rd-Party Confirmation Profile
See LID 2.0 3rd-Party Confirmation Profile.
Defines a protocol by which LID Client Bob may request information from LID Server Alice that is confirmed by LID Server Charlie.
Typically used with LID 2.0 Traversal Profile (otherwise the obtained information tends to be trivial).
Requires: MinimumLID
Computable name: org.netmesh.lid.confirmation
YADIS URI: http://lid.netmesh.org/lid/confirmation/VERSION (where VERSION is the version of this profile, such as 2.0)
LID(tm) 3rd-Party Delegation Profile
See LID 2.0 3rd-Party Delegation Profile.
Defines a protocol by which LID Client Alice enables LID Client Bob to send a successful request to LID Server Charlie, which LID Client Alice is permitted to request from LID Server, but LID Client Bob is not permitted without the delegation. Through this protocol, Bob effectively inherits Alice's rights to perform a certain request from Bob.
Requires: MinimumLID
Computable name: org.netmesh.lid.delegation
YADIS URI: http://lid.netmesh.org/delegation/VERSION (where VERSION is the version of this profile, such as 2.0)
LID(tm) Pub-Sub Profile
See LID 2.0 PubSub.
{nutso} Allow a LID Client to register for callbacks from LID Server, to be received when certain information held by the LID Server changes.
Requires: LID 2.0 Traversal Profile, LID 2.0 POST Profile.
Computable name: org.netmesh.lid.pubsub
YADIS URI: http://lid.netmesh.org/pubsub/VERSION (where VERSION is the version of this profile, such as 2.0)
![[LID enabled]](http://lid.netmesh.org/images/lid-relying-party-anonymous.gif)

