A Syntax for Describing Media Feature Sets
RFC 2533

Document Type RFC - Proposed Standard (March 1999; No errata)
Updated by RFC 2938, RFC 2738
Last updated 2013-03-02
Stream IETF
Formats plain text pdf html bibtex
Stream WG state (None)
Document shepherd No shepherd assigned
IESG IESG state RFC 2533 (Proposed Standard)
Consensus Boilerplate Unknown
Telechat date
Responsible AD (None)
Send notices to (None)
Network Working Group                                         G. Klyne
Request for Comments: 2533                    Content Technologies/5GM
Category: Standards Track                                   March 1999

               A Syntax for Describing Media Feature Sets

Status of this Memo

   This document specifies an Internet standards track protocol for the
   Internet community, and requests discussion and suggestions for
   improvements.  Please refer to the current edition of the "Internet
   Official Protocol Standards" (STD 1) for the standardization state
   and status of this protocol.  Distribution of this memo is unlimited.

Copyright Notice

   Copyright (C) The Internet Society (1999).  All Rights Reserved.

Abstract

   A number of Internet application protocols have a need to provide
   content negotiation for the resources with which they interact [1].
   A framework for such negotiation is described in [2], part of which
   is a way to describe the range of media features which can be handled
   by the sender, recipient or document transmission format of a
   message.  A format for a vocabulary of individual media features and
   procedures for feature registration are presented in [3].

   This document introduces and describes a syntax that can be used to
   define feature sets which are formed from combinations and relations
   involving individual media features.  Such feature sets are used to
   describe the media feature handling capabilities of message senders,
   recipients and file formats.

   An algorithm for feature set matching is also described here.

Table of Contents

   1. Introduction.............................................3
     1.1 Structure of this document ...........................3
     1.2 Document terminology and conventions .................4
     1.3 Discussion of this document ..........................4
   2. Content feature terminology and definitions..............4
   3. Media feature combinations and capabilities..............5
     3.1 Media features .......................................5
     3.2 Media feature collections and sets ...................5
     3.3 Media feature set descriptions .......................6
     3.4 Media feature combination scenario ...................7

Klyne                       Standards Track                     [Page 1]
RFC 2533       A Syntax for Describing Media Feature Sets     March 1999

        3.4.1 Data resource options............................7
        3.4.2 Recipient capabilities...........................7
        3.4.3 Combined options.................................7
     3.5 Feature set predicates ...............................8
        3.5.1 Comparison with directory search filters.........8
     3.6 Describing preferences ...............................9
     3.7 Combining preferences ...............................10
   4. Feature set representation..............................11
     4.1 Textual representation of predicates ................11
     4.2 Interpretation of feature predicate syntax ..........12
        4.2.1 Filter syntax...................................12
        4.2.2 Feature comparison..............................13
        4.2.3 Feature tags....................................13
        4.2.4 Feature values..................................14
          4.2.4.1 Boolean values                              14
          4.2.4.2 Numeric values                              14
          4.2.4.3 Token values                                15
          4.2.4.4 String values                               15
        4.2.5 Notational conveniences.........................15
     4.3 Feature set definition example ......................16
   5. Matching feature sets...................................16
     5.1 Feature set matching strategy .......................18
     5.2 Formulating the goal predicate ......................19
     5.3 Replace set expressions .............................19
     5.4 Move logical negations inwards ......................20
     5.5 Replace comparisons and logical negations ...........20
     5.6 Conversion to canonical form ........................21
     5.7 Grouping of feature predicates ......................22
     5.8 Merge single-feature constraints ....................22
        5.8.1 Rules for simplifying ordered values............23
        5.8.2 Rules for simplifying unordered values..........23
   6. Other features and issues...............................24
     6.1 Named and auxiliary predicates ......................24
        6.1.1 Defining a named predicate......................24
        6.1.2 Invoking named predicates.......................25
        6.1.3 Auxiliary predicates in a filter................25
        6.1.4 Feature matching with named predicates..........25
        6.1.5 Example.........................................26
     6.2 Unit designations ...................................26
     6.3 Unknown feature value data types ....................27
Show full document text