CoRE Application Descriptions
draft-hartke-core-apps-07

Document Type Active Internet-Draft (individual)
Last updated 2017-02-12
Stream (None)
Intended RFC status (None)
Formats plain text pdf html bibtex
Stream Stream state (No stream defined)
Consensus Boilerplate Unknown
RFC Editor Note (None)
IESG IESG state I-D Exists
Telechat date
Responsible AD (None)
Send notices to (None)
Thing-to-Thing Research Group                                  K. Hartke
Internet-Draft                                   Universitaet Bremen TZI
Intended status: Informational                         February 12, 2017
Expires: August 16, 2017

                     CoRE Application Descriptions
                       draft-hartke-core-apps-07

Abstract

   The interfaces of RESTful, hypermedia-driven Web applications consist
   of reusable components such as Internet media types and link relation
   types.  This document proposes CoRE Application Descriptions, a
   convention for application designers to describe the programmable
   interfaces of their applications in a structured way so that other
   parties can easily develop interoperable clients and servers or reuse
   the components in their own applications.

Note to Readers

   This Internet-Draft should be discussed on the Thing-to-Thing
   Research Group (T2TRG) mailing list <t2trg@irtf.org>
   <https://www.irtf.org/mailman/listinfo/t2trg>.

Status of This Memo

   This Internet-Draft is submitted 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 August 16, 2017.

Copyright Notice

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

Hartke                   Expires August 16, 2017                [Page 1]
Internet-Draft        CoRE Application Descriptions        February 2017

   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.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Application Descriptions  . . . . . . . . . . . . . . . . . .   4
     2.1.  URI Schemes . . . . . . . . . . . . . . . . . . . . . . .   4
     2.2.  Internet Media Types  . . . . . . . . . . . . . . . . . .   5
       2.2.1.  Representation Formats  . . . . . . . . . . . . . . .   6
       2.2.2.  Links . . . . . . . . . . . . . . . . . . . . . . . .   7
       2.2.3.  Forms . . . . . . . . . . . . . . . . . . . . . . . .   8
     2.3.  Link Relation Types . . . . . . . . . . . . . . . . . . .   8
       2.3.1.  Template Variable Names . . . . . . . . . . . . . . .   9
     2.4.  Form Relation Types . . . . . . . . . . . . . . . . . . .   9
       2.4.1.  Form Field Names  . . . . . . . . . . . . . . . . . .  10
     2.5.  Well-Known Locations  . . . . . . . . . . . . . . . . . .  10
   3.  Application Description Template  . . . . . . . . . . . . . .  11
   4.  URI Design Considerations . . . . . . . . . . . . . . . . . .  13
   5.  Security Considerations . . . . . . . . . . . . . . . . . . .  14
   6.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .  14
     6.1.  Content-Format Registry . . . . . . . . . . . . . . . . .  14
     6.2.  Link Relation Type Registry . . . . . . . . . . . . . . .  14
     6.3.  Form Relation Type Registry . . . . . . . . . . . . . . .  15
       6.3.1.  Registering New Form Relation Types . . . . . . . . .  15
       6.3.2.  Initial Registry Contents . . . . . . . . . . . . . .  15
   7.  References  . . . . . . . . . . . . . . . . . . . . . . . . .  16
     7.1.  Normative References  . . . . . . . . . . . . . . . . . .  16
     7.2.  Informative References  . . . . . . . . . . . . . . . . .  17
   Acknowledgements  . . . . . . . . . . . . . . . . . . . . . . . .  18
   Author's Address  . . . . . . . . . . . . . . . . . . . . . . . .  19

1.  Introduction

   Representational State Transfer (REST) [16] is an architectural style
   for distributed hypermedia systems.  Over the years, REST has gained
   popularity not only as an approach for large-scale information
   dissemination, but also as the basic principle for designing and
Show full document text