Network Working Group J.M. Snell
Internet-Draft August 29, 2013
Intended status: Informational
Expires: March 02, 2014

Additional Link Relations and the urn:social Namespace
draft-snell-more-link-relations-00

Abstract

This specification defines a number of additional Link Relation Types that can used for a variety of purposes..

Status of This Memo

This Internet-Draft is submitted to IETF in full conformance with the provisions of BCP 78 and BCP 79.

Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at http://datatracker.ietf.org/drafts/current/.

Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."

This Internet-Draft will expire on March 02, 2014.

Copyright Notice

Copyright (c) 2013 IETF Trust and the persons identified as the document authors. All rights reserved.

This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document.


Table of Contents

1. Introduction

This specification defines and adds the following additional link relation types to the IANA Registry of Link Relations established by [RFC5988]: to, bto, cc, bcc, from, bfrom, source, generator, provider, location, alias and mentionedBy. Further, this specification proposes a new 'social' URN namespace.

Note that this document is a work-in-progress draft specification that does not yet represent a "standard". It is the intention of this specification to propose a few new ideas and openly solicit feedback on their definition and use. While this document might eventually evolve into an RFC the ideas described herein have not yet been broadly implemented and have definitions that may evolve through successive iterations of this draft.

2. The 'social' URN Namespace

This specification defines the 'social' URN namespace having the following structure:

urn:social:{NSS}

The Namespace Specific String (NSS) MUST be one of:

Within any given social networking system, there is an available population of entities. Each NSS term represent specific subsets of this population and are defined in terms of these subsets relative to a fixed context. For example, if the fixed content is a person, the "urn:social:direct" URN identifies the subset of the total population that is directly connected to the context person within the social graph, while the "urn:social:extended" URN identifies the subset that is directly or indirectly connected to the context person.

The 'social' URN namespace is defined to be intentionally ambiguous and contextually dependent. The specific interpretation of each NSS depends entirely on how and where the NSS is being used.

2.1. urn:social:everyone

The "urn:social:everyone" URN identifies the subset of the total population that is visible to the context.

2.2. urn:social:direct

The "urn:social:direct" URN identifies the subset of the total population that is both visible to and directly connection to the context.

2.3. urn:social:extended

The "urn:social:extended" URN identifies the subset of the total population that is visible to and connected either directly or indirectly to the context.

2.4. urn:social:peer

The "urn:social:peer" URN identifies the subset of the total population that is both visible to the context and considered to be a "peer".

Peer relationships exist only within social networking populations in which there exist hierarchical divisions and relationships between members of the population. An example of such a network would be a company or similarly structured organization. Peers may or may not be directly or indirectly connected to the target resource but are considered, instead, to share the same hierarchical position within the social network.

2.5. urn:social:subordinate

The "urn:social:subordinate" URN identifies the subset of the total population that is both visible to the context and considered to be "subordinate" to the context.

Subordinate relationships exist only within social networking populations in which there exist hierarchical divisions and relationships between members of the population. An example of such a network would be a company or similarly structured organization. Subordinates may or may not be directly or indirectly connected to the target resource but are considered, instead, to share a lower hierarchical position within the social network.

2.6. urn:social:superior

The "urn:social:superior" URN identifies the subset of the total population that is both visible to the context and considered to be "superior" to the context.

Superior relationships exist only within social networking populations in which there exist hierarchical divisions and relationships between members of the population. An example of such a network would be a company or similarly structured organization. Superiors may or may not be directly or indirectly connected to the target resource but are considered, instead, to share a higher hierarchical position within the social network.

2.7. urn:social:common

The "urn:social:common" URN identifies the subset of the total population that is both visible to the context and is determined to share the same common interests as the context.

Determination of "shared interest" is dependent entirely on the application.

2.8. urn:social:interested

The "urn:social:interested" URN identifies the subset of the total population that is both visible to the context and has an express interest in the context. Examples of members of the "interested" subset are those who have elected to "follow" the activity of the context resource.

2.9. urn:social:self

The "urn:social:self" URN identifies the context resource itself as a member of the total population.

3. IANA Considerations

The following Link Relations are added to the IANA Registry of Link Relations.

Name Description
to Refers to a resource that is considered to be part of the public primary audience of the link's context.
bto Refers to a resource that is considered to be part of the private primary audience of the link's context.
cc Refers to a resource that is considered to be part of the public secondary audience of the link's context.
bcc Refers to a resource that is considered to be part of the private secondary audience of the link's context.
from Refers to a resource that is publicly considered to be the originator of the link's context.
bfrom Refers to a resource that is privately considered to be the orignator of the link's context.
source Refers to the original source of information contained by the context resource.
provider Refers to the resource that provided the context resource. Typically, this would be used to identify the entity publishing the resource.
generator Refers to the resource that generated the context resource. Typically, this would be used to identify the software application that created the context resource.
mentionedBy Refers to a resource that mentions the context resource in some fashion. This, for example, would be used when an article mentions another article, or a social status update mentions a particular user, etc.
location References a URI/IRI that represents a physical or logical location with which the context resource is associated.

4. Security Considerations

There are no additional security concerns introduced by this document.

5. Informative References

[RFC5988] Nottingham, M., "Web Linking", RFC 5988, October 2010.

Appendix A. Examples

Using targeting link relations and the urn:social namespace:

    POST /alerts HTTP/1.1
    Host: example.org
    Content-Type: text/plain
    Authorization: Basic {Base64 Credentials}
    Link: <urn:social:everyone>; rel="to"
    Link: <urn:social:extended>; rel="cc"
    Link: <urn:social:self>; rel="bfrom"
  
    Test message
      

Using publication link relations:

    <html>
      <head>
        ...
        <link 
          rel="source" 
          href="http://example.net/post/1" />
        <link 
          rel="provider" 
          href="http://example.org" />
        <link 
          rel="generator" 
          href="http://example.com/software/app/1.1" />
        ...
      </head>
      <body>...</body>
    </html>
  

      

Using the alias and location relations:

    Link: <geo:37.786971,-122.399677>; rel="location"
      

Using the mentionedBy relation:

    LINK /articles/1 HTTP/1.1
    Host: example.org
    Link: <articles/2>; rel="mentionedBy"
      

Author's Address

James M Snell EMail: jasnell@gmail.com