Subject: Re: [CDNi] New Version Notification for draft-ietf-cdni-control-triggers-01.txt

From: Rob Murray <[email-masked]>
Date: Mon, 21 Oct 2013 16:53:32 +0000

Hi all,

Some minor updates to the CI/T draft ...
  - updated references and interface names
  - MIME type names changed to match the metadata draft

As far as I know, that leaves the CI/T draft about done:
  - there's one to-do left in it, to say we need to align the
    HTTP/HTTPS-ness with other interfaces when that's decided.
  - We'd like to make a change to the structure of the self
    describing links used in this interface, and potentially
    metadata and others. Described below...

The current relationship format is based on "atom:link". An example
relationship given in the current triggers draft is the JSON dictionary:

  { "href": "http://triggers.cdni.example.com/trigger/12345",
    "rel": "Trigger",
    "type": "application/cdni.ci.TriggerStatus+json"
  }

The location, purpose of the link (the relationship), and the type of the
document referred to are all given.

Our new thinking is to represent the same information in the format
described at:
  http://stateless.co/hal_specification.html
  http://tools.ietf.org/html/draft-kelly-json-hal-06

So, in the proposed structure:
  - the containing dictionary has the well-known name "_links"
  - dictionary keys are the relationship type (which matches better
    the way it is likely to be used in an implementation)
  - lists of links sharing the same relationship type are allowed
  - a "self" link is included (where possible, it's a "SHOULD" in
    "draft-kelly-json-hal")

The example relationship above (with an extra TriggerStatus record
in the collection) would look like:

  "_links": {
    "self": { "href": "/all-triggers" },
    "Trigger": [
      { "href": "http://triggers.cdni.example.com/trigger/12345",
        "type": "application/cdni.ci.TriggerStatus+json" },
      { "href": "http://triggers.cdni.example.com/trigger/12346",
        "type": "application/cdni.ci.TriggerStatus+json" } ]
  }

The "type" field is optional in draft-kelly. It may not be needed here,
but I've left it in for comparison with the previous example.

Any thoughts, or objections to this change?

Many thanks,
Rob.

-----Original Message-----
From: "[email-masked]" <[email-masked]>
Date: Monday, 21 October 2013 10:09
To: Rob Murray <[email-masked]>, Ben Niven-Jenkins <[email-masked]>
Subject: New Version Notification for
draft-ietf-cdni-control-triggers-01.txt

>
>A new version of I-D, draft-ietf-cdni-control-triggers-01.txt
>has been successfully submitted by Rob Murray and posted to the
>IETF repository.
>
>Filename:	 draft-ietf-cdni-control-triggers
>Revision:	 01
>Title:		 CDNI Control Interface / Triggers
>Creation date:	 2013-10-21
>Group:		 cdni
>Number of pages: 35
>URL:             
>http://www.ietf.org/internet-drafts/draft-ietf-cdni-control-triggers-01.tx
>t
>Status:          
>http://datatracker.ietf.org/doc/draft-ietf-cdni-control-triggers
>Htmlized:        
>http://tools.ietf.org/html/draft-ietf-cdni-control-triggers-01
>Diff:            
>http://www.ietf.org/rfcdiff?url2=draft-ietf-cdni-control-triggers-01
>
>Abstract:
>   This document describes the part of the CDN Interconnect Control
>   Interface that allows a CDN to trigger activity in an interconnected
>   CDN that is configured to deliver content on its behalf.  The
>   upstream CDN can use this mechanism to request that the downstream
>   CDN pre-positions metadata or content, or that it re-validate or
>   purge metadata or content.  The upstream CDN can monitor the status
>   of activity that it has triggered in the downstream CDN.
>
>
>                  
>        
>
>
>Please note that it may take a couple of minutes from the time of
>submission
>until the htmlized version and diff are available at tools.ietf.org.
>
>The IETF Secretariat
>