<?xml version="1.0"?> version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd">
<?rfc toc="yes" ?>
<?rfc compact="yes" ?>
<?rfc subcompact="no"?>
<?rfc sortrefs="yes" ?>
<?rfc symrefs="yes" ?>
<?rfc rfcedstyle="yes" ?> "rfc2629-xhtml.ent">
<rfc xmlns:xi="http://www.w3.org/2001/XInclude"
     docName="draft-ietf-clue-protocol-19" number="8847" submissionType="IETF"
consensus="yes" consensus="true" category="exp" ipr="trust200902"> ipr="trust200902" obsoletes="" updates="" xml:lang="en" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 2.38.1 -->
  <front>
    <title abbrev="draft-ietf-clue-protocol-19"> abbrev="CLUE">
Protocol for Controlling Multiple Streams for Telepresence (CLUE)
</title>
    <seriesInfo name="RFC" value="8847"/>
    <author initials="R." surname="Presta" fullname="Roberta Presta">
      <organization>University of Napoli</organization>
      <address>
        <postal>
          <street>Via Claudio 21</street>
          <code>80125</code>
          <city>Napoli</city>
          <country>Italy</country>
        </postal>
        <email>roberta.presta@unina.it</email>
      </address>
    </author>
    <author initials="S." surname="P. Romano" initials="S P." surname="Romano" fullname="Simon Pietro Romano">
      <organization>University of Napoli</organization>
      <address>
        <postal>
          <street>Via Claudio 21</street>
          <code>80125</code>
          <city>Napoli</city>
          <country>Italy</country>
        </postal>
        <email>spromano@unina.it</email>
      </address>
    </author>
    <date month="July" year="2019"/>
<area>ART</area>
<workgroup>CLUE Working Group</workgroup>

<!-- [rfced] Please insert any keywords (beyond those that appear in
the title) for use on http://www.rfc-editor.org/rfcsearch.html. --> month="June" year="2020"/>

<keyword>CLUE</keyword>
    <keyword>Telepresence</keyword>
    <keyword>Protocol</keyword>
    <keyword>Framework</keyword>
    <abstract>
      <t>
<!--
The CLUE Controlling Multiple Streams for Telepresence (CLUE) protocol is an
application protocol conceived for the description and negotiation of a CLUE
telepresence session.  The design of the CLUE protocol takes into account the
requirements and the framework defined, respectively, in
<xref target="I-D.ietf-clue-framework"/> defined within the IETF CLUE Working Group.  A
companion document, RFC 8848, delves into CLUE signaling details as well as
the SIP / Session Description Protocol (SDP) session establishment phase.

<!-- [rfced] Abstract and
<xref target="RFC7262"/>.
The subsequent:  We have added mentions by
RFC number, so that readers may easily refer to the relevant documents.
Please review these updates carefully, and let us know if anything is
incorrect.

Original:
 A companion
 document <xref target="I-D.ietf-clue-signaling"/> delves into CLUE signaling details, as well as on the SIP/SDP SIP/
 SDP session establishment phase.
CLUE messages flow upon
...
 Each of them is fully described
 in the CLUE data channel, based on reliable framework document and
ordered SCTP over DTLS transport, as described formally defined in
<xref target="I-D.ietf-clue-datachannel"/>.
Message details, together with the behavior of CLUE Participants
acting as Media Providers and/or Media Consumers, are herein discussed.
 --> data
 model document.
...
 The framework document also mentions that the information carried
 within CLUE protocol is an application protocol conceived for messages might contain sensitive data, which
 SHOULD hence be accessed only by authenticated endpoints.
...
 The
 security considerations section of the
description mentioned document actually
 discusses issues associated with the setup and negotiation management of a
 telepresence session.
The design of session both in the basic case involving two CLUE protocol takes into account the
requirements
 endpoints acting, respectively, as MP and MC, and in the framework defined within more
 advanced scenario envisaging the IETF CLUE working
group. presence of an MCU.

Currently:
 A companion document document, RFC 8848, delves into
 CLUE signaling details, details as well as on the SIP/SDP SIP / Session Description
 Protocol (SDP) session establishment phase.
CLUE messages flow over
...
 Each of them is fully described in the CLUE data channel, based on reliable framework document
 [RFC8845] and
ordered SCTP over DTLS transport.
Message details, together with formally defined in the behavior of CLUE Participants data model document
 [RFC8846].
...
 The CLUE framework document [RFC8845] also mentions that the
 information carried within CLUE protocol messages might contain
 sensitive data, which SHOULD hence be accessed only by authenticated
 endpoints.
...
 The Security
 Considerations section of [RFC8845] actually discusses issues
 associated with the setup and management of a telepresence session in
 both (1) the basic case involving two CLUE endpoints acting as the MP
 and the MC, respectively and (2) the more advanced scenario
 envisaging the presence of an MCU. -->

CLUE messages flow over the CLUE data channel, based on reliable and
ordered SCTP-over-DTLS transport. ("SCTP" stands for "Stream Control
Transmission Protocol".)
Message details, together with the behavior of CLUE Participants
acting as Media Providers and/or Media Consumers, are herein discussed.

</t>
    </abstract>
  </front>
  <middle>
<!-- Introduction -->
<section title="Introduction" anchor="sec-intro"> anchor="sec-intro" numbered="true" toc="default">
      <name>Introduction</name>
      <t>
The CLUE Controlling Multiple Streams for Telepresence (CLUE) protocol is an application protocol used
by two CLUE Participants to enhance the experience of a multimedia
telepresence session.
The main goals of the CLUE protocol are:
<list style="numbers">
<t> are as follows:
</t>
      <ol spacing="normal" type="1">
        <li>
enabling a Media Provider (MP) to properly announce its current
telepresence capabilities to a Media Consumer (MC) in terms of available
 media captures, groups of encodings, simultaneity constraints constraints, and other
 information defined in <xref target="I-D.ietf-clue-framework"/>;
</t>
<t>enabling target="RFC8845" format="default"/>.
</li>
        <li>enabling an MC to request the desired multimedia streams from the
offering MP.</t>
</list>
</t> MP.</li>
      </ol>
      <t>
CLUE-capable endpoints are connected by means of the CLUE data channel, channel --
an SCTP over DTLS SCTP-over-DTLS channel that is opened and established as described
in <xref target="I-D.ietf-clue-signaling"/> target="RFC8848" format="default"/> and
<xref target="I-D.ietf-clue-datachannel"/>. target="RFC8850" format="default"/>.  ("SCTP" stands for "Stream Control
Transmission Protocol".)
CLUE protocol messages flowing over such a channel are detailed in this
document, both syntactically and semantically.
</t>
      <t>
In <xref target="sec-overview"/> target="sec-overview" format="default"/>, we provide a general overview of the
CLUE protocol.
CLUE protocol messages are detailed in <xref target="sec-messages"/>. target="sec-messages" format="default"/>.
The CLUE Protocol protocol state machines are introduced in
<xref target="sec-sm"/>. target="sec-sm" format="default"/>.
Versioning and extensions are discussed
in <xref target="sec-versioning"/> Sections&nbsp;<xref target="sec-versioning" format="counter"/> and <xref target="sec-ext"/>, target="sec-ext" format="counter"/>,
respectively. The XML schema <xref target="W3C.REC-xml-20081126"/>
defining the CLUE messages is reported provided in
<xref target="sec-schema"/>.
</t>
</section> target="sec-schema" format="default"/>.

<!-- Terminology [rfced] [AD]:  Section 1 and Normative References:  Per
<https://ietf.org/about/groups/iesg/statements/formal-languages-use/>,
as XML is considered a "formal language," we added a citation and
Normative Reference listing for [W3C.REC-xml-20081126] ("Extensible
Markup Language (XML) 1.0 (Fifth Edition)").  Please let us know if
you approve.

Original:
 The XML schema defining the CLUE messages is reported in Section 9.

Currently:
 The XML
 schema [W3C.REC-xml-20081126] defining the CLUE messages is provided
 in Section 9.
...
 [W3C.REC-xml-20081126]
            Bray, T., Paoli, J., Sperberg-McQueen, M., Maler, E., and
            F. Yergeau, "Extensible Markup Language (XML) 1.0 (Fifth
            Edition)", World Wide Web Consortium Recommendation REC-
            xml-20081126, November 2008,
            <https://www.w3.org/TR/2008/REC-xml-20081126>. -->

</t>
    </section>
<section title="Terminology" anchor="sec-teminology">
<t>	This anchor="sec-teminology" numbered="true" toc="default">
      <name>Terminology</name>
      <t>This document refers to the same terminology used in
<xref target="I-D.ietf-clue-framework"/> target="RFC8845" format="default"/> and in
<xref target="RFC7262"/>. target="RFC7262" format="default"/>.
We briefly recall list herein some of the main terms used in the document.
The definition of "CLUE Participant" herein proposed is not imported taken
from any of the above documents.
</t>
<t>
<list style="hanging">
<t hangText="Capture Encoding:">A specific encoding

<!-- [rfced] Section 2:  We had trouble following the meaning of a Media Capture,
to be sent via RTP <xref target="RFC3550"/>.</t>
<t hangText="CLUE Participant (CP):"> An entity able to use
these sentences.  If the CLUE
protocol within a telepresence session.
It can be an endpoint suggested text is not correct, please
clarify "the document" and "proposed."  (In other words, does "the
document" refer to this document, [I-D.ietf-clue-framework], or an MCU (Multipoint Control Unit) able
[RFC7262]?  Was the definition of "CLUE Participant," as previously
proposed by this document, eventually accepted?)

Original:
 This document refers to use the
CLUE protocol. same terminology used in
 [I-D.ietf-clue-framework] and in [RFC7262].  We briefly recall herein
 some of the main terms used in the document.  The definition of "CLUE
 Participant" herein proposed is not imported from any of the above
 documents.

Suggested:
 This document refers to terminology that is also used in [RFC8845]
 and [RFC7262].  For convenience, we list those terms below.  The
 definition of "CLUE Participant", as also listed below,
 originates from this document. -->

</t>

<t hangText="CLUE-capable device:">
      <dl newline="false" spacing="normal">
        <dt>Capture Encoding:</dt>
        <dd>A specific encoding of a Media Capture,
to be sent via RTP <xref target="RFC3550" format="default"/>.</dd>
        <dt>CLUE Participant (CP):</dt>
        <dd> An entity able to use the CLUE
protocol within a telepresence session.
It can be an endpoint or an MCU (Multipoint Control Unit) able to use the
CLUE protocol.
</dd>
        <dt>CLUE-capable device:</dt>
        <dd>
A device that (1) supports the CLUE data channel
<xref target="I-D.ietf-clue-datachannel"/>, target="RFC8850" format="default"/>, the CLUE protocol protocol,
and the principles of CLUE negotiation, negotiation and seeks (2)&nbsp;seeks CLUE-enabled calls.
</t>

<t hangText="Endpoint:">A
</dd>
        <dt>Endpoint:</dt>
        <dd>A CLUE-capable device that is the logical point
of final termination through receiving, decoding decoding, and rendering, and/or
initiation through the capturing, encoding, and sending of media
streams.  An endpoint consists of one or more physical devices
that source and sink media streams, and exactly one
participant (as described in <xref target="RFC4353"/>
Participant (which, target="RFC4353" format="default"/>)
that, in turn, includes exactly one user agent <xref target="RFC3261" />
format="default"/>.

<!-- [rfced] Section 2:  This sentence is difficult to follow.
As it appears that the participant (and not the endpoint) is the
entity that in turn includes exactly one user agent, we updated the
text accordingly.  Please let us know if this is incorrect.

Original:
 An endpoint consists of one or more physical devices
 that source and sink media streams, and exactly one [RFC4353]
 Participant (which, in turn, includes exactly one [RFC3261] User
 Agent).

Currently:
 An endpoint consists of one or more physical devices
 that source and sink media streams, and exactly one participant
 (as described in [RFC4353]) that, in turn, includes exactly one
 user agent [RFC3261]. -->

Endpoints can be anything from multiscreen/multicamera rooms to
handheld devices.
</t>

<t hangText="Multipoint
</dd>
        <dt>Multipoint Control Unit (MCU):">a (MCU):</dt>
        <dd>A CLUE-capable device that connects
two or more endpoints together into one single multimedia
conference <xref target="RFC7667"/>. target="RFC7667" format="default"/>.
An MCU includes an a mixer (as defined in <xref target="RFC4353"/>-like Mixer, target="RFC4353" format="default"/>),
without the <xref target="RFC4353"/> requirement per <xref target="RFC4353" format="default"/> to send media to each
participant.</t>

<t hangText="Media:"> Any
participant.</dd>
        <dt>Media:</dt>
        <dd>Any data that, after suitable encoding, can be
conveyed over RTP, including audio, video video, or timed text.</t>
<t hangText="Media Capture:">a text.</dd>
        <dt>Media Capture:</dt>
        <dd>A source of Media, such as media -- for example, from one or more
Capture Devices or constructed from other Media streams.</t>
<t hangText="Media streams.</dd>
        <dt>Media Consumer (MC):">A (MC):</dt>
        <dd>A CLUE Participant (i.e., an Endpoint
 or an MCU) able to receive Capture Encodings.</t>
<t hangText="Media Encodings.</dd>
        <dt>Media Provider (MP):">A (MP):</dt>
        <dd>A CLUE Participant (i.e., an Endpoint
or an MCU) able to send Capture Encodings.</t>
<t hangText="Stream:">a Encodings.</dd>
        <dt>Stream:</dt>
        <dd>A Capture Encoding sent from a Media Provider to
a Media Consumer via RTP <xref target="RFC3550"/>.</t>
</list>
</t> target="RFC3550" format="default"/>.</dd>
      </dl>
    </section>
    <section title="Conventions">

<t>
The numbered="true" toc="default">
      <name>Conventions</name>
    <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED",
"MAY", "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>",
    "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>",
    "<bcp14>SHALL NOT</bcp14>", "<bcp14>SHOULD</bcp14>",
    "<bcp14>SHOULD NOT</bcp14>",
    "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
    "<bcp14>MAY</bcp14>", and "OPTIONAL" "<bcp14>OPTIONAL</bcp14>" in this document are
    to be interpreted as described in BCP 14 BCP&nbsp;14 <xref target="RFC2119"></xref> target="RFC2119"/>
    <xref target="RFC8174"></xref> target="RFC8174"/> when, and only when, they appear in all capitals,
    as shown here.

<!--
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in BCP 14, RFC 2119
<xref target="RFC2119"></xref>.
-->

</t> here.</t>
    </section>

<!-- Overview of the protocol architecture -->
<section
  title="Overview anchor="sec-overview" numbered="true" toc="default">
      <name>Overview of the CLUE protocol"
  anchor="sec-overview"> Protocol</name>
      <t>
The CLUE protocol is conceived to enable CLUE telepresence sessions.
It is designed in order to address SDP Session Description Protocol (SDP) limitations in terms of the
description of some information about the multimedia streams that are
involved in a real-time multimedia conference.
Indeed, by simply using SDP SDP, it is not possible to convey information
about the features of the flowing multimedia streams that are needed
to enable a "being there" rendering experience.
Such information is contained in the CLUE framework document
<xref target="I-D.ietf-clue-framework"/> target="RFC8845" format="default"/>
and formally defined and described in the CLUE data model document
<xref target="I-D.ietf-clue-data-model-schema"/>. target="RFC8846" format="default"/>.
The CLUE protocol represents the mechanism for the exchange of
telepresence information between CLUE Participants.
It mainly provides the messages to enable a Media Provider to advertise
its telepresence capabilities and to enable a Media Consumer to select
the desired telepresence options.
</t>
      <t>
The CLUE protocol, as defined in the following, is this document and further described below,
is a stateful client-server XML-based application protocol.

<!-- [rfced] Section 4:  As it appears that this document is the
document that defines the CLUE protocol, we updated this sentence
as noted below.  Please let us know if this is incorrect.

Original:
 The CLUE protocol, as defined in the following, is a stateful,
 client-server, XML-based application protocol.

Currently:
 The CLUE protocol, as defined in this document and further described
 below, is a stateful client-server XML-based application protocol. -->

CLUE protocol messages flow on a reliable and ordered SCTP over DTLS SCTP-over-DTLS
transport channel connecting two CLUE Participants.
Messages carry information taken from the XML-based CLUE data model
(<xref target="I-D.ietf-clue-data-model-schema"/>).
<xref target="RFC8846" format="default"/>.
Three main communication phases can be identified:
<list style="numbers">
<t>
Establishment
</t>
      <dl newline="true" spacing="normal">
<dt>Establishment of the CLUE data channel: in channel:</dt>
<dd>In this phase, the CLUE data
channel setup takes place. If it completes successfully, the CPs are
able to communicate and start the initiation phase.
</t>
<t>
Negotiation phase.</dd>
<dt>Negotiation of the CLUE protocol version and extensions (initiation phase):
the phase):</dt>
<dd>The CPs connected via the CLUE data channel agree on the protocol version and on
the extensions to be used during the telepresence session. Special CLUE
messages are used for such a task ('options' and 'optionsResponse').
The negotiation of the version and extensions negotiation can be performed once during the
CLUE session and only at this stage.
At the end of that basic negotiation, each CP starts its activity as a
CLUE MP and/or CLUE MC.
</t>
<t> MC.</dd>
<dt>Description and negotiation of CLUE telepresence capabilities description and negotiation: in capabilities:</dt>
<dd>In this
phase, the MP-MC dialogues take place on the data channel by means of
the CLUE protocol messages.
</t>
</list>
</t> messages.</dd>
      </dl>
      <t>
As soon as the channel is ready, the CLUE Participants must agree on the
protocol version and extensions to be used within the telepresence session.
CLUE protocol version numbers are characterized by a major version
number (single digit) and a minor version number (single digit), both
unsigned integers, separated by a dot.
While minor version numbers denote backward compatible backward-compatible changes in the
context of a given major version, different major version numbers
generally indicate a lack of interoperability between the protocol
implementations.
In order to correctly establish a CLUE dialogue, the involved CPs must
have in common a major version number (see <xref target="sec-versioning"/> target="sec-versioning" format="default"/>
for further details).
The subset of the extensions that are allowed
within the CLUE session is also determined in the initiation phase.
It includes only the extensions that are supported by
both parties.
A mechanism for the negotiation of the CLUE protocol version and
extensions is part of the initiation phase.
According to such a solution, the CP that is the CLUE Channel
Initiator (CI) issues a proper CLUE message ('options')
to the CP that is the Channel Receiver (CR) (CR), specifying the supported
version and extensions.
The CR then answers by selecting the subset of the CI extensions
that it is able to support and determines the protocol version to
be used.
</t>
      <t>
After the negotiation phase is completed, CLUE Participants describe
and agree on the media flows to be exchanged.
In many cases cases, CPs will seek to both transmit and receive media. Hence Hence,
in a call between two CPs, CPs (e.g., CPs A and B, B), there would be two separate message
exchange sequences, as follows:
</t>
<t>
<list style="numbers">
<t>the
      <ol spacing="normal" type="1">
        <li>the one needed to describe and set up the media streams sent from
A to B, i.e., the dialogue between A's Media Provider side and B's Media
Consumer side</t>
<t>the side.</li>
        <li>the one needed to describe and set up the media streams sent from B
to A, i.e., the dialogue between B's Media Provider side and A's Media
Consumer side</t>
</list>
</t> side.</li>
      </ol>
      <t>
 CLUE messages for the media session description and negotiation are
 designed by considering the MP side as to be the server side of the
 protocol, since it produces and provides media streams, and the MC
 side as the client side of the protocol, since it requests and receives
 media streams.
 The messages that are exchanged to set up the telepresence media
 session are described by focusing on a single MP-MC dialogue.
      </t>
      <t>
 The MP first advertises its available media captures and encoding
 capabilities to the MC, as well as its simultaneity constraints,
 according to the information model defined in
 <xref target="I-D.ietf-clue-framework"/>. target="RFC8845" format="default"/>.
 The CLUE message conveying the MP's multimedia offer is the
 'advertisement' message.
 Such a message leverages the XML data model definitions provided in
  <xref target="I-D.ietf-clue-data-model-schema"/>. target="RFC8846" format="default"/>.
      </t>
      <t>
  The MC selects the desired streams of the MP by using the 'configure'
  message, which makes reference to the information carried in the
  previously received 'advertisement'.
      </t>
      <t>
  Besides 'advertisement' and 'configure',
  other messages have been conceived in order to provide all the needed
  mechanisms and operations. Such messages are detailed in the
  following sections.
      </t>
    </section>
    <section title="Protocol messages" anchor="sec-messages"> anchor="sec-messages" numbered="true" toc="default">
      <name>Protocol Messages</name>
      <t>
CLUE protocol messages are textual, textual XML-based messages that enable the
configuration of the telepresence session.
The formal definition of such messages is provided in the XML Schema
provided at the end of this document (<xref target="sec-schema"/>). schema
in <xref target="sec-schema" format="default"/>.
This section includes non-normative excerpts of the schema to aid in
describing it.
</t>
      <t>
The XML definitions of the CLUE information provided in
<xref target="I-D.ietf-clue-data-model-schema"/> target="RFC8846" format="default"/> are included
within some CLUE protocol messages
(namely the 'advertisement' and the 'configure' messages), in
order to use the concepts defined in <xref target="I-D.ietf-clue-framework"/>. target="RFC8845" format="default"/>.
</t>
      <t>
The CLUE protocol messages are the following:
</t>
<t>
  <list style="symbols">
  <t>options</t>
  <t>optionsResponse</t>
  <t>advertisement</t>
  <t>ack</t>
  <t>configure</t>
  <t>configureResponse</t>
  </list> as follows:
</t>
      <ul spacing="normal">
        <li>options</li>
        <li>optionsResponse</li>
        <li>advertisement</li>
        <li>ack</li>
        <li>configure</li>
        <li>configureResponse</li>
      </ul>
      <t>
While the 'options' and 'optionsResponse' messages are exchanged in the
initiation phase between the CPs, the other messages are involved in
MP-MC dialogues. Please note that the word "dialog" "dialogue" as used in this document is
not related to SIP's usage of the same term. It refers to message exchange
sequences between a CLUE Media Provider and a Clue Media Consumer.
</t>
      <t>
Each CLUE message inherits a basic structure structure, as depicted in the following
excerpt (<xref target="fig:message"/>): target="fig_message" format="default"/>):
</t>
<t>
      <figure align="center"
    	title = "Structure anchor="fig_message">
        <name>Structure of a CLUE message" anchor="fig:message">
<artwork>
<![CDATA[ Message</name>
<sourcecode name="" type="xml"><![CDATA[
<xs:complexType name="clueMessageType" abstract="true">
  <xs:sequence>
    <xs:element name="clueId" type="xs:string" minOccurs="0"/>
    <xs:element name="sequenceNr" type="xs:positiveInteger"/>
  </xs:sequence>
  <xs:attribute name="protocol" type="xs:string" fixed="CLUE"
        use="required"/>
  <xs:attribute name="v" type="versionType" use="required"/>
</xs:complexType>

<!-- VERSION TYPE -->
<xs:simpleType name="versionType">
  <xs:restriction base="xs:string">
    <xs:pattern value="[1-9][0-9]*\.[0-9]+" />
  </xs:restriction>
</xs:simpleType>
]]>
</artwork>
</xs:simpleType>]]></sourcecode> </figure>
</t>
      <t>
The information contained in each CLUE message is: is as follows:
</t>
<t>
<list style="symbols">
<t>clueId: an

<!-- [rfced] Section 5:  Should clueMessageType be included in this
list?

Original:
 The information contained in each CLUE message is:

 o  clueId: ... -->

      <dl spacing="normal">
        <dt>clueId:</dt><dd>An optional XML element containing the identifier (in the form of a
generic string) of the CP within the telepresence system;</t>
<t>sequenceNr: an system.</dd>
        <dt>sequenceNr:</dt><dd>An XML element containing the local message sequence
number.
The sender MUST <bcp14>MUST</bcp14> increment the sequence numbers number by one for each new
message sent, and
the receiver MUST <bcp14>MUST</bcp14> remember the most recent sequence number received and
send back
a 402 error if it receives a message with an unexpected sequence number
(e.g., sequence number gap, repeated sequence number, sequence number
too small).
The initial sequence number can be chosen randomly by each party;</t>
<t>protocol: a party.</dd>
        <dt>protocol:</dt><dd>A mandatory attribute set to "CLUE", identifying the
procotol
protocol the messages refer to;</t>
<t>v: a to.</dd>
        <dt>v:</dt><dd>A mandatory attribute carrying the version of the protocol.
The content of the "v" attribute is composed by of the major version number
followed by a dot and then by the minor version number of the CLUE
protocol in use. The major number cannot be "0" and, "0", and if it is more than
one digit, it cannot start with a "0".
Allowed values of this kind are "1.3", "2.0", "20.44", etc.

<!-- [rfced] Section 5:  Should "20.44" be "20.4" here, or should
"minor version number (single digit)" be "minor version number (two
digits)" in Section 4 (which says "CLUE protocol version numbers are
characterized by a major version number (single digit) and a minor
version number (single digit), both unsigned integers, separated by a
dot.")?

Original:
 Allowed
 values are of this kind are, e.g., "1.3", "2.0", "20.44" etc. -->

This document describes version 1.0.
</t>
</list>
</t> 1.0.</dd>
      </dl>
      <t>
Each CP is responsible for creating and updating up to three independent
streams of sequence numbers in messages it sends: (i) one for the
messages sent in the initiation phase, (ii) one (ii)&nbsp;one for the messages sent as
a MP (if it is acting as a MP), and (iii) one for the messages sent as a MC
(if it is acting as a MC).
</t>
      <t>
In particular, CLUE response messages ('optionsResponse', 'ack', 'configureResponse')
derive from a base type, inheriting from the clueMessageType, which is defined as follows
(<xref target="fig:clue_response"/>): target="fig_clue_response" format="default"/>):
</t>

<t>
      <figure align="center"
    	title = "Structure anchor="fig_clue_response">
        <name>Structure of CLUE response messages"
    	anchor="fig:clue_response">
<artwork>
<![CDATA[ Response Messages</name>
<sourcecode name="" type="xml"><![CDATA[
<xs:complexType name="clueResponseType">
 <xs:complexContent>
  <xs:extension base="clueMessageType">
   <xs:sequence>
    <xs:element name="responseCode" type="responseCodeType"/>
    <xs:element name="reasonString" type="xs:string" minOccurs="0"/>
   </xs:sequence>
  </xs:extension>
 </xs:complexContent>
</xs:complexType>
]]>
</artwork>
</xs:complexType>]]></sourcecode> </figure>
</t>
      <t>
The elements &lt;responseCode&gt; and &lt;reasonString&gt; get are populated as detailed in
<xref target="sec-resp-codes"/> target="sec-resp-codes" format="default"/>.
      </t>
      <section title="options" anchor="subsec-options"> anchor="subsec-options" numbered="true" toc="default">
        <name>&apos;options&apos;</name>
        <t>
The 'options' message is sent by the CLUE Participant that is the
Channel Initiator to the CLUE Participant that is
the Channel Receiver as soon as the CLUE data channel is ready.
Besides the information envisioned in the basic structure, it specifies:
</t>
<t>
<list style="symbols">
<t>&lt;mediaProvider&gt;: a mandatory boolean field set to "true" if

<!-- [rfced] Sections 5.1 and subsequent:  It appears that the
variations of the word "envision" as used several times in this
document might not quite capture your intended meaning.  "Envision"
means "imagine as a future possibility; visualize," and "visualize"
means "form a mental image of; imagine" or "make something visible."
Except for Section 8.1, Paragraph 2, it appears that "indicated" or
"included" might be more accurate.  Please review the usage of this
word throughout this document, and let us know how/if each instance
should be updated.

For example:
 Besides the
 information envisioned in the basic structure, it specifies:
...
 If there is no <supportedExtensions> in the
 'options' message, the CI does not support anything other than what
 is envisioned in the versions it supports.
...
 When in the ACTIVE state, the CP starts the envisioned sub-state
 machines (i.e., the MP state machine and the MC state machine)
 according to the roles it plays in the telepresence sessions. -->

</t>
    <dl spacing="normal">
     <dt>&lt;mediaProvider&gt;:</dt>
      <dd>A mandatory boolean field set to "true" if the CP is
able to act as a MP</t>
<t>&lt;mediaConsumer&gt;: a MP.</dd>
     <dt>&lt;mediaConsumer&gt;:</dt>
      <dd>A mandatory boolean field set to "true" if the CP is
able to act as a MC</t>
<t>&lt;supportedVersions&gt;: the MC.</dd>
     <dt>&lt;supportedVersions&gt;:</dt>
      <dd>The list of the supported versions</t>
<t>&lt;supportedExtensions&gt;: the versions.</dd>
     <dt>&lt;supportedExtensions&gt;:</dt>
      <dd>The list of the supported extensions</t>
</list>
</t> extensions.</dd>
  </dl>
        <t>
The XML Schema schema of such a message is reported shown below
(<xref target="fig:options"/>): target="fig_options" format="default"/>):
</t>
<t>
        <figure align="center"
    	title = "Structure anchor="fig_options">
          <name>Structure of a CLUE 'options' message" anchor="fig:options">
<artwork>
<![CDATA[ Message</name>
<sourcecode name="" type="xml"><![CDATA[
<!-- CLUE OPTIONS -->
<xs:complexType name="optionsMessageType">
  <xs:complexContent>
    <xs:extension base="clueMessageType">
      <xs:sequence>
        <xs:element name="mediaProvider" type="xs:boolean" />
        <xs:element name="mediaConsumer" type="xs:boolean" />
        <xs:element name="supportedVersions" type="versionsListType"
                minOccurs="0"/>
        <xs:element name="supportedExtensions"
              type="extensionsListType"
                minOccurs="0"/>
        <xs:any namespace="##other" processContents="lax"
                minOccurs="0"/>
      </xs:sequence>
      <xs:anyAttribute namespace="##other" processContents="lax"/>
    </xs:extension>
  </xs:complexContent>
</xs:complexType>

<!-- VERSIONS LIST TYPE -->
<xs:complexType name="versionsListType">
  <xs:sequence>
    <xs:element name="version" type="versionType" minOccurs="1"
        maxOccurs="unbounded"/>
    <xs:any namespace="##other" processContents="lax" minOccurs="0"/>
  </xs:sequence>
  <xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:complexType>

<!-- EXTENSIONS LIST TYPE -->
<xs:complexType name="extensionsListType">
  <xs:sequence>
    <xs:element name="extension" type="extensionType" minOccurs="1"
        maxOccurs="unbounded"/>
    <xs:any namespace="##other" processContents="lax" minOccurs="0"/>
  </xs:sequence>
  <xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:complexType>

<!-- EXTENSION TYPE -->
<xs:complexType name="extensionType">
  <xs:sequence>
    <xs:element name="name" type="xs:string" />
    <xs:element name="schemaRef" type="xs:anyURI" />
    <xs:element name="version" type="versionType" />
    <xs:any namespace="##other" processContents="lax" minOccurs="0"/>
  </xs:sequence>
  <xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:complexType>
]]>
</artwork>
</xs:complexType>]]></sourcecode> </figure>
</t>
        <t>
&lt;supportedVersions&gt; contains the list of the versions that are
supported by the CI,
each one represented in a child &lt;version&gt; element.
The content of each &lt;version&gt; element is a string made by of the
major version number
followed by a dot and then by the minor version number (e.g., 1.3 or
2.4).
Exactly one &lt;version&gt; element MUST <bcp14>MUST</bcp14> be provided
for each major version supported, containing the maximum minor version
number of such a version, since all minor versions are backward
compatible.
If no &lt;supportedVersions&gt; is carried within the 'options' message,
the CI supports only the version declared in the "v" attribute
and all the versions having the same major version number and lower
minor version number.
For example, if the "v" attribute has a  value of "3.4" and there is no
&lt;supportedVersions&gt; tag in the 'options' message,
it means the CI supports only major version 3 with
all minor versions from 3.0 through 3.4.

<!-- [rfced] Section 5.1:  The indicated range was not clear as
written.  We updated as follows.  Please let us know if this is
incorrect (i.e., is version 3.0 included, or not?).

Original:
 For
 example, if the "v" attribute has a value of "3.4" and there is no
 <supportedVersions> tag in the 'options' message, it means the CI
 supports only major version 3 with all the minor versions comprised
 between 3.0 and 3.4, with version 3.4 included.
If

Currently:
 For example, if the "v"
 attribute has a value of "3.4" and there is no <supportedVersions>
 tag in the 'options' message, it means the CI supports only major
 version 3 with all minor versions from 3.0 through 3.4. -->

If &lt;supportedVersion&gt; is provided,
at least one &lt;version&gt; tag MUST <bcp14>MUST</bcp14> be included.
In this case, the "v" attribute SHOULD <bcp14>SHOULD</bcp14> be set to the largest minor
version of the smallest major version advertised in  the
&lt;supportedVersions&gt; list.
Indeed, the intention behind the "v" attribute is that some
implementation that receives a version number in the "v" field
with a major number higher than it understands is supposed to
close the connection, since it runs a risk of misinterpreting
the contents of messages.
The minor version is less useful in this context,
since minor versions are defined to be both backwards backward and
forward compatible and
forwards compatible, but it is more useful to know the highest value can in any case be parsed out of the
&lt;version&gt; list.  It is more useful to know the highest
minor version supported than some random minor version, as it
indicates the full feature set that is supported.

<!-- [rfced] Section 5.1:  These sentences were difficult to follow.
We updated as noted below.  If this is incorrect, please clarify
"more useful" versus "less useful."

Original:
 The minor version is less
 useful in this context, since minor versions are defined to be both
 backwards and forwards compatible, but it is more useful to know the
 highest minor version supported than some random minor version, as it
 indicates the full feature set that is supported.  The reason why it
 is less useful is that the value can in any case be parsed out of the &lt;version&gt;
 <version> list.

Currently:
 The minor version is less
 useful in this context, since minor versions are defined to be both
 backward and forward compatible and the value can in any case be
 parsed out of the <version> list.  It is more useful to know the
 highest minor version supported than some random minor version, as it
 indicates the full feature set that is supported. -->

</t>
        <t>
The &lt;supportedExtensions&gt; element specifies the list of extensions
supported by the CI.
If there is no &lt;supportedExtensions&gt; in the 'options' message, the CI
does not support anything other than what is envisioned in the versions
it supports.
For each extension, an &lt;extension&gt; element is provided.
An extension is characterized by a name, an XML schema of reference where
the extension is defined, and the version of the protocol which that the extension
refers to.
</t>
      </section>
      <section title="optionsResponse" anchor="subsec-options-response"> anchor="subsec-options-response" numbered="true" toc="default">
        <name>&apos;optionsResponse&apos;</name>
        <t>
The 'optionsResponse' (<xref target="fig:options_response"/>) target="fig_options_response" format="default"/>)
is sent by a CR to a CI as a reply to the 'options'
message.
The 'optionsResponse' contains
a mandatory response code and a reason string indicating
the processing result of the 'options' message.
If the responseCode is between 200 and 299 inclusive,
the response MUST <bcp14>MUST</bcp14> also include &lt;mediaProvider&gt;,
&lt;mediaConsumer&gt;, &lt;version&gt; &lt;version&gt;, and &lt;commonExtensions&gt;
elements; it MAY <bcp14>MAY</bcp14> include them for any other response
code.
&lt;mediaProvider&gt; &nbsp;&lt;mediaProvider&gt; and &lt;mediaConsumer&gt;
elements (which are of a boolean nature) are associated with the
supported roles (in terms of, respectively of the MP and MC), the MC, respectively),
similarly to what the CI does in the 'options' message.
The &lt;version&gt; field indicates the highest commonly supported
version number.
The content of the &lt;version&gt;
element MUST <bcp14>MUST</bcp14> be a string made of the major version number
followed by a dot and then by the minor version number (e.g., 1.3 or
2.4).
Finally, the commonly supported extensions are copied in the
&lt;commonExtensions&gt; field.
</t>
<t>
        <figure align="center"
    	title = "Structure anchor="fig_options_response">
          <name>Structure of a CLUE 'optionsResponse' message"
    	anchor="fig:options_response">
<artwork>
<![CDATA[ Message</name>
<sourcecode name="" type="xml"><![CDATA[
<!-- CLUE 'optionsResponse' -->
<xs:complexType name="optionsResponseMessageType">
  <xs:complexContent>
    <xs:extension base="clueResponseType">
      <xs:sequence>
        <xs:element name="mediaProvider" type="xs:boolean"
                minOccurs="0"/>
        <xs:element name="mediaConsumer" type="xs:boolean"
                minOccurs="0"/>
        <xs:element name="version" type="versionType" minOccurs="0"/>
        <xs:element name="commonExtensions" type="extensionsListType"
                minOccurs="0"/>
        <xs:any namespace="##other" processContents="lax"
                minOccurs="0"/>
      </xs:sequence>
      <xs:anyAttribute namespace="##other" processContents="lax"/>
    </xs:extension>
  </xs:complexContent>
</xs:complexType>
]]>
</artwork>
</xs:complexType>]]></sourcecode> </figure>
</t>
        <t>
Upon reception of the 'optionsResponse' 'optionsResponse', the version to be used is the one
provided in the &lt;version&gt; tag of the message.
The following CLUE messages <bcp14>MUST</bcp14> use such a version number in the "v"
attribute.

<!-- [rfced] Section 5.2:  Does "following CLUE messages" mean
"subsequent CLUE messages," "the CLUE messages described in
Sections 5.3 through 5.6," or something else?

Original:
 The following CLUE
 messages MUST use such a version number in the "v" attribute. -->

The allowed extensions in the CLUE dialogue are those
indicated in the &lt;commonExtensions&gt; element of the 'optionsResponse' message.
</t>
      </section>
      <section title="advertisement" anchor="subsec-adv"> anchor="subsec-adv" numbered="true" toc="default">
        <name>&apos;advertisement&apos;</name>
        <t>
The 'advertisement' message is used by each MP to advertise the
available media captures and related information to the corresponding MC.
The MP sends an 'advertisement' to the MC as soon as it is ready after the
successful completion of the initiation phase, i.e., as soon as the
CPs have agreed on the version and the extensions of the CLUE protocol are agreed between the CPs. protocol.

During a single CLUE session, an MP may send new 'advertisement' messages to replace
 the previous advertisement, advertisement if, for instance, its CLUE
telepresence media capabilities change mid-call. mid&nbhy;call. A new 'advertisement' completely
replaces the previous 'advertisement'.

        </t>
        <t>
The 'advertisement' structure is defined in the schema excerpt below
(<xref target="fig:adv"/>). target="fig_adv" format="default"/>).
The 'advertisement' contains elements compliant with the CLUE data model that
characterize the MP's telepresence offer.
Namely, such elements are: are the list of the media of</t>
  <ul spacing="normal">
    <li>media captures (&lt;mediaCaptures&gt;),
 of the encoding (&lt;mediaCaptures&gt;),</li>
    <li>encoding groups (&lt;encodingGroups&gt;),
 of the capture (&lt;encodingGroups&gt;),</li>
    <li>capture scenes (&lt;captureScenes&gt;),
 of the simultaneous (&lt;captureScenes&gt;),</li>
    <li>simultaneous sets (&lt;simultaneousSets&gt;),
 of the global (&lt;simultaneousSets&gt;),</li>
    <li>global views (&lt;globalViews&gt;),
 and of the represented and</li>
    <li>represented participants (&lt;people&gt;).
 Each (&lt;people&gt;).</li>
  </ul>

<t>Each of them is fully described in the CLUE framework document
<xref target="RFC8845" format="default"/> and formally defined in the CLUE
data model document. document <xref target="RFC8846" format="default"/>.
        </t>
 <t>
        <figure align="center"
    	title = "Structure anchor="fig_adv">
          <name>Structure of a CLUE 'advertisement' message"
    	anchor="fig:adv">
 <artwork>
 <![CDATA[ Message</name>
<sourcecode name="" type="xml"><![CDATA[
<!-- CLUE ADVERTISEMENT MESSAGE TYPE -->
<xs:complexType name="advertisementMessageType">
  <xs:complexContent>
    <xs:extension base="clueMessageType">
      <xs:sequence>
        <!-- mandatory -->
        <xs:element name="mediaCaptures"
              type="dm:mediaCapturesType"/>
        <xs:element name="encodingGroups"
              type="dm:encodingGroupsType"/>
        <xs:element name="captureScenes"
              type="dm:captureScenesType"/>
        <!-- optional -->
        <xs:element name="simultaneousSets"
              type="dm:simultaneousSetsType" minOccurs="0"/>
        <xs:element name="globalViews" type="dm:globalViewsType"
              minOccurs="0"/>
        <xs:element name="people"
              type="dm:peopleType" minOccurs="0"/>
        <xs:any namespace="##other" processContents="lax"
              minOccurs="0"/>
      </xs:sequence>
      <xs:anyAttribute namespace="##other" processContents="lax"/>
    </xs:extension>
  </xs:complexContent>
</xs:complexType>
 ]]>
 </artwork>
</xs:complexType>]]></sourcecode> </figure>
 </t>
      </section>
      <section title="ack" anchor="sec-adv-ack"> anchor="sec-adv-ack" numbered="true" toc="default">
        <name>&apos;ack&apos;</name>
        <t>
The 'ack' message
is sent by a MC to a MP to acknowledge an 'advertisement' message.
As it can be seen from the message schema provided in the following
excerpt (<xref target="fig:adv_ack"/>), target="fig_adv_ack" format="default"/>),
the 'ack' contains a response code and may contain a reason string
for describing the processing result of the 'advertisement'.
The &lt;advSequenceNr&gt; element carries the sequence number of the
'advertisement' message the 'ack' refers to.
</t>
<t>
        <figure align="center"
    	title = "Structure anchor="fig_adv_ack">
          <name>Structure of a CLUE 'ack' message"
    	anchor="fig:adv_ack">
<artwork>
<![CDATA[ Message</name>
<sourcecode name="" type="xml"><![CDATA[
<!-- 'ack' MESSAGE TYPE -->
<xs:complexType name="advAcknowledgementMessageType">
  <xs:complexContent>
    <xs:extension base="clueResponseType">
      <xs:sequence>
        <xs:element name="advSequenceNr" type="xs:positiveInteger"/>
        <xs:any namespace="##other" processContents="lax"
                minOccurs="0"/>
      </xs:sequence>
      <xs:anyAttribute namespace="##other" processContents="lax"/>
    </xs:extension>
  </xs:complexContent>
</xs:complexType>
]]>
</artwork>
</xs:complexType>]]></sourcecode> </figure>
</t>
      </section>
      <section title="configure" anchor="sec-conf"> anchor="sec-conf" numbered="true" toc="default">
        <name>&apos;configure&apos;</name>
        <t>
The 'configure' message is sent from a MC to a MP
to list the advertised captures the MC wants to receive.
The MC MUST <bcp14>MUST</bcp14> send a 'configure' after the reception of an 'advertisement', as well as each
time it wants to request other captures that have been previously advertised by
the MP.
The content of the 'configure' message is shown below (<xref target="fig:conf"/>). target="fig_conf" format="default"/>).
</t>
  <t>
        <figure align="center"
    	title = "Structure anchor="fig_conf">
          <name>Structure of a CLUE 'configure' message"
    	anchor="fig:conf">
 <artwork>
  <![CDATA[ Message</name>
<sourcecode name="" type="xml"><![CDATA[
<!-- CLUE 'configure' MESSAGE TYPE -->
<xs:complexType name="configureMessageType">
  <xs:complexContent>
    <xs:extension base="clueMessageType">
      <xs:sequence>
        <!-- mandatory fields -->
        <xs:element name="advSequenceNr" type="xs:positiveInteger"/>
        <xs:element name="ack" type="successResponseCodeType"
                minOccurs="0"/>
        <xs:element name="captureEncodings"
                type="dm:captureEncodingsType" minOccurs="0"/>
        <xs:any namespace="##other" processContents="lax"
                minOccurs="0"/>
      </xs:sequence>
      <xs:anyAttribute namespace="##other" processContents="lax"/>
    </xs:extension>
  </xs:complexContent>
</xs:complexType>
]]>
   </artwork>
</xs:complexType>]]></sourcecode> </figure>
  </t>
        <t>
The &lt;advSequenceNr&gt; element contains the sequence number of
the 'advertisement' message the 'configure' refers to.
</t>
        <t>
The optional &lt;ack&gt; element, when present, contains a success
response code, as defined in <xref target="sec-resp-codes"/>. target="sec-resp-codes" format="default"/>.
It indicates that the 'configure' message also acknowledges
with success the referred advertisement ('configure' + 'ack' message).

The &lt;ack&gt; element MUST NOT <bcp14>MUST NOT</bcp14> be present if an 'ack' message
(associated with the advertisement carrying that specific sequence
number) has been already been sent back to the MP.

</t>
        <t>
The most important content of the 'configure' message is the list of the
capture encodings provided in the &lt;captureEncodings&gt; element
(see <xref target="I-D.ietf-clue-data-model-schema"/> target="RFC8846" format="default"/> for the
definition of &lt;captureEncodings&gt;).
Such an element contains a sequence of capture encodings,
representing the streams to be instantiated.
</t>
      </section>
      <section title="configureResponse" anchor="sec-conf-resp"> anchor="sec-conf-resp" numbered="true" toc="default">
        <name>&apos;configureResponse&apos;</name>
        <t>

The 'configureResponse' message is sent from the MP to
the MC to communicate
the processing result of requests carried in the previously received
'configure' message.
It
As shown in <xref target="fig_conf_resp" format="default"/>, it contains (<xref target="fig:conf_resp"/>) a
response code (and
optionally (and, optionally, a reason string) indicating either the
success or the failure (along with failure details) of a the 'configure' request
processing.
Following, the
The &lt;confSequenceNr&gt; field that follows contains
the sequence number of the 'configure' message the response refers to.
There is no partial execution of commands. As an example,
if a MP is able to understand all the selected capture encodings except
one, then the whole command fails and nothing is instantiated.
</t>

<t>
        <figure align="center"
    	title = "Structure anchor="fig_conf_resp">
          <name>Structure of a CLUE 'configureResponse' message"
    	anchor="fig:conf_resp">
 <artwork>
  <![CDATA[ Message</name>
<sourcecode name="" type="xml"><![CDATA[
<!-- 'configureResponse' MESSAGE TYPE -->
<xs:complexType name="configureResponseMessageType">
  <xs:complexContent>
    <xs:extension base="clueResponseType">
      <xs:sequence>
        <xs:element name="confSequenceNr"
              type="xs:positiveInteger" />
        <xs:any namespace="##other" processContents="lax"
              minOccurs="0"/>
      </xs:sequence>
      <xs:anyAttribute namespace="##other" processContents="lax" />
    </xs:extension>
  </xs:complexContent>
</xs:complexType>
 ]]>
   </artwork>
</xs:complexType>]]></sourcecode> </figure>
</t>
      </section>
      <section title="Response codes anchor="sec-resp-codes" numbered="true" toc="default">
        <name>Response Codes and reason strings" anchor="sec-resp-codes"> Reason Strings</name>
        <t>
 Response codes are defined as a sequence of three digits.
 A well-defined meaning is associated with the first digit.
 Response codes beginning with "2" are associated with successful
 responses.
 Response codes that do not begin with either "2" or "1" indicate an
 error response, i.e., that an error occurred while processing a CLUE
 request.
 In particular, response codes beginning with "3" indicate problems
 with the XML content of the message ("Bad syntax", "Invalid value",
 etc.), while response codes beginning with "4" refer to problems
 related to CLUE protocol semantics ("Invalid sequencing", "Version not
 supported", etc.).
 200, 300 300, and 400 codes are the most generic ones codes in their respective categories.
 Further response codes can be either defined either in future versions of the
 protocol,
 protocol or defined by leveraging the extension mechanism.
 In both cases, the new response codes MUST <bcp14>MUST</bcp14> be registered with IANA.
 Such new response
 codes MUST NOT <bcp14>MUST NOT</bcp14> override the ones here codes defined in this document, and they MUST <bcp14>MUST</bcp14>
 respect the semantics of the first code digit.
</t>
        <t>
This document does not define response codes starting with "1", and such
response codes are not allowed to appear in major version 1 of the CLUE
protocol. The range from 100 to 199 inclusive is reserved for future
major versions of the protocol to define response codes for delayed or
incomplete operations operations, if necessary. Response codes starting with "5"
through "9" are reserved for future major versions of the protocol to
define new classes of response, responses and are not allowed in major version 1
of the CLUE protocol.
Response codes starting with "0" are not allowed.
</t>
        <t>
The response codes and reason strings defined for use with version 1 of the
CLUE protocol are listed in <xref target="fig:codes"/>. target="clue-resp-codes-table" format="default"/>.
The "Description" text contained in the table can be sent in the
&lt;reasonString&gt; element of a response message. Implementations can
(and are encouraged to) include more specific descriptions of the error
condition,
condition that are more specific, if possible.
</t>

  <t>
  <figure align="center"
    	title = "CLUE response codes"
    	anchor="fig:codes">
 <artwork>
  <![CDATA[

 +-----------------+----------------------+--------------------------+
 |                 |                      |                          |
 |

<table anchor="clue-resp-codes-table">
<name>CLUE Response code  |  Reason string       |       Description        |
 |                 |                      |                          |
 +-----------------+----------------------+--------------------------+
 |                 |                      |                          |
 |   200           |  Success             |  The Codes</name>
  <thead>
    <tr>
      <th>Response Code</th>
      <th>Reason String</th>
      <th align="center">Description</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>200</td>
      <td>Success</td>
      <td>The request has been    |
 |                 |                      | successfully processed. |
 |                 |                      |                          |
 +-----------------+----------------------+--------------------------+
 |                 |                      |                          |
 |   300           |  Low-level processed.</td>
    </tr>
    <tr>
      <td>300</td>
      <td>Low-level request   |  A error</td>
      <td>A generic low-level     |
 |                 |  error.              | request error has       |
 |                 |                      |  occurred.               |
 |                 |                      |                          |
 +-----------------+----------------------+--------------------------+
 |                 |                      |                          |
 |   301           |  Bad syntax          |  The occurred.</td>
    </tr>
    <tr>
      <td>301</td>
      <td>Bad syntax</td>
      <td>The XML syntax of the   |
 |                 |                      | message is not correct. |
 +-----------------+----------------------+--------------------------+
 |                 |                      |                          |
 |   302           |  Invalid value       |  The correct.</td>
    </tr>
    <tr>
      <td>302</td>
      <td>Invalid value</td>
      <td>The message             |
 |                 |                      | contains an invalid     |
 |                 |                      | parameter value.        |
 +-----------------+----------------------+--------------------------+
 |                 |                      |                          |
 |   303           |  Conflicting values  |  The value.</td>
    </tr>
    <tr>
      <td>303</td>
      <td>Conflicting values</td>
      <td>The message             |
 |                 |                      | contains values that    |
 |                 |                      | cannot be used together.|
 +-----------------+----------------------+--------------------------+
 |                 |                      |                          |
 |   400           | Semantic errors      |  Semantic together.</td>
    </tr>
    <tr>
      <td>400</td>
      <td>Semantic errors</td>
      <td>Semantic errors in the  |
 |                 |                      | received CLUE protocol  |
 |                 |                      |  message.                |
 |                 |                      |                          |
 +-----------------+----------------------+--------------------------+
 |                 |                      |                          |
 |   401           | Version message.</td>
    </tr>
    <tr>
      <td>401</td>
      <td>Version not supported|  The supported</td>
      <td>The protocol version    |
 |                 |                      | used in the message     |
 |                 |                      | is not supported.       |
 |                 |                      |                          |
 +-----------------+----------------------+--------------------------+
 |                 |                      |                          |
 |   402           |  Invalid sequencing  | Sequence supported.</td>
    </tr>
    <tr>
      <td>402</td>
      <td>Invalid sequencing</td>
      <td>Sequence number gap;     |
 |                 |                      | repeated sequence number;|
 |                 |                      | number; sequence number outdated.|
 +-----------------+----------------------+--------------------------+
 |                 |                      |                          |
 |   403           |  Invalid identifier  |  The outdated.</td>
    </tr>
    <tr>
      <td>403</td>
      <td>Invalid identifier</td>
      <td>The clueId used in      |
 |                 |                      | the message is          |
 |                 |                      |  not valid invalid or unknown.   |
 +-----------------+----------------------+--------------------------+
 |                 |                      |  The unknown.</td>
    </tr>
    <tr>
      <td>404</td>
      <td>Advertisement expired</td>
      <td>The sequence number of  |
 |   404           |   advertisement      | the advertisement the   |
 |                 |       Expired        |  configure 'configure' message refers to is out of date.</td>
    </tr>
    <tr>
      <td>405</td>
      <td>Subset choice not allowed</td>
      <td>The subset choice is not allowed for the specified Multiple Content Capture.</td>
    </tr>
  </tbody>
</table>

<!-- [rfced] Tables 1 and 3:  Please review the following:

a) "is not valid or unknown" and "advertisement Expired" read oddly
and could be confusing to some.  We changed these to "is invalid or
unknown" and "Advertisement expired", and we will ask IANA to update
their corresponding page accordingly.  Please let us know any
objections.

Original (dashed lines are broken so that xml2rfc will handle this
  question properly):
 |                 |                      |                          |  out of date.            |
 +-----------------+----------------------+--------------------------+
 |   403           |  Invalid identifier  |  The clueId used in      |
 |   405                 |  Subset choice not                      | The subset choice  the message is          |
 |                 |                      |  not valid or unknown.   |
 +- - - - - - - - -+- - - - - - - - - - - +- - - - - - - - - - - - - +
 |                 |                      |  allowed  The sequence number of  |
 |   404           |   advertisement      | allowed for  the specified| advertisement the   |
 |                 | Multiple Content Capture       Expired        |
 +-----------------+----------------------+--------------------------+

]]>
   </artwork>
  </figure>
  </t>

</section>
</section><!-- protocol messages -->

<section title="Protocol state machines" anchor="sec-sm">

<t>

The CLUE protocol  configure refers to is an application protocol  |
 |                 |                      |  out of date.            |
...
 | 403    | Invalid       | The clueId used between two CPs
in order to properly configure a multimedia telepresence session.

CLUE protocol messages flow over the CLUE Data Channel,
a DTLS/SCTP channel established as depicted in
<xref target="I-D.ietf-clue-datachannel"/>.

We herein discuss the state machines associated, respectively, with the
CLUE Participant (<xref target="fig:protocol_participant"/>), with       | RFCXXXX   |
 |        | identifier    | message is not valid or      |           |
 |        |               | unknown.                     |           |
 | 404    | advertisement | The sequence number of the MC role (<xref target="fig:protocol_provider"/>) and with   | RFCXXXX   |
 |        | Expired       | advertisement the
MP role (<xref target="fig:protocol_consumer"/>).

Endpoints often wish configure  |           |
 |        |               | refers to both send and is out of date.    |           |

Currently:
 | 403      | Invalid        | The clueId used in the message is |
 |          | identifier     | invalid or unknown.               |
 +- - - - - +- - - - - - - - +- - - - - - - - - - - - - - - - - -+
 | 404      | Advertisement  | The sequence number of the        |
 |          | expired        | advertisement the 'configure'     |
 |          |                | message refers to is out of date. |
...
 | 403    | Invalid       | The clueId used in the    | RFC 8847  |
 |        | identifier    | message is invalid or     |           |
 |        |               | unknown.                  |           |
 +- - - - +- - - - - - - -+- - - - - - - - - - - - - -+ - - - - - +
 | 404    | Advertisement | The sequence number of    | RFC 8847  |
 |        | expired       | the advertisement the     |           |
 |        |               | 'configure' message       |           |
 |        |               | refers to is out of date. |           |

b) The descriptions for codes 400 and 402 are the only descriptions
that are not complete sentences.  May we update as suggested below?
If you agree, we will ask IANA to update their corresponding page
accordingly.

Original:
 Semantic errors in the received CLUE protocol message.
...
 Sequence number gap; repeated sequence number; sequence number
 outdated.

Suggested (the second sentence is per the text regarding "402" in
  Section 5):
 The received CLUE protocol message contains semantic errors.
...
 The received message contains an unexpected sequence number (e.g.,
 sequence number gap, repeated sequence number, or sequence number
 outdated). -->

      </section>
    </section>

<section anchor="sec-sm" numbered="true" toc="default">
      <name>Protocol State Machines</name>
      <t>
The CLUE protocol is an application protocol used between two CPs
in order to properly configure a multimedia telepresence session.

CLUE protocol messages flow over the CLUE data channel,
a DTLS/SCTP channel established as depicted in
<xref target="RFC8850" format="default"/>.

<!-- [rfced] Section 6:  Does "DTLS/SCTP" mean "SCTP-over-DTLS,"
or "UDP/DTLS/SCTP or TCP/DTLS/SCTP" (as listed in
[I-D.ietf-clue-datachannel], which is now [RFC8850])?

Original:
 CLUE
 protocol messages flow over the CLUE Data Channel, a DTLS/SCTP
 channel established as depicted in [I-D.ietf-clue-datachannel].
-->

We herein discuss the state machines associated with the
CLUE Participant (<xref target="fig_protocol_participant" format="default"/>),
the MP role (<xref target="fig_protocol_provider" format="default"/> in <xref target="sec-mp"/>), and the
MC role (<xref target="fig_protocol_consumer" format="default"/> in <xref
target="sec-mc"/>), respectively.

<!-- [rfced] Section 6:  Because the original Figure 11 has the
title "Media Provider's state machine" and is in Section 6.1
("Media Provider's state machine") and Figure 12 has the title
"Media Consumer's state machine" and is in Section 6.2 ("Media
Consumer's state machine"), we changed "MC role" to "MP role"
and "MP role" to "MC role."  Please let us know any concerns.

Original:
 We
 herein discuss the state machines associated, respectively, with the
 CLUE Participant (Figure 10), with the MC role (Figure 11) and with
 the MP role (Figure 12).

Currently (the figures have been renumbered):
 We herein discuss the
 state machines associated with the CLUE Participant (Figure 9), the
 MP role (Figure 10 in Section 6.1), and the MC role (Figure 11 in
 Section 6.2), respectively. -->

Endpoints often wish to both send and receive media, i.e., act as both a
MP and a MC.
As such such, there will often be two sets of messages flowing in opposite
directions; the state machines of these two flows do not interact with
each other.
Only the CLUE application logic is considered.
The interaction of CLUE protocol and SDP negotiations for the media
streams exchanged is treated discussed in <xref target="I-D.ietf-clue-signaling"/>. target="RFC8848" format="default"/>.

</t>

<figure anchor="fig_protocol_participant">
        <name>CLUE Participant State Machine</name>
        <artwork name="" type="" align="left" alt=""><![CDATA[
                            +----+
    +---------------------->|IDLE|<----------------------------+
    |                       +-+--+                             |
    |                         |                                |
    |                         |  start                         |
    |                         |  channel                       |
    |                         v                                |
    |  channel error /     +--------+                          |
    |  session ends        | CHANNEL|                          |
    +----------------------+ SETUP  |                          |
    |                      +--+-----+                          |
    |                         |                                |
    |                         |  channel                       |
    |                         |  established                   |
    |  channel error /        v                 OPTIONS phase  |
    |  session ends         +-------+           failure        |
    +-----------------------+OPTIONS+--------------------------+
    |                       +-+-----+
    |                         |
    |                         |  OPTIONS phase
    |                         |  success
    |                         v
    |   channel error /    +---------+
    |   session ends       | ACTIVE  |
    +----------------------+         |
                           | +----+  +------------------+
                           | | MP |  |    send/receive  |
                           | +----+  |    CLUE messages |
                           |         |<-----------------+
                           | +----+  |
                           | | MC |  |
                           | +----+  |
                           |         |
                           +---------+]]></artwork> </figure>
      <t>
The main state machines focus on the behavior of the CLUE Participant
(CP) acting as a CLUE Channel Initiator/Receiver Initiator / Channel Receiver (CI/CR).
</t>
      <t>
The initial state is the IDLE one. state.
When in the IDLE state, the CLUE data channel is not established and
no CLUE-controlled media are exchanged between the two considered
CLUE-capable devices in question (if there is an ongoing exchange of media streams,
such media streams are not currently CLUE-controlled). CLUE controlled).
</t>
      <t>
When the CLUE data channel sets is set up ("start channel"),
the CP moves from the IDLE state to the CHANNEL SETUP state.
</t>
      <t>
If the CLUE data channel is successfully set up ("channel established"),
the CP moves from the CHANNEL SETUP state to the OPTIONS state.
Otherwise
Otherwise, if a "channel error", error" occurs, it moves back to the IDLE state.
The same transition happens if the CLUE-enabled
telepresence session ends ("session ends"), i.e., when an
SDP negotiation for removing the CLUE data channel is performed.
</t>
      <t>
When in the OPTIONS state, the CP addresses the initiation phase where
both parts agree on the version and on the extensions to be used in the
subsequent CLUE messages message exchange phase.
If the CP is the Channel Initiator (CI), CI, it sends an 'options' message and
waits for the 'optionsResponse' message.
If the CP is the Channel Receiver (CR), CR, it waits for the 'options' message
and, as soon as it arrives, replies with the 'optionsResponse' message.
If the negotiation is successfully completed ("OPTIONS phase success"),
the CP moves from the OPTIONS state to the ACTIVE state.
If the initiation phase fails ("OPTIONS phase failure"), the CP moves
from the OPTIONS state to the IDLE state.
The initiation phase might fail because of for one of the following reasons:
<list style="numbers">
<t> the
</t>
      <ol spacing="normal" type="1">
        <li>The CI receives an 'optionsResponse' with an error response code</t>
<t> the code.</li>
        <li>The CI does not receive any 'optionsResponse' 'optionsResponse', and a timeout error
is raised</t>
<t> the raised.</li>
        <li>The CR does not receive any 'options' 'options', and a timeout error is raised </t>
</list>
</t> raised.</li>
      </ol>
      <t>
When in the ACTIVE state, the CP starts the envisioned sub-state
machines (i.e., the MP state machine and the MC state machine)
according to the roles it plays in the telepresence sessions.
Such roles have been previously declared in the 'options' and
'optionsResponse' messages involved in the initiation phase
(see OPTIONS sections <xref target="subsec-options"/> Sections&nbsp;<xref target="subsec-options" format="counter"/> and
<xref target="subsec-options-response"/> target="subsec-options-response" format="counter"/> for the details).
When in the ACTIVE state, the CP delegates the sending and
the
processing of the CLUE messages to the appropriate MP/MC
sub-state machines.
If the CP receives a further 'options'/'optionsResponse' message,
it MUST <bcp14>MUST</bcp14> ignore the message and stay in the ACTIVE state.
</t>
<!--
      <section anchor="sec-mp" numbered="true" toc="default">
        <name>Media Provider's State Machine</name>
        <t>
The CP moves from the ACTIVE state to the IDLE one when
As soon as the sub-state machines that had been activated are machine of the MP
(<xref target="fig_protocol_provider" format="default"/>) is activated, it is in
the relative
TERMINATED state (see sections <xref target="sec-mp"/>
and <xref target="sec-mc"/>). ADV state.
In the ADV state, the MP prepares the 'advertisement' message
reflecting its actual telepresence capabilities.
</t>
 -->

<t>

        <figure
align="center"
    	title = "CLUE Participant state machine"
    	anchor="fig:protocol_participant">
<artwork>
<![CDATA[
                               +----+
       +---------------------->|IDLE|<----------------------------+
       |                       +-+--+                             |
       |                         |                                | anchor="fig_protocol_provider">
          <name>Media Provider's State Machine</name>
          <artwork name="" type="" align="left" alt=""><![CDATA[
                           +-----+
             +------------>| ADV |<-------------------+
             |             +-+---+                    |  start
             |  advertisement|       NACK received    |
             |  channel           sent|                        |
             |               v                        |
       |  channel error/
      changed|             +--------+                 |
       |  session ends        | CHANNEL|                          |
       +----------------------+ SETUP
 telepresence+-------------+WAIT FOR+-----------------+
     settings|  +----------+  ACK   |
             |  |configure +-+------+
             |                      +--+-----+  |  + ack     |
             |  |received    |ack received
             |  |            v
             |  channel  |          +--------+
             +-------------+WAIT FOR|
             |  |  established          |  CONF  |  channel error/         v                 OPTIONS phase
             |  |  session ends         +-------+           failure          +-+------+<-----------------------------+
             |
       +-----------------------+OPTIONS+--------------------------+  |                       +-+-----+            |                                     |
             |  |  OPTIONS phase            |configure received                   |
             |  success  |            v                                     |   channel error/     +---------+
             |   session ends  +--------->+---------+ error configureResponse sent|
             +-------------+CONF     |-----------------------------+
             | ACTIVE  +--------->|RESPONSE +
             |
       +----------------------+  |          +---------+
             | +----+  +------------------+  |              | MP
             |  |    send/receive              |successful
             |  | +----+              |configureResponse
             |    CLUE messages  |              |sent
             |  |         |<-----------------+              | +----+
             |  |              | MC
             |  |configure     |
             | +----+  |received      v
             |  |          +-----------+
             |
                              +---------+

]]>
</artwork>  +----------+ESTABLISHED|
             +-------------+-----------+]]></artwork> </figure>
</t>

<section title="Media Provider's state machine" anchor="sec-mp">
<t>
As soon as the sub-state machine of the MP
(<xref target="fig:protocol_provider"/>) is activated, it is in
the ADV state.
In the ADV state, the MP prepares the 'advertisement' message
reflecting its actual telepresence capabilities.
</t>
        <t>
After the 'advertisement' has been sent ("advertisement sent"),
the MP moves from the ADV state to the WAIT FOR ACK state.  If an
'ack' message with a successful response code arrives
("ack received"), successful response code arrives
("ack received"), the MP moves to the WAIT FOR CONF state.
If a NACK arrives (i.e., an 'ack' message with an error response
code), the MP moves back to the ADV state for preparation of a new
'advertisement'.
When in the WAIT FOR ACK state, if a 'configure' message with the
&lt;ack&gt; element set to "TRUE" arrives ("configure+ack received"),
the MP goes directly to the CONF RESPONSE state.

<!-- [rfced] Section 6.1:  In Section 5.5, we see "The optional
<ack> element, when present, contains a success response code, as
defined in Section 5.7," and in Section 6.2 we see "Such a message
will have the MP moves <ack> field set to "200" ("configure+ack sent") and
will allow the MC to move directly to the WAIT FOR CONF state.
If RESPONSE
state."  However, in this section, the sentence below indicates that
a NACK arrives (i.e., an 'ack' message with an error response
code), setting of "TRUE" is possible for the MP moves back <ack> element.  Should "set
to the ADV state for preparing TRUE" perhaps be "containing a new
'advertisement'. response code indicating success"?
In other words, is "TRUE" also a valid setting, and if yes, should
this be explained in Sections 5.5 and 6.2 as well?

Original:
 When in the WAIT FOR
 ACK state, if a 'configure' message with the
&lt;ack&gt; <ack> element set to
 TRUE arrives ("configure+ack received"), the MP goes directly to the
 CONF RESPONSE state. -->

'configure+ack' messages referring to out-of-date (i.e., having
a sequence number less than the highest generated so far)
advertisements MUST <bcp14>MUST</bcp14> be ignored, i.e., they do not trigger any
state transition.  If the telepresence settings of the MP change
while in the WAIT FOR ACK state ("changed telepresence settings"),
the MP switches from the WAIT FOR ACK state to the ADV state to
create a new 'advertisement'.
</t>
        <t>
When in the WAIT FOR CONF state, the MP listens to the channel for a
'configure' request coming from the MC. When a 'configure' arrives
("configure received"), the MP switches to the CONF RESPONSE state.
If the telepresence settings change in the
meanwhile
meantime ("changed telepresence settings"), the MP moves from the
WAIT FOR CONF state back to the ADV state to create the new 'advertisement'
to be sent to the MC.</t><t> MC.</t>
        <t>

The MP in the CONF RESPONSE state processes the received 'configure'
in order to produce a 'configureResponse' message.  If the MP
successfully processes the MC's configuration, then it sends a 200
'configureResponse' ("successful configureResponse sent") and moves to
the ESTABLISHED state.

<!-- [rfced] Section 6.1 and Figure 11:  Per Section 6.2 and
Figure 12 ("successful configureResponse received"), we changed
"success configureResponse sent" to "successful configureResponse
sent."  Please let us know any objections.

Original:
 If the MP
 successfully processes the MC's configuration, then it sends a 200
 'configureResponse' ("success configureResponse sent") and moves to
 the ESTABLISHED state.
...
 |  |              |success
 |  |              |configureResponse
 |  |              |sent

Currently:
 If the MP
 successfully processes the MC's configuration, then it sends a 200
 'configureResponse' ("successful configureResponse sent") and moves
 to the ESTABLISHED state.
...
 |  |              |successful
 |  |              |configureResponse
 |  |              |sent -->

  If there are errors in the 'configure'
processing, then the MP issues a 'configureResponse' carrying an
error response code and it goes back to the
WAIT FOR CONF state to wait for a new configuration request.
Finally, if there are changes in the MP's telepresence
settings ("changed telepresence settings"), the MP switches to the
ADV state.
</t>
        <t>
The MP in the ESTABLISHED state has successfully negotiated the media
streams with the MC by means of the CLUE messages.  If there are
changes in the MP's telepresence settings ("changed telepresence
settings"), the MP moves back to the ADV state.  In the ESTABLISHED
state, the CLUE-controlled media streams of  In the ESTABLISHED
state, the CLUE-controlled media streams of the session are those
described in the last successfully processed 'configure' message.
</t>
        <t>Messages not shown for a state do not cause the state to change.</t>
      </section>
      <section anchor="sec-mc" numbered="true" toc="default">
        <name>Media Consumer's State Machine</name>
        <t>
As soon as the sub-state machine of the MC
(<xref target="fig_protocol_consumer" format="default"/>) is activated, it is in the
WAIT FOR ADV state.
An MC in the WAIT FOR ADV state is waiting for an 'advertisement' coming from the
MP. If the 'advertisement' arrives ("ADV received"), the MC moves to the ADV
PROCESSING state.
Otherwise, the session are those
described MC stays in the last successfully processed 'configure' message. WAIT FOR ADV state.
</t>
<t>Messages not shown for a state do not cause the state to change.</t>
<t>

        <figure
	align="center"
   	title = "Media Provider's state machine"
   	anchor="fig:protocol_provider">
 <artwork>
  <![CDATA[
                           +-----+
             +------------>| anchor="fig_protocol_consumer">
          <name>Media Consumer's State Machine</name>
          <artwork name="" type="" align="left" alt=""><![CDATA[
                      +----------+
                      | WAIT FOR |
                      |   ADV |<-------------------+    |             +-+---+
                      +----+-----+<--------+
                           |               |
              advertisement|      NACK received sent|
                   received|               |
                           v               |           sent|
                      +-----------+--------+
                      |  ADV      +
                      |               v PROCESSING|<-----------------------+
                      +-+-----+---+                        |
      changed|             +--------+
                        |
 telepresence+-------------+WAIT FOR+-----------------+
     settings|  +----------+  ACK     |                            |  |configure +-+------+
         configure+ack  |     |  +  ack                       |
             |  |received    |ack received
                sent    |     |            v  sent                      |
                        |          +--------+
             +-------------+WAIT FOR|     v                            |
                        |  +-----+                         |  CONF
                        |  |CONF |  advertisement received |          +-+------+<-----------------------------+
  +----------------------->|     +-------------------------+
  |error                |  +--+--+                         |
  |configureResponse    |     |                            |
  |received             |     |configure received                   |
  |                     |            v     |sent                        |
  |  +--------->+---------+ error configureResponse sent|
             +-------------+CONF     |-----------------------------+                     |  +--------->|RESPONSE +     |                            |          +---------+
  |                     v     v              advertisement |
  +------------------+---------------+            received |
          +--------->|   WAIT FOR    +---------------------+
          |          |              |success  CONF RESPONSE+                     |
          |              |configureResponse          +-------+-------+                     |
          |              |sent                  |                             |
          |                  |                             |
          |                  |successful                   |  |configure
          |                  |configureResponse            |
          |                  |received      v                     |
          |configure         v                             |
          |sent        +-----------+
             |  +----------+ESTABLISHED|
             +-------------+-----------+

                           ]]>
   </artwork> advertisement received|
          +------------+ESTABLISHED+-----------------------+
                       +-----------+]]></artwork> </figure>
</t>
</section>

<section title="Media Consumer's state machine" anchor="sec-mc">
<t>
As soon as the sub-state machine of the MC
(<xref target="fig:protocol_consumer"/>) is activated, it is in the
WAIT FOR ADV state.
An MC in the WAIT FOR ADV state is waiting for an 'advertisement' coming from the
MP. If the 'advertisement' arrives ("ADV received"), the MC reaches the ADV
PROCESSING state.
Otherwise, the MC stays in the WAIT FOR ADV state.
</t>
        <t>
In the ADV PROCESSING state, the 'advertisement' is parsed by the MC.
If the 'advertisement' is successfully processed, there are two
possibilities. scenarios are
possible.  In the first case, the MC issues a successful 'ack'
message to the MP ("ACK sent") and moves to the CONF state.

<!-- [rfced] Section 6.2:  Should "ACK sent" be "ack sent" per
Figure 12, or should "ack sent" in Figure 12 be "ACK sent"?

Original:
 In the former case, the MC issues a successful 'ack'
 message to the MP ("ACK sent") and moves to the CONF state.
...
 configure+ack  |     |  ack                       |
        sent    |     |  sent                      | -->

  This
typically happens when the MC needs some more time to produce the
'configure' message associated with the received 'advertisement'.  In
the latter case, the MC is able to immediately prepare and send back
to the MP a 'configure' message.  Such a message will have the &lt;ack&gt;
field set to "200" ("configure+ack sent") and will allow the MC to
move directly to the WAIT FOR CONF RESPONSE state.
</t>
        <t>
If the ADV processing is unsuccessful (bad syntax, missing XML
elements, etc.), the MC sends a NACK message (i.e., an 'ack' with
an error response code) to the MP and, optionally, further describes
the problem via a proper reason phrase.

<!-- [rfced] Section 6.2:  Does "ADV processing" mean "processing
during the ADV state," "ADV PROCESSING state," or something else?

Original:
 If the ADV processing is unsuccessful (bad syntax, missing XML
 elements, etc.), the MC sends a NACK message (i.e., an 'ack' with an
 error response code) to the MP and optionally further describes the
 problem via a proper reason phrase. -->

  In this way scenario ("NACK sent"),
the MC switches back to the WAIT FOR ADV
state, waiting
state and waits for a new 'advertisement'.
</t>
        <t>
When in the CONF state, the MC prepares the 'configure' request to be
issued to the MP on the basis of the previously ack-ed acked
'advertisement'.  When the 'configure' has been sent ("configure
sent"), the MC moves to the WAIT FOR CONF RESPONSE state.  If a new
'advertisement' arrives in the meanwhile meantime ("advertisement received"),
the MC goes back to the ADV PROCESSING state.
</t>
        <t>
In the WAIT FOR CONF RESPONSE state, the MC waits for the MP's
response to the issued 'configure' or 'configure+ack'.  If a 200
'configureResponse' message is received ("successful
configureResponse received"), it means that the MP and the MC have
successfully agreed on the media streams to be shared.  Then, the MC
can move to the ESTABLISHED state.  On the other hand, if an error
response is received  ("error configureResponse received"),
the MC moves back to the CONF state to prepare a new
'configure' request.  If a new 'advertisement' is received in the WAIT
FOR CONF RESPONSE state, the MC switches to the ADV PROCESSING state.
</t>
        <t>
When the MC is in the ESTABLISHED state, the telepresence session
configuration has been set up at the CLUE application level according
to the MC's preferences.  Both the MP and the MC have agreed on (and
are aware of) the CLUE-controlled media streams to be exchanged
within the call.  While in the ESTABLISHED state, it might happen
that the MC decides might
decide to change something in the call settings.  The settings; in this case, the MC
then issues a new 'configure' ("configure sent") and goes to wait for
the new 'configureResponse' in the WAIT FOR CONF RESPONSE state.  On
the other hand, in the ESTABLISHED state, if a new 'advertisement'
arrives from the MP ("advertisement received"), it means that
something has changed on the MP's side.  The MC then moves to the ADV
PROCESSING state.
</t>
<t>Messages not shown for a state do not cause the state to change.</t>
<t>
<figure
	align="center"
   	title = "Media Consumer's state machine"
   	anchor="fig:protocol_consumer">
 <artwork>
  <![CDATA[
                      +----------+
                      | WAIT FOR |
                      |   ADV    |
                      +----+-----+<--------+
                           |               |
              advertisement|      NACK sent|
                   received|               |
                           v               |
                      +-----------+--------+
                      |  ADV      +
                      | PROCESSING|<-----------------------+
                      +-+-----+---+                        |
                        |     |                            |
         configure+ack  |     |  ack                       |
                sent    |     |  sent                      |
                        |     v                            |
                        |  +-----+                         |
                        |  |CONF |  advertisement received |
  +----------------------->|     +-------------------------+
  |error                |  +--+--+                         |
  |configureResponse    |     |                            |
  |received             |     |configure                   |
  |                     |     |sent                        |
  |                     |     |                            |
  |                     v     v              advertisement |
  +------------------+---------------+            received |
          +--------->|   WAIT FOR    +---------------------+
          |          |  CONF RESPONSE+                     |
          |          +-------+-------+                     |
          |                  |                             |
          |                  |                             |
          |                  |successful                   |
          |                  |configureResponse            |
          |                  |received                     |
          |configure         v                             |
          |sent        +-----------+ advertisement received|
          +------------+ESTABLISHED+-----------------------+
                       +-----------+
 ]]>
   </artwork>
  </figure> sent") and moves to the
WAIT FOR CONF RESPONSE state to wait for the new 'configureResponse'.
On the other hand, if the MC is in the ESTABLISHED state and
a new 'advertisement' ("advertisement received") arrives from the MP,
it means that something has changed on the MP's side; the MC then moves
to the ADV PROCESSING state.
</t>
        <t>Messages not shown for a state do not cause the state to change.</t>
      </section>
    </section>
    <section title="Versioning"
anchor="sec-versioning"> anchor="sec-versioning" numbered="true" toc="default">
      <name>Versioning</name>
      <t>
CLUE protocol messages are XML messages compliant to the CLUE protocol XML schema
<xref target="I-D.ietf-clue-data-model-schema"/>. target="RFC8846" format="default"/>.
The version of the protocol corresponds to the version of the schema.
Both the client and the server have to test the compliance of the received messages with
the XML schema of the CLUE protocol.
If the compliance is not verified, the message cannot be processed further.
</t>
      <t>
Client
The client and server cannot communicate if they do not share exactly
the same XML schema.
Such a schema is associated with the CLUE URN
"urn:ietf:params:xml:ns:clue-protocol".
If all CLUE-enabled devices use that schema schema,
there will be no interoperability problems due to schema issues.
</t>
      <t>This document uses XML schema version 1.0 <xref target="W3C.REC-xml-20081126"/>.

<!-- [rfced] Section 7:  As it appears that this document uses
XML schema version 1.0 but does not actually define it, we updated
this sentence accordingly.  Please let us know if the text should be
reworded.

Original:
 This document defines XML schema version 1.0.

Currently:
 This document uses XML schema version 1.0 [W3C.REC-xml-20081126]. -->

 The version usage is
similar in philosophy to XMPP (<xref target="RFC6120"/>). the Extensible Messaging and Presence Protocol (XMPP) <xref target="RFC6120" format="default"/>.
A version number has major and minor components, each a non-negative integer.
Major
Changes to the major version changes denote non-interoperable changes.
Minor
Changes to the minor version changes denote schema changes that are backward compatible
by ignoring unknown XML elements, elements or other backward compatible backward-compatible changes.
</t><t>
</t>
      <t>
The minor versions of the XML schema MUST <bcp14>MUST</bcp14> be backward compatible,
not only in terms of the schema but also semantically and procedurally as well.
This means that they should define further features and functionality besides
those defined in the previous versions, in an incremental way, without impacting
the basic rules defined in the previous version of the schema.
In this way, if a MP is able to speak, e.g., "speak", for example, version 1.5 of the protocol while the
MC only understands version 1.4,
the MP should have no problem in reverting the dialogue back to version 1.4
without exploiting 1.5 features and functionality.
Version 1.4 is
the one to be spoken and has to appear in the "v"
attribute of the subsequent CLUE messages.
In other words, in this example, the  MP
MUST
<bcp14>MUST</bcp14> use version 1.4.
This
That said, and coherently in keeping with the general IETF
"protocol robustness
protocol "robustness principle" stating that
"an
an implementation must be conservative in its sending behavior, behavior
and liberal in its receiving behavior" behavior <xref target="RFC1122"/>, target="RFC1122" format="default"/>,
CLUE Participants
MUST
<bcp14>MUST</bcp14> ignore unknown elements or attributes that are not envisioned
in the negotiated protocol version and related extensions.
</t>
    </section>
    <section title="Extensions"
anchor="sec-ext"> anchor="sec-ext" numbered="true" toc="default">
      <name>Extensions</name>
      <t>
Although the standard version of the CLUE protocol XML schema is designed
to thoroughly cope with the requirements emerging from the application domain,
new needs might arise arise, and new extensions can then be designed.
Extensions specify information and behaviors
that are not described in a certain version of the protocol and specified
in the related RFC document. Such information and behaviors can be optionally
used in a CLUE dialogue and MUST <bcp14>MUST</bcp14> be negotiated in the CLUE initiation phase.
They can relate to:
</t>

<t>
<list style="numbers">
<t>
      <ol spacing="normal" type="1">
        <li>
    new information, to be carried in the existing messages.
    For example, more fields may be added within an existing message;
</t>
<t> message.
</li>
        <li>
    new messages.
    This is the case if there is no proper message for a certain task,
    so a brand new CLUE message needs to be defined.
</t>
</list>
</t>
</li>
      </ol>
      <t>
As to the first type category of extensions, it is possible to distinguish between
protocol-specific and data model information.
Indeed, CLUE messages are envelopes carrying both: both of the following:
</t>

<t>
<list style="symbols">
<t> (i) XML
      <ol spacing="normal">
        <li>XML elements defined within the CLUE protocol XML schema itself
(protocol-specific information)</t>
<t>  (ii) other information).</li>
        <li>other XML elements compliant to the CLUE data model schema
(data model information)</t>
</list>
</t> information).</li>
      </ol>
      <t>
When new protocol-specific information is needed somewhere in the protocol
messages, it can be added in place of the &lt;any&gt; elements and
&lt;anyAttribute&gt; elements envisioned by the protocol schema.
The policy currently defined in the protocol schema for handling
&lt;any&gt; and &lt;anyAttribute&gt; elements is as follows:

<!-- [rfced] Section 8:  We could not determine what the word
"policy" means here.  Does it refer to the two parameter settings,
or something else?

Original:
 The
 policy currently defined in the protocol schema for handling <any>
 and <anyAttribute> elements is:

 o  elementFormDefault="qualified"

 o  attributeFormDefault="unqualified" -->

</t>

<t>
<list style="symbols">
<t> elementFormDefault="qualified"</t>
<t> attributeFormDefault="unqualified"</t>
</list>
</t>
      <ul spacing="normal">
        <li> elementFormDefault="qualified"</li>
        <li> attributeFormDefault="unqualified"</li>
      </ul>
      <t>
The new information must be qualified by namespaces
other than "urn:ietf:params:xml:ns:clue-protocol" (the protocol URN)
and "urn:ietf:params:xml:ns:clue-info" (the data model URN).
Elements or attributes from unknown namespaces MUST <bcp14>MUST</bcp14> be ignored.
</t>
      <t>
The other matter concerns data model information.
Data model information is defined by the XML schema associated
with the URN "urn:ietf:params:xml:ns:clue-info".
Also
Note that there are also extensibility issues for the XML elements defined in such a schema there are extensibility issues. schema.
Those issues are overcome by using &lt;any&gt; and &lt;anyAttribute&gt;
placeholders.
New information within data model elements can be added in place
of &lt;any&gt; and &lt;anyAttribute&gt; schema elements, as long as they are properly namespace qualified.
</t>
      <t>On the other hand (second type (the second category of extensions), "extra" CLUE protocol messages,
i.e., messages not envisioned in the latest standard version of the schema, can might be needed.
In that case, the messages and the associated behavior should be defined in
external documents that both communication parties must be aware of.
</t>
      <t>
As reported shown in <xref target="fig:extension"/>, target="fig_extension" format="default"/>, the
fields of the &lt;extension&gt; element (either new information
or new messages) take the following values:
</t>

<t>
<list style="symbols">
<t>a name;</t>
<t>an
      <ul spacing="normal">
        <li>a name.</li>
        <li>an external XML Schema schema defining the XML information and/or the XML
messages representing the extension;</t>
<t>the extension.</li>
        <li>the major standard version of the protocol that the extension
refers to.</t>
</list>
</t>

<t> to.</li>
      </ul>
      <figure
	align="center"
   	title = "The anchor="fig_extension">
        <name>The &lt;extension&gt; element"
   	anchor="fig:extension">
<artwork>
<![CDATA[ Element</name>
<sourcecode name="" type="xml"><![CDATA[
  <xs:complexType name="extensionType">
    <xs:sequence>
      <xs:element name="name" type="xs:string" />
      <xs:element name="schemaRef" type="xs:anyURI"/>
      <xs:element name="version" type="versionType"/>
      <xs:any namespace="##other" processContents="lax"
            minOccurs="0"/>
    </xs:sequence>
    <xs:anyAttribute namespace="##other" processContents="lax"/>
  </xs:complexType>
]]>
</artwork>
  </xs:complexType>]]></sourcecode> </figure>
</t>
      <t>
The above described above-described &lt;extension&gt; element is carried within
the 'options' and 'optionsResponse' messages to
represent the extensions supported both by both the CI and the CR.
</t>
      <t>
Extensions MUST <bcp14>MUST</bcp14> be defined in a separate XML schema file and
MUST
<bcp14>MUST</bcp14> be provided with a companion document describing their semantics
and use.
</t>
      <section title="Extension example" anchor="sec-extension-example"> anchor="sec-extension-example" numbered="true" toc="default">
        <name>Extension Example</name>
        <t>
An example of an extension might be a "new" capture attribute (i.e., a
capture attribute that is not envisioned in the current standard
defining the CLUE data model in
<xref target="I-D.ietf-clue-data-model-schema"/>) target="RFC8846" format="default"/>) needed to further
describe a video capture.
</t>
        <t>
The CLUE data model document (<xref target="I-D.ietf-clue-data-model-schema"/>) <xref target="RFC8846" format="default"/>
envisions the possibility of adding this kind of
"extra" information in the description of a video capture.
For the sake of convenience, the XML definition of a video capture taken
from <xref target="I-D.ietf-clue-data-model-schema"/> target="RFC8846" format="default"/> is
reported
shown in <xref target="fig:video_capture"/> target="fig_video_capture" format="default"/> below.
</t>
        <figure
	align="center"
   	title = "XML definition anchor="fig_video_capture">
          <name>XML Definition of a CLUE video capture"
   	anchor="fig:video_capture">
<artwork>
  <![CDATA[ Video Capture</name>
<sourcecode name="" type="xml"><![CDATA[
<!-- VIDEO CAPTURE TYPE -->
   <xs:complexType name="videoCaptureType">
    <xs:complexContent>
     <xs:extension base="tns:mediaCaptureType">
      <xs:sequence>
       <xs:any namespace="##other" processContents="lax"
             minOccurs="0"
       maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:anyAttribute namespace="##other" processContents="lax"/>
     </xs:extension>
    </xs:complexContent>
   </xs:complexType>
]]>
</artwork>
   </xs:complexType>]]></sourcecode> </figure>
        <t>
According to such a definition, a video capture might have,
after the set of the generic media capture attributes,
a set of new attributes defined elsewhere, i.e.,
in an XML schema defining an extension.
The XML schema defining the extension might look like the following
(<xref target="fig:xml_extension"/>): target="fig_xml_extension" format="default"/>):

</t>

        <figure
	align="center"
   	title = "XML schema defining anchor="fig_xml_extension">
          <name>XML Schema Defining an extension"
   	anchor="fig:xml_extension">
<artwork>
<![CDATA[ Extension</name>
<sourcecode name="" type="xml"><![CDATA[
<?xml version="1.0" encoding="UTF-8" ?>
<xs:schema version="1.0"
  targetNamespace="http://example.extensions.com/myVideoExtensions"
  xmlns:xs="http://www.w3.org/2001/XMLSchema"
  xmlns="http://example.extensions.com/myVideoExtensions"
  targetNamespace="https://example.extensions.com/myVideoExtensions"
  xmlns:xs="https://www.w3.org/2001/XMLSchema"
  xmlns="https://example.extensions.com/myVideoExtensions"
  elementFormDefault="qualified"
  attributeFormDefault="unqualified">

        <!--
              This is the new element to be put in place of the <any>
              element in the video capture definition
              of the CLUE data model schema
        -->

        <xs:element name="myVideoExtension">
                <xs:complexType>
                        <xs:sequence>
                             <xs:element ref="newVideoAttribute1"/>
                             <xs:element ref="newVideoAttribute2"/>
                        </xs:sequence>
                </xs:complexType>
        </xs:element>

        <xs:element name="newVideoAttribute1" type="xs:string"/>

        <xs:element name = "newVideoAttribute2" type = "xs:boolean"/>
</xs:schema>

]]>
</artwork>
</xs:schema>]]></sourcecode> </figure>
        <t>
By using the extension above, a video capture can be further described
in the advertisement using the &lt;myVideoExtension&gt;
element containing two extra pieces of information (&lt;newVideoAttribute1&gt;
and &lt;newVideoAttribute2&gt;) &lt;newVideoAttribute2&gt;),
besides using the attributes envisioned for a generic media capture.
As stated in this document,
both participants must be aware of the extension schema and
related semantics to use such an extension and must negotiate
it via the 'options' and 'optionsResponse' mechanism. messages.
</t>
      </section>
    </section>
    <section title="XML Schema" anchor="sec-schema">
<t>
NOTE TO THE RFC-Editor: Please replace "data-model-schema-19.xsd" with
the right schema location for the CLUE data model schema document
(which is still to be defined at the time of this writing)
in this section prior to publication as an RFC.
</t> anchor="sec-schema" numbered="true" toc="default">
      <name>XML Schema</name>
      <t>
In this section, the
The XML schema defining the CLUE messages is provided below
(<xref target="fig:clue_schema"/>). target="fig_clue_schema" format="default"/>).
</t>
<t>

      <figure
	align="center"
   	title = "Schema defining anchor="fig_clue_schema">
        <name>Schema Defining CLUE messages"
   	anchor="fig:clue_schema">

 <artwork>
  <![CDATA[ Messages</name>
<sourcecode name="" type="xml"><![CDATA[
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xs="https://www.w3.org/2001/XMLSchema"
        xmlns="urn:ietf:params:xml:ns:clue-protocol"
        xmlns:dm="urn:ietf:params:xml:ns:clue-info"
	xmlns:tns="urn:ietf:params:xml:ns:clue-protocol"
        version="1.0"
        targetNamespace="urn:ietf:params:xml:ns:clue-protocol"
        elementFormDefault="qualified"
        attributeFormDefault="unqualified">
  <!-- Import data model schema -->
  <xs:import namespace="urn:ietf:params:xml:ns:clue-info"
  	schemaLocation="clue-data-model-schema-19.xsd" /> namespace="urn:ietf:params:xml:ns:clue-info"/>
  <!-- ELEMENT DEFINITIONS -->
  <xs:element name="options" type="optionsMessageType" />
  <xs:element name="optionsResponse"
        type="optionsResponseMessageType"/>
  <xs:element name="advertisement" type="advertisementMessageType"/>
  <xs:element name="ack" type="advAcknowledgementMessageType"/>
  <xs:element name="configure" type="configureMessageType"/>
  <xs:element name="configureResponse"
        type="configureResponseMessageType"/>
  <!-- CLUE MESSAGE TYPE -->
  <xs:complexType name="clueMessageType" abstract="true">
    <xs:sequence>
      <xs:element name="clueId" type="xs:string" minOccurs="0" />
      <xs:element name="sequenceNr" type="xs:positiveInteger" />
    </xs:sequence>
    <xs:attribute name="protocol" type="xs:string" fixed="CLUE"
        use="required" />
    <xs:attribute name="v" type="versionType" use="required" />
  </xs:complexType>
  <!-- CLUE RESPONSE TYPE -->
  <xs:complexType name="clueResponseType">
    <xs:complexContent>
      <xs:extension base="clueMessageType">
        <xs:sequence>
          <xs:element name="responseCode" type="responseCodeType" />
          <xs:element name="reasonString" type="xs:string"
                minOccurs="0"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <!-- VERSION TYPE -->
  <xs:simpleType name="versionType">
    <xs:restriction base="xs:string">
      <xs:pattern value="[1-9][0-9]*\.[0-9]+" />
    </xs:restriction>
  </xs:simpleType>
  <!-- RESPONSE CODE TYPE -->
  <xs:simpleType name="responseCodeType">
    <xs:restriction base="xs:integer">
      <xs:pattern value="[1-9][0-9][0-9]" />
    </xs:restriction>
  </xs:simpleType>
  <!-- SUCCESS RESPONSE CODE TYPE -->
  <xs:simpleType name="successResponseCodeType">
    <xs:restriction base="xs:integer">
      <xs:pattern value="2[0-9][0-9]" />
    </xs:restriction>
  </xs:simpleType>
  <!-- CLUE OPTIONS -->
  <xs:complexType name="optionsMessageType">
    <xs:complexContent>
      <xs:extension base="clueMessageType">
        <xs:sequence>
          <xs:element name="mediaProvider" type="xs:boolean"/>
          <xs:element name="mediaConsumer" type="xs:boolean"/>
          <xs:element name="supportedVersions"
                type="versionsListType"
                minOccurs="0" />
          <xs:element name="supportedExtensions"
                type="extensionsListType" minOccurs="0"/>
          <xs:any namespace="##other" processContents="lax"
                minOccurs="0"/>
        </xs:sequence>
        <xs:anyAttribute namespace="##other" processContents="lax"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <!-- VERSIONS LIST TYPE -->
  <xs:complexType name="versionsListType">
    <xs:sequence>
      <xs:element name="version" type="versionType" minOccurs="1"
        maxOccurs="unbounded"/>
      <xs:any namespace="##other" processContents="lax"
        minOccurs="0"/>
    </xs:sequence>
    <xs:anyAttribute namespace="##other" processContents="lax" />
  </xs:complexType>
  <!-- EXTENSIONS LIST TYPE -->
  <xs:complexType name="extensionsListType">
    <xs:sequence>
      <xs:element name="extension" type="extensionType"
        minOccurs="1"
        maxOccurs="unbounded"/>
      <xs:any namespace="##other" processContents="lax"
        minOccurs="0"/>
    </xs:sequence>
    <xs:anyAttribute namespace="##other" processContents="lax" />
  </xs:complexType>
  <!-- EXTENSION TYPE -->
  <xs:complexType name="extensionType">
    <xs:sequence>
      <xs:element name="name" type="xs:string" />
      <xs:element name="schemaRef" type="xs:anyURI" />
      <xs:element name="version" type="versionType" />
      <xs:any namespace="##other" processContents="lax"
        minOccurs="0"/>
    </xs:sequence>
    <xs:anyAttribute namespace="##other" processContents="lax"/>
  </xs:complexType>
  <!-- CLUE 'optionsResponse' -->
  <xs:complexType name="optionsResponseMessageType">
    <xs:complexContent>
      <xs:extension base="clueResponseType">
        <xs:sequence>
          <xs:element name="mediaProvider" type="xs:boolean"
                minOccurs="0"/>
          <xs:element name="mediaConsumer" type="xs:boolean"
                minOccurs="0"/>
          <xs:element name="version" type="versionType"
                minOccurs="0"/>
          <xs:element name="commonExtensions"
                type="extensionsListType" minOccurs="0"/>
          <xs:any namespace="##other" processContents="lax"
                minOccurs="0"/>
        </xs:sequence>
        <xs:anyAttribute namespace="##other" processContents="lax"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <!-- CLUE ADVERTISEMENT MESSAGE TYPE -->
  <xs:complexType name="advertisementMessageType">
    <xs:complexContent>
      <xs:extension base="clueMessageType">
        <xs:sequence>
          <!-- mandatory -->
          <xs:element name="mediaCaptures"
                type="dm:mediaCapturesType"/>
          <xs:element name="encodingGroups"
                type="dm:encodingGroupsType"/>
          <xs:element name="captureScenes"
                type="dm:captureScenesType"/>
          <!-- optional -->
          <xs:element name="simultaneousSets"
                type="dm:simultaneousSetsType" minOccurs="0"/>
          <xs:element name="globalViews" type="dm:globalViewsType"
                minOccurs="0"/>
          <xs:element name="people"
                type="dm:peopleType" minOccurs="0"/>
          <xs:any namespace="##other" processContents="lax"
                minOccurs="0"/>
        </xs:sequence>
        <xs:anyAttribute namespace="##other" processContents="lax"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <!-- 'ack' MESSAGE TYPE -->
  <xs:complexType name="advAcknowledgementMessageType">
    <xs:complexContent>
      <xs:extension base="clueResponseType">
        <xs:sequence>
          <xs:element name="advSequenceNr"
                type="xs:positiveInteger"/>
          <xs:any namespace="##other" processContents="lax"
                minOccurs="0"/>
        </xs:sequence>
        <xs:anyAttribute namespace="##other" processContents="lax"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <!-- CLUE 'configure' MESSAGE TYPE -->
  <xs:complexType name="configureMessageType">
    <xs:complexContent>
      <xs:extension base="clueMessageType">
        <xs:sequence>
          <!-- mandatory fields -->
          <xs:element name="advSequenceNr"
                type="xs:positiveInteger"/>
          <xs:element name="ack" type="successResponseCodeType"
                minOccurs="0"/>
          <xs:element name="captureEncodings"
                type="dm:captureEncodingsType" minOccurs="0"/>
          <xs:any namespace="##other" processContents="lax"
                minOccurs="0"/>
        </xs:sequence>
        <xs:anyAttribute namespace="##other" processContents="lax"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <!-- 'configureResponse' MESSAGE TYPE -->
  <xs:complexType name="configureResponseMessageType">
    <xs:complexContent>
      <xs:extension base="clueResponseType">
        <xs:sequence>
          <xs:element name="confSequenceNr"
                type="xs:positiveInteger"/>
          <xs:any namespace="##other" processContents="lax"
                minOccurs="0"/>
        </xs:sequence>
        <xs:anyAttribute namespace="##other" processContents="lax"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
</xs:schema>
]]>
</artwork>
</xs:schema>]]></sourcecode> </figure>
</t>
    </section>
    <section title="Call flow example"> numbered="true" toc="default">
      <name>Call Flow Example</name>
      <t>
In this
This section describes the CLUE protocol messages exchanged in the following
call flow are detailed.
Only flow.  For simplicity, only one direction of media is shown for simplicity, shown, as the other direction is
precisely symmetric.
</t>
<t>
<figure>
<artwork>
  <![CDATA[
      <artwork name="" type="" align="left" alt=""><![CDATA[
                   +-----+             +-----+
                   |     |             |     |
                   | CP1 |             | CP2 |
                   |     |             |     |
                   +--+--+             +--+--+
                      |                   |
                      |   1.options      |
    +----------------->|
    |                  |    1. options     |
                      +------------------>|
                      |
    |2.optionsResponse                   |
    |<-----------------+
                      |                   |
                      |2. optionsResponse |
                      |<------------------+
                      |                   | 3.advertisement
                      |
    +----------------->|                   |
                      |3. advertisement   |
                      +------------------>|
                      |                   |
    |4.configure+ack
                      |
    |<-----------------+                   |
                      |4. configure+ack   |
                      |<------------------+
                      |                   |
    |5.confResponse
                      |
    +----------------->|                   |
                      |5. confResponse    |
                      +------------------>|
                      |                   |
    |6.advertisement
                      |
    +----------------->|                   |
                      |6. advertisement   |
                      +------------------>|
                      |                   |
                      |    7.ack                   |
    |<-----------------+
                      |    7. ack         |
                      |<------------------+
                      |                   |
                      | 8.configure                   |
    |<-----------------+
                      |8. configure       |
                      |<------------------+
                      |                   |
                      |                   | 9.confResponse
                      |9. confResponse    |
    +----------------->|
                      +------------------>|
                      |                   |
                      |                   |
                      .                   .
                      .                   .
                      .                  .
]]>
</artwork>
</figure>
</t>                   .]]></artwork>

<!-- [rfced] Sections 10 and subsequent:
Are 'confResponse' and 'configureResponse' two distinct things, or
the same thing?  We ask because of the use of both 'confResponse' and
'configureResponse' in Section 10 and at the beginning of
Sections 10.5 and 10.9:

Original:
 |5.confResponse    |
...
 | 9.confResponse   |
...
 CP1 answers to CP2's 'configure + ack' message with a
 'configureResponse' message including a response code '200 - Success'
 to accept all CP2's requests (Section 10.5).
...
 Finally, CP1 accept the last requests of CP2 with a 'confResponse'
 message (Section 10.9)
...
10.5.  CLUE message nr. 5: 'confResponse'

   <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
   <ns2:configureResponse xmlns="urn:ietf:params:xml:ns:clue-info"
...
10.9.  CLUE message nr. 9: 'confResponse'

   <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
   <ns2:configureResponse xmlns="urn:ietf:params:xml:ns:clue-info" -->

      <t>
Two CLUE Participants, CP1 and CP2, have successfully set up the CLUE channel according to
document
<xref target="I-D.ietf-clue-datachannel"/>. target="RFC8850" format="default"/>.
CP1 is the Channel Initiator (CI) CI, and CP2 is the Channel Receiver (CR). CR.
</t>
<t>
The

<ul spacing="normal">
<li>The initiation phase starts (negotiation of the CLUE protocol version and extensions).
CP1, as the CI, sends to CP2 an 'options' message specifying the supported versions and extensions (<xref target="opt-example"/>). target="opt-example" format="default"/>).
CP1 supports: supports (i) version 1.4 with extensions E1, E2 E2, and E3, (ii) version E3 and (ii)&nbsp;version 2.7 with extensions E4 and E5.
Because of such capabilities, CP1 sends an 'options' message with the 'v' "v"
attribute set to 1.4 "1.4" and specifies explicitly specifies all the supported versions
and extensions in the corresponding fields of the 'options' message.
In the 'options' message, CP1 specifies also specifies that it intends to act both as a MP act as both a MP and a MC.</li>
<li>CP2 supports versions 3.0, 2.9, and 1.9 of the CLUE protocol, each version without any extensions.
Version 2.7 is the best common choice.

<!-- [rfced] Section 10:  As there is only one instance of "2.9" in
this document and the next two sentences list 2.7 as the best common
or agreed-upon choice, should "2.9" be "2.7" here?
(We also see "2.7" linked to E4 and as a MC.
</t>
<t> E5 in the XML in Section 10.1.)

Original (the next two sentences are included for context):
 CP2 supports version 3.0, version 2.9 and version 1.9 of the CLUE
 protocol, each version without any extension.  Version 2.7 is the
 best common choice.  Given the received 'options' message, CP2
 answers with an 'optionsResponse' message in which it specifies only
 version 2.7 as the agreed version agreed version of the CLUE protocol to be used,
 leaving blank the extensions part of the message to say that no
 extension will be used in the CLUE session (Section 10.2). -->

Given the received 'options' message, CP2 answers with an 'optionsResponse' message in which it specifies only version 2.7 as the agreed-upon version
of the CLUE protocol to be used, leaving blank the extensions part of the message to say that no extensions will be used in the CLUE session
 (<xref target="optRes-example" format="default"/>).
In the 'optionsResponse' message, CP2 also specifies that it intends to act as both a MP and a MC.</li>
</ul>
      <t>
After the initiation phase is completed, CP1 and CP2 start their activity as
the MP and the MC, respectively.
For the sake of simplicity, the rest of the call flow focuses only on the dialogue between MP
CP1 and MC CP2.
</t>
  <ul spacing="normal">
<li>CP1 advertises a telepresence configuration like the one described in
<xref target="RFC8846" sectionFormat="comma" section="27"/>,
 where there are
(i) three main video streams captured by three cameras, with the central camera capable of capturing a zoomed-out view of the overall telepresence room,
(ii)&nbsp;a multicontent capture of the loudest segment of the room, and
(iii)&nbsp;one audio capture for the audio of the whole room (<xref
target="adv-example" format="default"/>).

<!-- [rfced] Sections 10 and 12.3:  The following references to
sections were unclear.  We updated them as follows.  Please review
our updates carefully, and let us know if anything is incorrect.

Original:
 CP1 advertises a telepresence configuration like the one described in
 [I-D.ietf-clue-data-model-schema], Sec. Sample XML File, where there
 are (i) three main video streams captured by three cameras, the
 central one capable of capturing a zoomed-out view of the CLUE protocol to be used, leaving blank overall
 telepresence room, (ii) a multi-content capture of the extensions part loudest
 segment of the message to say that no extension will be used in room, and (iii) one audio capture for the CLUE session
 (<xref target="optRes-example"/>).
In audio of the 'optionsResponse' message,
 whole room (Section 10.3).
...
 To reflect the changes in its telepresence offer, CP1 issues a new
 'advertisement' message to CP2 specifies (Section 10.6), this time adding also that it intends to act both as
 a MP and as composed capture made by a MC.
</t>

<t>
After big picture representing the initiation phase is completed, CP1 and CP2 start their activity as MP current
 speaker and as MC.
For the sake of simplicity, two picture-in-picture boxes representing the following call flow focuses only on previous
 speakers (see more details about the dialogue between MP
CP1 telepresence description in
 [I-D.ietf-clue-data-model-schema], Sec. MCC example).
...
 This media type does not provide
 any protection and MC CP2.
</t>
<t> thus other mechanisms such as those described in
 Section Security are required to protect the data.

Currently:
*  CP1 advertises a telepresence configuration like the one described
    in
<xref target="I-D.ietf-clue-data-model-schema"/>, Sec. Sample XML File, [RFC8846], Section 27, where there are (i) three main video
    streams captured by three cameras, with the central one camera capable
    of capturing a zoomed-out view of the overall telepresence room,
    (ii) a multi-content multicontent capture of the loudest segment of the room,
    and (iii) one audio capture for the audio of the whole room  (<xref target="adv-example"/>).
</t>
<t>
    (Section 10.3).
...
 *  To reflect the changes in its telepresence offer, CP1 issues a new
    'advertisement' message to CP2 (Section 10.6), this time also
    adding a composed capture made of a big picture representing the
    current speaker and two picture-in-picture boxes representing the
    previous speakers (see [RFC8846], Section 28 for more details
    regarding the telepresence description).
...
 This media type does not
 provide any protection; thus, other mechanisms, such as those
 described in Section 11 of this document, are required to protect
 the data. -->

</li>
<li>CP2 receives CP1's 'advertisement' message and, after processing it, sends
back to CP1 a 'configure + ack' message where in which it declares to be interested only its interest in the
multi-content
multicontent capture and in the audio capture only (<xref target="confAck-example"/>).
</t>
<t>
CP1 target="confAck-example"
format="default"/>).</li>
<li>CP1 answers to CP2's 'configure + ack' message with a 'configureResponse'
message including that includes a 200 (Success) response code '200 - Success' to accept all of CP2's requests
 (<xref target="confRes-example"/>).
</t>
<t>
To target="confRes-example" format="default"/>).</li>
<li>To reflect the changes in its telepresence offer, CP1 issues a new 'advertisement' message to CP2
 (<xref target="adv2-example"/>), target="adv2-example" format="default"/>), this time adding also adding a composed
capture made by of a big picture representing the current speaker and two picture-in-picture boxes representing the previous speakers
(see <xref target="RFC8846" sectionFormat="comma" section="28"/> for
more details about regarding the telepresence description in <xref target="I-D.ietf-clue-data-model-schema"/>, Sec. MCC example).
</t>
<t>
CP2 description).</li>
<li>CP2 acknowledges the second 'advertisement' message with an 'ack' message  (<xref target="ack-example"/>).
</t>
<t>
In target="ack-example" format="default"/>).</li>
<li>In a second moment, CP2 changes the requested media streams from CP1 by sending to CP1 a 'configure' message replacing the
previously selected video streams with the new composed media streams advertised by CP1
 (<xref target="conf-example"/>). target="conf-example" format="default"/>).

<!-- [rfced] Section 10:  Please clarify the meaning of "second
moment."

Original:
 In a second moment, CP2 changes the requested media streams from CP1
 by sending to CP1 a 'configure' message replacing the previously
 selected video streams with the new composed media streams advertised
 by CP1 (Section 10.8). -->

 Media streams from the previous configuration continue to
 flow during the reconfiguration process.
</t>
<t>
Finally, process.</li>
<li>Finally, CP1 accept the last requests of CP2 accepts CP2's latest request with a 'confResponse' message (<xref target="confRes2-example"/>)</t>
<t>
We target="confRes2-example" format="default"/>).</li>
  </ul>

<t>We would also remark like to point out that in the depicted flow three distinct sequence number spaces per sender are involved
(two of which appear in the snippets snippets, since we only show one direction of media). The discontinuity
between the sequence number values in <xref target="optRes-example"/> Sections&nbsp;<xref target="optRes-example" format="counter"/> and <xref target="adv-example"/> target="adv-example" format="counter"/>
is hence correct.
</t>

      <section title="CLUE message nr. anchor="opt-example" numbered="true" toc="default">
        <name>CLUE Message No. 1: 'options'" anchor="opt-example">
<t>
<figure>
<artwork>
  <![CDATA[ 'options'</name>
<sourcecode name="" type="xml"><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<options xmlns="urn:ietf:params:xml:ns:clue-protocol"
 xmlns:ns2="urn:ietf:params:xml:ns:clue-info"
 xmlns:ns3="urn:ietf:params:xml:ns:vcard-4.0"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="urn:ietf:params:xml:ns:clue-protocol
 http://wpage.unina.it/spromano/clue-protocol-17-schema-file.xsd"
 xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
 protocol="CLUE" v="1.4">
    <clueId>CP1</clueId>
    <sequenceNr>51</sequenceNr>
    <mediaProvider>true</mediaProvider>
    <mediaConsumer>true</mediaConsumer>
    <supportedVersions>
        <version>1.4</version>
        <version>2.7</version>
    </supportedVersions>
    <supportedExtensions>
        <extension>
                <name>E1</name>
                <schemaRef>URL_E1</schemaRef>
                <version>1.4</version>
        </extension>
        <extension>
                <name>E2</name>
                <schemaRef>URL_E2</schemaRef>
                <version>1.4</version>
        </extension>
        <extension>
                <name>E3</name>
                <schemaRef>URL_E3</schemaRef>
                <version>1.4</version>
        </extension>
        <extension>
                <name>E4</name>
                <schemaRef>URL_E4</schemaRef>
                <version>2.7</version>
        </extension>
        <extension>
                <name>E5</name>
                <schemaRef>URL_E5</schemaRef>
                <version>2.7</version>
        </extension>
    </supportedExtensions>
</options>
  ]]>
</artwork>
</figure>
</t>
</options>]]></sourcecode>
      </section>
      <section title="CLUE message nr. anchor="optRes-example" numbered="true" toc="default">
        <name>CLUE Message No. 2: 'optionsResponse'" anchor="optRes-example">
<t>
<figure>
<artwork>
<![CDATA[ 'optionsResponse'</name>
<sourcecode name="" type="xml"><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<optionsResponse xmlns="urn:ietf:params:xml:ns:clue-protocol"
 xmlns:ns2="urn:ietf:params:xml:ns:clue-info"
 xmlns:ns3="urn:ietf:params:xml:ns:vcard-4.0"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="urn:ietf:params:xml:ns:clue-protocol
 http://wpage.unina.it/spromano/clue-protocol-17-schema-file.xsd"
 xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
 protocol="CLUE" v="1.4">
    <clueId>CP2</clueId>
    <sequenceNr>62</sequenceNr>
    <responseCode>200</responseCode>
    <reasonString>Success</reasonString>
    <mediaProvider>true</mediaProvider>
    <mediaConsumer>true</mediaConsumer>
    <version>2.7</version>
</optionsResponse>
]]>
</artwork>
</figure>
</t>
</optionsResponse>]]></sourcecode>
      </section>
      <section title="CLUE message nr. anchor="adv-example" numbered="true" toc="default">
        <name>CLUE Message No. 3: 'advertisement'" anchor="adv-example">
<t>
<figure>
<artwork>
<![CDATA[ 'advertisement'</name>
<sourcecode name="" type="xml"><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:advertisement xmlns="urn:ietf:params:xml:ns:clue-info"
 xmlns:ns2="urn:ietf:params:xml:ns:clue-protocol"
 xmlns:ns3="urn:ietf:params:xml:ns:vcard-4.0"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="urn:ietf:params:xml:ns:clue-protocol
 http://wpage.unina.it/spromano/clue-protocol-17-schema-file.xsd"
 xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
 protocol="CLUE" v="2.7">
    <ns2:clueId>CP1</ns2:clueId>
    <ns2:sequenceNr>11</ns2:sequenceNr>
    <ns2:mediaCaptures>
      <mediaCapture
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
         xsi:type="audioCaptureType" captureID="AC0"
         mediaType="audio">
         <captureSceneIDREF>CS1</captureSceneIDREF>
            <spatialInformation>
                <captureOrigin>
                   <capturePoint>
                      <x>0.0</x>
                      <y>0.0</y>
                      <z>10.0</z>
                 </capturePoint>
                 <lineOfCapturePoint>
                   <x>0.0</x>
                   <y>1.0</y>
                   <z>10.0</z>
                  </lineOfCapturePoint>
                </captureOrigin>
              </spatialInformation>
             <individual>true</individual>
             <encGroupIDREF>EG1</encGroupIDREF>
             <description lang="en">main audio from the room
             </description>
             <priority>1</priority>
             <lang>it</lang>
             <mobility>static</mobility>
             <view>room</view>
             <capturedPeople>
                 <personIDREF>alice</personIDREF>
                 <personIDREF>bob</personIDREF>
                 <personIDREF>ciccio</personIDREF>
             </capturedPeople>
         </mediaCapture>
         <mediaCapture
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
          xsi:type="videoCaptureType" captureID="VC0"
          mediaType="video">
             <captureSceneIDREF>CS1</captureSceneIDREF>
             <spatialInformation>
                 <captureOrigin>
                         <capturePoint>
                         <x>-2.0</x>
                         <y>0.0</y>
                         <z>10.0</z>
                     </capturePoint>
                 </captureOrigin>
                 <captureArea>
                         <bottomLeft>
                         <x>-3.0</x>
                         <y>20.0</y>
                         <z>9.0</z>
                         </bottomLeft>
                         <bottomRight>
                         <x>-1.0</x>
                         <y>20.0</y>
                         <z>9.0</z>
                         </bottomRight>
                         <topLeft>
                         <x>-3.0</x>
                         <y>20.0</y>
                         <z>11.0</z>
                         </topLeft>
                         <topRight>
                         <x>-1.0</x>
                         <y>20.0</y>
                         <z>11.0</z>
                         </topRight>
                 </captureArea>
             </spatialInformation>
             <individual>true</individual>
             <encGroupIDREF>EG0</encGroupIDREF>
             <description lang="en">left camera video capture
             </description>
             <priority>1</priority>
             <lang>it</lang>
             <mobility>static</mobility>
             <view>individual</view>
             <capturedPeople>
                 <personIDREF>ciccio</personIDREF>
             </capturedPeople>
         </mediaCapture>
         <mediaCapture
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
          xsi:type="videoCaptureType" captureID="VC1"
          mediaType="video">
             <captureSceneIDREF>CS1</captureSceneIDREF>
             <spatialInformation>
                 <captureOrigin>
                         <capturePoint>
                         <x>0.0</x>
                         <y>0.0</y>
                         <z>10.0</z>
                     </capturePoint>
                 </captureOrigin>
                 <captureArea>
                         <bottomLeft>
                         <x>-1.0</x>
                         <y>20.0</y>
                         <z>9.0</z>
                         </bottomLeft>
                         <bottomRight>
                         <x>1.0</x>
                         <y>20.0</y>
                         <z>9.0</z>
                         </bottomRight>
                         <topLeft>
                         <x>-1.0</x>
                         <y>20.0</y>
                         <z>11.0</z>
                         </topLeft>
                         <topRight>
                         <x>1.0</x>
                         <y>20.0</y>
                         <z>11.0</z>
                         </topRight>
                 </captureArea>
             </spatialInformation>
             <individual>true</individual>
             <encGroupIDREF>EG0</encGroupIDREF>
             <description lang="en">central camera video capture
             </description>
             <priority>1</priority>
             <lang>it</lang>
             <mobility>static</mobility>
             <view>individual</view>
             <capturedPeople>
                 <personIDREF>alice</personIDREF>
             </capturedPeople>
         </mediaCapture>
         <mediaCapture
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
          xsi:type="videoCaptureType" captureID="VC2"
          mediaType="video">
             <captureSceneIDREF>CS1</captureSceneIDREF>
             <spatialInformation>
                 <captureOrigin>
                         <capturePoint>
                         <x>2.0</x>
                         <y>0.0</y>
                         <z>10.0</z>
                     </capturePoint>
                 </captureOrigin>
                 <captureArea>
                         <bottomLeft>
                         <x>1.0</x>
                         <y>20.0</y>
                         <z>9.0</z>
                         </bottomLeft>
                         <bottomRight>
                         <x>3.0</x>
                         <y>20.0</y>
                         <z>9.0</z>
                         </bottomRight>
                         <topLeft>
                         <x>1.0</x>
                         <y>20.0</y>
                         <z>11.0</z>
                         </topLeft>
                         <topRight>
                         <x>3.0</x>
                         <y>20.0</y>
                         <z>11.0</z>
                         </topRight>
                 </captureArea>
             </spatialInformation>
             <individual>true</individual>
             <encGroupIDREF>EG0</encGroupIDREF>
             <description lang="en">right camera video capture
             </description>
             <priority>1</priority>
             <lang>it</lang>
             <mobility>static</mobility>
             <view>individual</view>
             <capturedPeople>
                 <personIDREF>bob</personIDREF>
             </capturedPeople>
         </mediaCapture>
         <mediaCapture
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
          xsi:type="videoCaptureType" captureID="VC3"
          mediaType="video">
             <captureSceneIDREF>CS1</captureSceneIDREF>
             <spatialInformation>
                 <captureArea>
                         <bottomLeft>
                         <x>-3.0</x>
                         <y>20.0</y>
                         <z>9.0</z>
                         </bottomLeft>
                         <bottomRight>
                         <x>3.0</x>
                         <y>20.0</y>
                         <z>9.0</z>
                         </bottomRight>
                         <topLeft>
                         <x>-3.0</x>
                         <y>20.0</y>
                         <z>11.0</z>
                         </topLeft>
                         <topRight>
                         <x>3.0</x>
                         <y>20.0</y>
                         <z>11.0</z>
                         </topRight>
                 </captureArea>
             </spatialInformation>
             <content>
                 <sceneViewIDREF>SE1</sceneViewIDREF>
             </content>
             <policy>SoundLevel:0</policy>
             <encGroupIDREF>EG0</encGroupIDREF>
             <description lang="en">loudest room segment</description> segment
             </description>
             <priority>2</priority>
             <lang>it</lang>
             <mobility>static</mobility>
             <view>individual</view>
             </mediaCapture>
         <mediaCapture
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
          xsi:type="videoCaptureType" captureID="VC4"
          mediaType="video">
             <captureSceneIDREF>CS1</captureSceneIDREF>
             <spatialInformation>
                 <captureOrigin>
                         <capturePoint>
                         <x>0.0</x>
                         <y>0.0</y>
                         <z>10.0</z>
                     </capturePoint>
                 </captureOrigin>
                 <captureArea>
                         <bottomLeft>
                         <x>-3.0</x>
                         <y>20.0</y>
                         <z>7.0</z>
                         </bottomLeft>
                         <bottomRight>
                         <x>3.0</x>
                         <y>20.0</y>
                         <z>7.0</z>
                         </bottomRight>
                         <topLeft>
                         <x>-3.0</x>
                         <y>20.0</y>
                         <z>13.0</z>
                         </topLeft>
                         <topRight>
                         <x>3.0</x>
                         <y>20.0</y>
                         <z>13.0</z>
                         </topRight>
                 </captureArea>
             </spatialInformation>
             <individual>true</individual>
             <encGroupIDREF>EG0</encGroupIDREF>
             <description lang="en">zoomed out lang="en">zoomed-out view of all people in
             the room</description>
             <priority>2</priority>
             <lang>it</lang>
             <mobility>static</mobility>
             <view>room</view>
             <capturedPeople>
                 <personIDREF>alice</personIDREF>
                 <personIDREF>bob</personIDREF>
                 <personIDREF>ciccio</personIDREF>
                 </capturedPeople>
         </mediaCapture>
     </ns2:mediaCaptures>
     <ns2:encodingGroups>
         <encodingGroup encodingGroupID="EG0">
             <maxGroupBandwidth>600000</maxGroupBandwidth>
             <encodingIDList>
                 <encodingID>ENC1</encodingID>
                 <encodingID>ENC2</encodingID>
                 <encodingID>ENC3</encodingID>
             </encodingIDList>
         </encodingGroup>
         <encodingGroup encodingGroupID="EG1">
             <maxGroupBandwidth>300000</maxGroupBandwidth>
             <encodingIDList>
                 <encodingID>ENC4</encodingID>
                 <encodingID>ENC5</encodingID>
             </encodingIDList>
         </encodingGroup>
     </ns2:encodingGroups>
     <ns2:captureScenes>
         <captureScene scale="unknown" sceneID="CS1">
             <sceneViews>
                 <sceneView sceneViewID="SE1">
                     <mediaCaptureIDs>
                         <mediaCaptureIDREF>VC0</mediaCaptureIDREF>
                         <mediaCaptureIDREF>VC1</mediaCaptureIDREF>
                         <mediaCaptureIDREF>VC2</mediaCaptureIDREF>
                     </mediaCaptureIDs>
                 </sceneView>
                 <sceneView sceneViewID="SE2">
                     <mediaCaptureIDs>
                         <mediaCaptureIDREF>VC3</mediaCaptureIDREF>
                     </mediaCaptureIDs>
                 </sceneView>
                 <sceneView sceneViewID="SE3">
                     <mediaCaptureIDs>
                         <mediaCaptureIDREF>VC4</mediaCaptureIDREF>
                     </mediaCaptureIDs>
                 </sceneView>
                 <sceneView sceneViewID="SE4">
                     <mediaCaptureIDs>
                         <mediaCaptureIDREF>AC0</mediaCaptureIDREF>
                     </mediaCaptureIDs>
                 </sceneView>
             </sceneViews>
         </captureScene>
     </ns2:captureScenes>
     <ns2:simultaneousSets>
         <simultaneousSet setID="SS1">
             <mediaCaptureIDREF>VC3</mediaCaptureIDREF>
             <sceneViewIDREF>SE1</sceneViewIDREF>
         </simultaneousSet>
         <simultaneousSet setID="SS2">
             <mediaCaptureIDREF>VC0</mediaCaptureIDREF>
             <mediaCaptureIDREF>VC2</mediaCaptureIDREF>
             <mediaCaptureIDREF>VC4</mediaCaptureIDREF>
         </simultaneousSet>
     </ns2:simultaneousSets>
     <ns2:people>
         <person personID="bob">
             <personInfo>
                 <ns3:fn>
                   <ns3:text>Bob</ns3:text>
                 </ns3:fn>
             </personInfo>
             <personType>minute taker</personType>
         </person>
         <person personID="alice">
             <personInfo>
                 <ns3:fn>
                     <ns3:text>Alice</ns3:text>
                 </ns3:fn>
             </personInfo>
             <personType>presenter</personType>
         </person>
         <person personID="ciccio">
             <personInfo>
                 <ns3:fn>
                     <ns3:text>Ciccio</ns3:text>
                 </ns3:fn>
             </personInfo>
             <personType>chairman</personType>
             <personType>timekeeper</personType>
         </person>
     </ns2:people>
</ns2:advertisement>
]]>
</artwork>
</figure>
</t>
</ns2:advertisement>]]></sourcecode>
      </section>
      <section title="CLUE message nr. anchor="confAck-example" numbered="true" toc="default">
        <name>CLUE Message No. 4: 'configure + ack'" anchor="confAck-example">
<t>
<figure>
<artwork>
<![CDATA[ ack'</name>
<sourcecode name="" type="xml"><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:configure xmlns="urn:ietf:params:xml:ns:clue-info"
 xmlns:ns2="urn:ietf:params:xml:ns:clue-protocol"
 xmlns:ns3="urn:ietf:params:xml:ns:vcard-4.0"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="urn:ietf:params:xml:ns:clue-protocol
 http://wpage.unina.it/spromano/clue-protocol-17-schema-file.xsd"
 xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
 protocol="CLUE" v="2.7">
    <ns2:clueId>CP2</ns2:clueId>
    <ns2:sequenceNr>22</ns2:sequenceNr>
    <ns2:advSequenceNr>11</ns2:advSequenceNr>
    <ns2:ack>200</ns2:ack>
    <ns2:captureEncodings>
        <captureEncoding ID="ce123">
           <captureID>AC0</captureID>
           <encodingID>ENC4</encodingID>
        </captureEncoding>
        <captureEncoding ID="ce223">
           <captureID>VC3</captureID>
           <encodingID>ENC1</encodingID>
           <configuredContent>
              <sceneViewIDREF>SE1</sceneViewIDREF>
           </configuredContent>
       </captureEncoding>
    </ns2:captureEncodings>
</ns2:configure>
]]>
</artwork>
</figure>
</t>
</ns2:configure>]]></sourcecode>
      </section>
      <section title="CLUE message nr. anchor="confRes-example" numbered="true" toc="default">
        <name>CLUE Message No. 5: 'confResponse'" anchor="confRes-example">
<t>
<figure>
<artwork>
<![CDATA[ 'confResponse'</name>
<sourcecode name="" type="xml"><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:configureResponse xmlns="urn:ietf:params:xml:ns:clue-info"
 xmlns:ns2="urn:ietf:params:xml:ns:clue-protocol"
 xmlns:ns3="urn:ietf:params:xml:ns:vcard-4.0"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="urn:ietf:params:xml:ns:clue-protocol
 http://wpage.unina.it/spromano/clue-protocol-17-schema-file.xsd"
 xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
 protocol="CLUE" v="2.7">
    <ns2:clueId>CP1</ns2:clueId>
    <ns2:sequenceNr>12</ns2:sequenceNr>
    <ns2:responseCode>200</ns2:responseCode>
    <ns2:reasonString>Success</ns2:reasonString>
    <ns2:confSequenceNr>22</ns2:confSequenceNr>
</ns2:configureResponse>
]]>
</artwork>
</figure>
</t>
</ns2:configureResponse>]]></sourcecode>
      </section>
      <section title="CLUE message nr. anchor="adv2-example" numbered="true" toc="default">
        <name>CLUE Message No. 6: 'advertisement' " anchor="adv2-example">
<t>
<figure>
<artwork>
<![CDATA[ 'advertisement'</name>
<sourcecode name="" type="xml"><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:advertisement xmlns="urn:ietf:params:xml:ns:clue-info"
 xmlns:ns2="urn:ietf:params:xml:ns:clue-protocol"
 xmlns:ns3="urn:ietf:params:xml:ns:vcard-4.0"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="urn:ietf:params:xml:ns:clue-protocol
 http://wpage.unina.it/spromano/clue-protocol-17-schema-file.xsd"
 xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
 protocol="CLUE" v="2.7">
    <ns2:clueId>CP1</ns2:clueId>
    <ns2:sequenceNr>13</ns2:sequenceNr>
    <ns2:mediaCaptures>
         <mediaCapture
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
          xsi:type="audioCaptureType" captureID="AC0"
          mediaType="audio">
             <captureSceneIDREF>CS1</captureSceneIDREF>
             <spatialInformation>
                 <captureOrigin>
                         <capturePoint>
                         <x>0.0</x>
                         <y>0.0</y>
                         <z>10.0</z>
                     </capturePoint>
                     <lineOfCapturePoint>
                         <x>0.0</x>
                         <y>1.0</y>
                         <z>10.0</z>
                     </lineOfCapturePoint>
                 </captureOrigin>
             </spatialInformation>
             <individual>true</individual>
             <encGroupIDREF>EG1</encGroupIDREF>
             <description lang="en">main audio from the room
             </description>
             <priority>1</priority>
             <lang>it</lang>
             <mobility>static</mobility>
             <view>room</view>
             <capturedPeople>
                 <personIDREF>alice</personIDREF>
                 <personIDREF>bob</personIDREF>
                 <personIDREF>ciccio</personIDREF>
             </capturedPeople>
         </mediaCapture>
         <mediaCapture
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
          xsi:type="videoCaptureType" captureID="VC0"
          mediaType="video">
             <captureSceneIDREF>CS1</captureSceneIDREF>
             <spatialInformation>
                 <captureOrigin>
                         <capturePoint>
                         <x>0.5</x>
                         <y>1.0</y>
                         <z>0.5</z>
                     </capturePoint>
                     <lineOfCapturePoint>
                         <x>0.5</x>
                         <y>0.0</y>
                         <z>0.5</z>
                     </lineOfCapturePoint>
                 </captureOrigin>
             </spatialInformation>
             <individual>true</individual>
             <encGroupIDREF>EG0</encGroupIDREF>
             <description lang="en">left camera video capture
             </description>
             <priority>1</priority>
             <lang>it</lang>
             <mobility>static</mobility>
             <view>individual</view>
             <capturedPeople>
                 <personIDREF>ciccio</personIDREF>
             </capturedPeople>
         </mediaCapture>
         <mediaCapture
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
          xsi:type="videoCaptureType" captureID="VC1"
          mediaType="video">
             <captureSceneIDREF>CS1</captureSceneIDREF>
             <spatialInformation>
                 <captureOrigin>
                         <capturePoint>
                         <x>0.0</x>
                         <y>0.0</y>
                         <z>10.0</z>
                     </capturePoint>
                 </captureOrigin>
                 <captureArea>
                         <bottomLeft>
                         <x>-1.0</x>
                         <y>20.0</y>
                         <z>9.0</z>
                         </bottomLeft>
                         <bottomRight>
                         <x>1.0</x>
                         <y>20.0</y>
                         <z>9.0</z>
                         </bottomRight>
                         <topLeft>
                         <x>-1.0</x>
                         <y>20.0</y>
                         <z>11.0</z>
                         </topLeft>
                         <topRight>
                         <x>1.0</x>
                         <y>20.0</y>
                         <z>11.0</z>
                         </topRight>
                 </captureArea>
             </spatialInformation>
             <individual>true</individual>
             <encGroupIDREF>EG0</encGroupIDREF>
             <description lang="en">central camera video capture
             </description>
             <priority>1</priority>
             <lang>it</lang>
             <mobility>static</mobility>
             <view>individual</view>
             <capturedPeople>
                 <personIDREF>alice</personIDREF>
             </capturedPeople>
         </mediaCapture>
         <mediaCapture
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
          xsi:type="videoCaptureType" captureID="VC2"
          mediaType="video">
             <captureSceneIDREF>CS1</captureSceneIDREF>
             <spatialInformation>
                 <captureOrigin>
                         <capturePoint>
                         <x>2.0</x>
                         <y>0.0</y>
                         <z>10.0</z>
                     </capturePoint>
                 </captureOrigin>
                 <captureArea>
                         <bottomLeft>
                         <x>1.0</x>
                         <y>20.0</y>
                         <z>9.0</z>
                         </bottomLeft>
                         <bottomRight>
                         <x>3.0</x>
                         <y>20.0</y>
                         <z>9.0</z>
                         </bottomRight>
                         <topLeft>
                         <x>1.0</x>
                         <y>20.0</y>
                         <z>11.0</z>
                         </topLeft>
                         <topRight>
                         <x>3.0</x>
                         <y>20.0</y>
                         <z>11.0</z>
                         </topRight>
                 </captureArea>
             </spatialInformation>
             <individual>true</individual>
             <encGroupIDREF>EG0</encGroupIDREF>
             <description lang="en">right camera video capture
             </description>
             <priority>1</priority>
             <lang>it</lang>
             <mobility>static</mobility>
             <view>individual</view>
             <capturedPeople>
                 <personIDREF>bob</personIDREF>
             </capturedPeople>
         </mediaCapture>
         <mediaCapture
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
          xsi:type="videoCaptureType" captureID="VC3"
          mediaType="video">
             <captureSceneIDREF>CS1</captureSceneIDREF>
             <spatialInformation>
                 <captureArea>
                         <bottomLeft>
                         <x>-3.0</x>
                         <y>20.0</y>
                         <z>9.0</z>
                         </bottomLeft>
                         <bottomRight>
                         <x>3.0</x>
                         <y>20.0</y>
                         <z>9.0</z>
                         </bottomRight>
                         <topLeft>
                         <x>-3.0</x>
                         <y>20.0</y>
                         <z>11.0</z>
                         </topLeft>
                         <topRight>
                         <x>3.0</x>
                         <y>20.0</y>
                         <z>11.0</z>
                         </topRight>
                 </captureArea>
             </spatialInformation>
             <content>
                 <sceneViewIDREF>SE1</sceneViewIDREF>
             </content>
             <policy>SoundLevel:0</policy>
             <encGroupIDREF>EG0</encGroupIDREF>
             <description lang="en">loudest room segment</description> segment
             </description>
             <priority>2</priority>
             <lang>it</lang>
             <mobility>static</mobility>
             <view>individual</view>
         </mediaCapture>
         <mediaCapture
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
          xsi:type="videoCaptureType" captureID="VC4"
          mediaType="video">
             <captureSceneIDREF>CS1</captureSceneIDREF>
             <spatialInformation>
                 <captureOrigin>
                         <capturePoint>
                         <x>0.0</x>
                         <y>0.0</y>
                         <z>10.0</z>
                     </capturePoint>
                 </captureOrigin>
                 <captureArea>
                         <bottomLeft>
                         <x>-3.0</x>
                         <y>20.0</y>
                         <z>7.0</z>
                         </bottomLeft>
                         <bottomRight>
                         <x>3.0</x>
                         <y>20.0</y>
                         <z>7.0</z>
                         </bottomRight>
                         <topLeft>
                         <x>-3.0</x>
                         <y>20.0</y>
                         <z>13.0</z>
                         </topLeft>
                         <topRight>
                         <x>3.0</x>
                         <y>20.0</y>
                         <z>13.0</z>
                         </topRight>
                 </captureArea>
             </spatialInformation>
             <individual>true</individual>
             <encGroupIDREF>EG0</encGroupIDREF>
             <description lang="en">
               zoomed out
               zoomed-out view of all people in the room
             </description>
             <priority>2</priority>
             <lang>it</lang>
             <mobility>static</mobility>
             <view>room</view>
             <capturedPeople>
                 <personIDREF>alice</personIDREF>
                 <personIDREF>bob</personIDREF>
                 <personIDREF>ciccio</personIDREF>
             </capturedPeople>
         </mediaCapture>
         <mediaCapture
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
          xsi:type="videoCaptureType" captureID="VC5"
          mediaType="video">
             <captureSceneIDREF>CS1</captureSceneIDREF>
             <spatialInformation>
                 <captureArea>
                         <bottomLeft>
                         <x>-3.0</x>
                         <y>20.0</y>
                         <z>9.0</z>
                         </bottomLeft>
                         <bottomRight>
                         <x>3.0</x>
                         <y>20.0</y>
                         <z>9.0</z>
                         </bottomRight>
                         <topLeft>
                         <x>-3.0</x>
                         <y>20.0</y>
                         <z>11.0</z>
                         </topLeft>
                         <topRight>
                         <x>3.0</x>
                         <y>20.0</y>
                         <z>11.0</z>
                         </topRight>
                 </captureArea>
             </spatialInformation>
             <content>
                 <sceneViewIDREF>SE1</sceneViewIDREF>
             </content>
             <policy>SoundLevel:1</policy>
             <description lang="en">penultimate loudest room segment
             </description>
             <lang>it</lang>
             <mobility>static</mobility>
             <view>individual</view>
         </mediaCapture>
         <mediaCapture
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
          xsi:type="videoCaptureType" captureID="VC6"
          mediaType="video">
             <captureSceneIDREF>CS1</captureSceneIDREF>
             <spatialInformation>
                 <captureArea>
                         <bottomLeft>
                         <x>-3.0</x>
                         <y>20.0</y>
                         <z>9.0</z>
                         </bottomLeft>
                         <bottomRight>
                         <x>3.0</x>
                         <y>20.0</y>
                         <z>9.0</z>
                         </bottomRight>
                         <topLeft>
                         <x>-3.0</x>
                         <y>20.0</y>
                         <z>11.0</z>
                         </topLeft>
                         <topRight>
                         <x>3.0</x>
                         <y>20.0</y>
                         <z>11.0</z>
                         </topRight>
                 </captureArea>
             </spatialInformation>
             <content>
                 <sceneViewIDREF>SE1</sceneViewIDREF>
             </content>
             <policy>SoundLevel:2</policy>
             <description lang="en">last but two loudest room segment
             </description>
             <lang>it</lang>
             <mobility>static</mobility>
             <view>individual</view>
         </mediaCapture>
         <mediaCapture
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
          xsi:type="videoCaptureType" captureID="VC7"
          mediaType="video">
             <captureSceneIDREF>CS1</captureSceneIDREF>
             <spatialInformation>
                 <captureArea>
                         <bottomLeft>
                         <x>-3.0</x>
                         <y>20.0</y>
                         <z>9.0</z>
                         </bottomLeft>
                         <bottomRight>
                         <x>3.0</x>
                         <y>20.0</y>
                         <z>9.0</z>
                         </bottomRight>
                         <topLeft>
                         <x>-3.0</x>
                         <y>20.0</y>
                         <z>11.0</z>
                         </topLeft>
                         <topRight>
                         <x>3.0</x>
                         <y>20.0</y>
                         <z>11.0</z>
                         </topRight>
                 </captureArea>
             </spatialInformation>
             <content>
                 <mediaCaptureIDREF>VC3</mediaCaptureIDREF>
                 <mediaCaptureIDREF>VC5</mediaCaptureIDREF>
                 <mediaCaptureIDREF>VC6</mediaCaptureIDREF>
             </content>
             <maxCaptures exactNumber="true">3</maxCaptures>
             <encGroupIDREF>EG0</encGroupIDREF>
             <description lang="en">big picture of the current
             speaker + pips about previous speakers</description>
             <priority>3</priority>
             <lang>it</lang>
             <mobility>static</mobility>
             <view>individual</view>
         </mediaCapture>
     </ns2:mediaCaptures>
     <ns2:encodingGroups>
         <encodingGroup encodingGroupID="EG0">
             <maxGroupBandwidth>600000</maxGroupBandwidth>
             <encodingIDList>
                 <encodingID>ENC1</encodingID>
                 <encodingID>ENC2</encodingID>
                 <encodingID>ENC3</encodingID>
             </encodingIDList>
         </encodingGroup>
         <encodingGroup encodingGroupID="EG1">
             <maxGroupBandwidth>300000</maxGroupBandwidth>
             <encodingIDList>
                 <encodingID>ENC4</encodingID>
                 <encodingID>ENC5</encodingID>
             </encodingIDList>
         </encodingGroup>
     </ns2:encodingGroups>
     <ns2:captureScenes>
         <captureScene scale="unknown" sceneID="CS1">
             <sceneViews>
                 <sceneView sceneViewID="SE1">
                     <description lang="en">participants' individual
                     videos</description>
                     <mediaCaptureIDs>
                         <mediaCaptureIDREF>VC0</mediaCaptureIDREF>
                         <mediaCaptureIDREF>VC1</mediaCaptureIDREF>
                         <mediaCaptureIDREF>VC2</mediaCaptureIDREF>
                     </mediaCaptureIDs>
                 </sceneView>
                 <sceneView sceneViewID="SE2">
                     <description lang="en">loudest segment of the
                     room</description>
                     <mediaCaptureIDs>
                         <mediaCaptureIDREF>VC3</mediaCaptureIDREF>
                     </mediaCaptureIDs>
                 </sceneView>
                 <sceneView sceneViewID="SE5">
                     <description lang="en">loudest segment of the
                     room + pips</description>
                     <mediaCaptureIDs>
                         <mediaCaptureIDREF>VC7</mediaCaptureIDREF>
                     </mediaCaptureIDs>
                 </sceneView>
                 <sceneView sceneViewID="SE4">
                     <description lang="en">room audio</description>
                     <mediaCaptureIDs>
                         <mediaCaptureIDREF>AC0</mediaCaptureIDREF>
                     </mediaCaptureIDs>
                 </sceneView>
                 <sceneView sceneViewID="SE3">
                     <description lang="en">room video</description>
                     <mediaCaptureIDs>
                         <mediaCaptureIDREF>VC4</mediaCaptureIDREF>
                     </mediaCaptureIDs>
                 </sceneView>
             </sceneViews>
         </captureScene>
     </ns2:captureScenes>
     <ns2:simultaneousSets>
         <simultaneousSet setID="SS1">
             <mediaCaptureIDREF>VC3</mediaCaptureIDREF>
             <mediaCaptureIDREF>VC7</mediaCaptureIDREF>
             <sceneViewIDREF>SE1</sceneViewIDREF>
         </simultaneousSet>
         <simultaneousSet setID="SS2">
             <mediaCaptureIDREF>VC0</mediaCaptureIDREF>
             <mediaCaptureIDREF>VC2</mediaCaptureIDREF>
             <mediaCaptureIDREF>VC4</mediaCaptureIDREF>
         </simultaneousSet>
     </ns2:simultaneousSets>
     <ns2:people>
         <person personID="bob">
             <personInfo>
                 <ns3:fn>
                     <ns3:text>Bob</ns3:text>
                 </ns3:fn>
             </personInfo>
             <personType>minute taker</personType>
         </person>
         <person personID="alice">
             <personInfo>
                 <ns3:fn>
                     <ns3:text>Alice</ns3:text>
                 </ns3:fn>
             </personInfo>
             <personType>presenter</personType>
         </person>
         <person personID="ciccio">
             <personInfo>
                 <ns3:fn>
                     <ns3:text>Ciccio</ns3:text>
                 </ns3:fn>
             </personInfo>
             <personType>chairman</personType>
             <personType>timekeeper</personType>
         </person>
     </ns2:people>
</ns2:advertisement>

]]>
</artwork>
</figure>
</t>
</ns2:advertisement>]]></sourcecode>

<!-- [rfced] Section 10.6:  We find "penultimate loudest room segment"
and "last but two loudest room segment" difficult to follow.  If
the suggested text is not correct, please clarify.

Original:
 <policy>SoundLevel:1</policy>
 <description lang="en">penultimate loudest room segment
 </description>
...
 <policy>SoundLevel:2</policy>
 <description lang="en">last but two loudest room segment
 </description>

Suggested:
 <policy>SoundLevel:1</policy>
 <description lang="en">previous loudest room segment per the
 most recent iteration of the sound level detection algorithm
 (RFC 8846)
 </description>
...
 <policy>SoundLevel:2</policy>
 <description lang="en">previous loudest room segment per the
 second most recent iteration of the sound level detection
 algorithm (RFC 8846)
 </description> -->

      </section>
      <section title="CLUE message nr. anchor="ack-example" numbered="true" toc="default">
        <name>CLUE Message No. 7: 'ack' " anchor="ack-example">
<t>
<figure>
<artwork>
<![CDATA[ 'ack'</name>
<sourcecode name="" type="xml"><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ack xmlns="urn:ietf:params:xml:ns:clue-protocol"
 xmlns:ns2="urn:ietf:params:xml:ns:clue-info"
 xmlns:ns3="urn:ietf:params:xml:ns:vcard-4.0"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="urn:ietf:params:xml:ns:clue-protocol
 http://wpage.unina.it/spromano/clue-protocol-17-schema-file.xsd"
 xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
 protocol="CLUE" v="2.7">
    <clueId>CP2</clueId>
    <sequenceNr>23</sequenceNr>
    <responseCode>200</responseCode>
    <reasonString>Success</reasonString>
    <advSequenceNr>13</advSequenceNr>
</ack>
]]>
</artwork>
</figure>
</t>
</ack>]]></sourcecode>
      </section>
      <section title="CLUE message nr. anchor="conf-example" numbered="true" toc="default">
        <name>CLUE Message No. 8: 'configure'" anchor="conf-example">
<t>
<figure>
<artwork>
<![CDATA[ 'configure'</name>
<sourcecode name="" type="xml"><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:configure xmlns="urn:ietf:params:xml:ns:clue-info"
 xmlns:ns2="urn:ietf:params:xml:ns:clue-protocol"
 xmlns:ns3="urn:ietf:params:xml:ns:vcard-4.0"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="urn:ietf:params:xml:ns:clue-protocol
 http://wpage.unina.it/spromano/clue-protocol-17-schema-file.xsd"
 xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
 protocol="CLUE" v="2.7">
    <ns2:clueId>CP2</ns2:clueId>
    <ns2:sequenceNr>24</ns2:sequenceNr>
    <ns2:advSequenceNr>13</ns2:advSequenceNr>
    <ns2:captureEncodings>
               <captureEncoding ID="ce123">
                        <captureID>AC0</captureID>
                        <encodingID>ENC4</encodingID>
                </captureEncoding>
                <captureEncoding ID="ce456">
                        <captureID>VC7</captureID>
                        <encodingID>ENC1</encodingID>
                        <configuredContent>
                                <sceneViewIDREF>SE5</sceneViewIDREF>
                        </configuredContent>
                </captureEncoding>
     </ns2:captureEncodings>
</ns2:configure>
]]>
</artwork>
</figure>
</t>
</ns2:configure>]]></sourcecode>
      </section>
      <section title="CLUE message nr. anchor="confRes2-example" numbered="true" toc="default">
        <name>CLUE Message No. 9: 'confResponse'" anchor="confRes2-example">
<t>
<figure>
<artwork>
<![CDATA[ 'confResponse'</name>
<sourcecode name="" type="xml"><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:configureResponse xmlns="urn:ietf:params:xml:ns:clue-info"
 xmlns:ns2="urn:ietf:params:xml:ns:clue-protocol"
 xmlns:ns3="urn:ietf:params:xml:ns:vcard-4.0"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="urn:ietf:params:xml:ns:clue-protocol
 http://wpage.unina.it/spromano/clue-protocol-17-schema-file.xsd"
 xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
 protocol="CLUE" v="2.7">
    <ns2:clueId>CP1</ns2:clueId>
    <ns2:sequenceNr>14</ns2:sequenceNr>
    <ns2:responseCode>200</ns2:responseCode>
    <ns2:reasonString>Success</ns2:reasonString>
    <ns2:confSequenceNr>24</ns2:confSequenceNr>
</ns2:configureResponse>
]]>
</artwork>
</figure>
</t>
</ns2:configureResponse>]]></sourcecode>
      </section>
    </section>
    <section title="Security Considerations"> anchor="sec-cons" numbered="true" toc="default">
      <name>Security Considerations</name>
      <t>
As a general consideration, we remark would like to point out that the CLUE framework
(and related protocol)
has been conceived at from the outset by embracing the security-by-design
paradigm.
This entails that
As a result, a number of requirements have been identified and
properly standardized as mandatory within the entire set of documents
associated with the CLUE architecture.

Requirements include: include (i) the use of cryptography and authentication; authentication,
(ii) protection of all sensitive fields; (iii) mutual fields, (iii)&nbsp;mutual authentication
between CLUE endpoints; endpoints, (iv) the presence of authorization mechanisms; mechanisms,
and (v) the presence of native defence defense mechanisms against malicious
activities such as eavesdropping, selective modification, deletion,
and replay (and related combinations thereof).

Hence, security of the single components of
the CLUE solution cannot be evaluated independently of the integrated
view of the final architecture.
</t>
      <t>
The CLUE protocol is an application-level protocol allowing a Media
Producer and a Media Consumer to negotiate a variegated set of
parameters associated with the establishment of a telepresence session.
This unavoidably exposes a CLUE-enabled telepresence system to a number
of potential threats, most of which are extensively discussed in the CLUE
framework document <xref target="I-D.ietf-clue-framework" />. target="RFC8845" format="default"/>.
The security considerations Security Considerations section of the mentioned document of <xref target="RFC8845" format="default"/> actually
discusses issues associated with the setup and management of a
telepresence session both in the both (1)&nbsp;the basic case involving two CLUE endpoints
 acting, respectively,
 acting as the MP and the MC, respectively and in the (2)&nbsp;the more advanced scenario
  envisaging the presence of an MCU.
</t>
      <t>
The CLUE framework document <xref target="RFC8845" format="default"/> also mentions that the information carried within CLUE
protocol messages might contain sensitive data, which SHOULD <bcp14>SHOULD</bcp14> hence be accessed
only by authenticated endpoints. Security issues associated with the CLUE data
model schema are discussed in <xref target="I-D.ietf-clue-data-model-schema" />. target="RFC8846" format="default"/>.
</t>
      <t>
There is extra information carried by the CLUE protocol that is not
associated with the CLUE data model schema and which that exposes
information that might be of concern.  This information is primarily
exchanged during the negotiation phase via the 'options' and 'optionsResponse' messages.
In the CLUE Participant state machine machine's OPTIONS state, both parties
agree on the version and on the extensions to be used in the subsequent
CLUE messages message exchange phase. A malicious participant might either try
(1)&nbsp;try to retrieve a detailed footprint of a specific CLUE protocol
implementation during this initial setup phase, phase or force (2)&nbsp;force the
communicating party to use a non-up-to-date version of the protocol
which that is outdated
and that they know how to break.
Indeed, exposing all of the supported versions and extensions could
conceivably leak information about the specific implementation of the
protocol. In theory theory, an implementation could choose not to announce all
of the versions it supports if it wants to avoid such leakage, though although
this would come at the expenses expense of interoperability.
With respect to the above considerations, it is noted that the OPTIONS
state is only reached after the CLUE data channel has been successfully
set up. This ensures that only authenticated parties can exchange
'options' messages and related 'optionsResponse' messages messages, and hence drastically
reduces the attack surface that is exposed to malicious parties.
</t>
      <t>
The CLUE framework clearly states the requirement to protect CLUE
protocol messages against threats deriving from the presence of a
malicious agent capable to gain of gaining access to the CLUE data channel.
Such a requirement is met by the CLUE data channel solution described
in <xref target="I-D.ietf-clue-datachannel"/>, target="RFC8850" format="default"/>, which ensures protection
 from both message recovery and message tampering.

With respect to this last point, any implementation of the CLUE protocol
 compliant with the CLUE specification MUST <bcp14>MUST</bcp14> rely on the exchange of
messages that flow on top of a reliable and ordered SCTP over DTLS SCTP-over-DTLS
transport channel connecting two CLUE Participants.
</t>
    </section>
    <section title="IANA Considerations"> numbered="true" toc="default">
      <name>IANA Considerations</name>

<!-- [rfced] IANA Considerations:  FYI, per
<https://www.iana.org/assignments/media-types/> (the note regarding
[RFC2046]) and Section 5.6 of RFC 6838, we have removed instances of
"MIME." In other words, it's "media type" not "MIME media type"
and simliar.
-->
      <t>
This document registers a new XML namespace, a new XML schema schema, and
   the media type for the schema.
This document also registers the "CLUE" Application Service tag
and the "CLUE" Application Protocol tag and
defines registries for the CLUE messages and response codes.
</t>
      <section numbered="true" toc="default">
        <name>URN Sub-Namespace Registration</name>
        <t>
This section registers a new XML namespace,
<tt>urn:ietf:params:xml:ns:clue-protocol</tt>.
</t>

<dl newline="false" spacing="normal">
 <dt>URI:</dt>
  <dd>urn:ietf:params:xml:ns:clue-protocol</dd>
 <dt>Registrant Contact:</dt>
  <dd>IESG (iesg@ietf.org).</dd>
</dl>
<t>XML:
</t>
<sourcecode markers="true" type="xml"><![CDATA[
 <?xml version="1.0"?>
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
   "https://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <html xmlns="https://www.w3.org/1999/xhtml" xml:lang="en">
   <head>
     <title>CLUE Messages</title>
   </head>
   <body>
     <h1>Namespace for CLUE Messages</h1>
     <h2>urn:ietf:params:xml:ns:clue-protocol</h2>
     <p>See <a href="https://www.rfc-editor.org/rfc/rfc8847.txt">
        RFC 8847</a>.</p>
   </body>
 </html>
]]></sourcecode>
      </section>
      <section numbered="true" toc="default">
        <name>XML Schema Registration</name>
        <t>
This section registers an XML schema per the guidelines in <xref target="RFC3688" format="default"/>.
</t>

<dl newline="false" spacing="normal"><dt>URI:</dt>
  <dd>urn:ietf:params:xml:schema:clue-protocol</dd>
 <dt>Registrant Contact:</dt>
  <dd>IESG (iesg@ietf.org).</dd>
 <dt>Schema:</dt>
  <dd>The XML for this schema can be found in
<xref target="sec-schema" format="default"/> of this document.</dd>
</dl>
      </section>

      <section numbered="true" toc="default">
        <name>Media Type Registration for &quot;application/clue+xml&quot;</name>
        <t>This section registers the <tt>
application/clue+xml</tt> media type.
</t>

  <dl newline="false" spacing="normal">
        <dt>To:</dt>
         <dd>ietf-types@iana.org</dd>
        <dt>Subject:</dt>
         <dd>Registration of media type "application/clue+xml"</dd>
        <dt>Media type name:</dt>
         <dd>application</dd>
        <dt>Subtype name:</dt>
         <dd>clue+xml</dd>
        <dt>Required parameters:</dt>
         <dd>(none)</dd>
        <dt>Optional parameters:</dt>
        <dd>charset. Same as the charset parameter of "application&wj;/xml" as specified in
<xref target="RFC7303" sectionFormat="comma" section="3.2"/>.</dd>
        <dt>Encoding considerations:</dt>
         <dd>Same as the encoding considerations of
"application/xml" as specified in
<xref target="RFC7303" sectionFormat="comma" section="3.2"/>.

<!-- [rfced] Section 12.3:  We could not see how Section 3.2 of
RFC 7303 relates to this sentence.  Please confirm that the citation
is correct.

Original:
 Encoding considerations: Same as the encoding considerations of
 "application/xml" as specified in [RFC7303], Section 3.2. -->

</dd>
        <dt>Security considerations:</dt>
         <dd>This content type is designed to carry
protocol data related to telepresence session control.  Some of the data
could be considered private.  This media type does not provide any
protection; thus, other mechanisms, such as those described in
<xref target="sec-cons"/> of this document, are required to protect the MIME data.  This media type does
not contain executable content.</dd>
        <dt>Interoperability considerations:</dt>
         <dd>None.</dd>
        <dt>Published specification:</dt>
         <dd>RFC 8847
</dd>
        <dt>Applications that use this media type:</dt>
         <dd>CLUE Participants.</dd>

        <dt>Additional Information:</dt>
	<dd><t><br/></t>
         <dl newline="false" spacing="compact">
         <dt>Magic Number(s):</dt><dd>(none)</dd>
         <dt>File extension(s):</dt><dd>.xml</dd>
         <dt>Macintosh File Type Code(s):</dt><dd>TEXT</dd>
         </dl>
       </dd>
        <dt>Person &amp; email address to contact for the schema.
This document also registers the "CLUE" Application Service tag further information:</dt>
         <dd>Simon Pietro Romano (spromano@unina.it).</dd>
        <dt>Intended usage:</dt>
         <dd>LIMITED USE</dd>
        <dt>Author/Change controller:</dt>
         <dd>The IETF</dd>

        <dt>Other information:</dt>
         <dd>This media type is a specialization of
application/xml <xref target="RFC7303" format="default"/>, and many of the "CLUE" Application considerations
described there also apply to application/clue+xml.</dd>
  </dl>

      </section>
      <section numbered="true" toc="default">
        <name>CLUE Protocol tag and
defines Registry</name>
        <t>
Per this document, IANA has created new registries for the CLUE messages and response codes.
</t>
        <section title="URN Sub-Namespace Registration">
<t>
This section registers a new XML namespace,
<spanx style="verb">"urn:ietf:params:xml:ns:clue-protocol"</spanx>.
</t>
<t>
URI: urn:ietf:params:xml:ns:clue-protocol
</t>
<t>
Registrant Contact:
IESG (iesg@ietf.org).
</t>
<t>
XML:
</t> numbered="true" toc="default">
          <name>CLUE Message Types</name>
          <t>
<figure>
<artwork>
<![CDATA[
BEGIN
 <?xml version="1.0"?>
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
   <head>
     <title>CLUE Messages</title>
   </head>
   <body>
     <h1>Namespace for CLUE Messages</h1>
     <h2>urn:ietf:params:xml:ns:clue-protocol</h2>
[[NOTE TO IANA/RFC-EDITOR: Please update RFC URL and replace XXXX
    with
The following summarizes the RFC number registry for this specification.]]
     <p>See <a href="[[RFC URL]]">
        RFCXXXX</a>.</p>
   </body>
 </html>
END
]]>
</artwork>
</figure> CLUE messages:
</t>
</section>

<section title="XML Schema registration">
<t>
This section registers an XML schema per
 <dl newline="false" spacing="normal">
  <dt>Related Registry:</dt>
   <dd>CLUE Message Types</dd>
  <dt>Defining RFC:</dt>
   <dd>RFC 8847</dd>
  <dt>Registration/Assignment Procedures:</dt>
   <dd>Following the guidelines policies outlined
in <xref target="RFC3688"/>.
</t>
<t>
URI:
urn:ietf:params:xml:schema:clue-protocol
</t>
<t>
Registrant Contact:
IESG (iesg@ietf.org).
</t> target="RFC8126" format="default"/>, the IANA policy for assigning new values for the
CLUE message types for the CLUE protocol is Specification Required.</dd>
  <dt>Registrant Contact:</dt>
   <dd>IESG (iesg@ietf.org).</dd>
 </dl>
          <t>
Schema:
The initial table of CLUE messages is populated using the
CLUE messages described in <xref target="sec-messages" format="default"/>
and defined in the XML for this schema can in <xref target="sec-schema" format="default"/>.
</t>
          <table align="center">
            <name>Initial IANA Table of CLUE Messages</name>
            <thead>
              <tr>
                <th align="left">Message</th>
                <th align="left">Description</th>
                <th align="left">Reference</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">options</td>
                <td align="left">Sent by the CI to the CR in the initiation
phase to specify the roles played by the CI,
the supported versions, and the supported extensions.</td>
                <td align="left">RFC 8847</td>
              </tr>
              <tr>
                <td align="left">optionsResponse</td>
                <td align="left">Sent by the CI to the CR in reply to an 'options' message
to finally establish the
version and extensions to be found as used in the following CLUE messages
exchange.</td>
                <td align="left">RFC 8847</td>
              </tr>
              <tr>
                <td align="left">advertisement</td>
                <td align="left">Sent by the MP to the MC to specify the entirety of
<xref target="sec-schema"/> telepresence capabilities
of this document.
</t>

</section>

<section title="MIME Media Type Registration for 'application/clue+xml'">
<t>This section registers the <spanx style="verb">
"application/clue+xml"</spanx> MIME type.
</t>

<t>To:  ietf-types@iana.org</t>
<t>Subject:
Registration of MIME media type application/clue+xml
</t>
<t>MIME media type name:
application</t>
<t>MIME subtype name:  clue+xml</t>
<t>Required parameters:  (none)</t>
<t>Optional parameters:  charset <vspace/>
Same as MP expressed according to the charset parameter CLUE framework.</td>
                <td align="left">RFC 8847</td>
              </tr>
              <tr>
                <td align="left">ack</td>
                <td align="left">Sent by the MC to the MP to acknowledge the reception of "application/xml" as
an 'advertisement' message.</td>
                <td align="left">RFC 8847</td>
              </tr>
              <tr>
                <td align="left">configure</td>
                <td align="left">Sent by the MC to the MP to specify the desired media captures
among those specified in
<xref target="RFC7303"/>, Section 3.2.
</t>
<t>Encoding considerations:
Same as the encoding considerations of
"application/xml" as specified 'advertisement'.</td>
                <td align="left">RFC 8847</td>
              </tr>
              <tr>
                <td align="left">configureResponse</td>
                <td align="left">Sent by the MP to the MC in <xref target="RFC7303"/>, Section 3.2.
</t>
<t>Security considerations:
This content type is designed reply to carry
protocol data related a 'configure' message to telepresence session control.  Some of
communicate whether or not the data
could be considered private.  This media type configuration request has been successfully
processed.</td>
                <td align="left">RFC 8847</td>
              </tr>
            </tbody>
          </table>

<!-- [rfced] Section 12.4.1:  As "the following CLUE messages
exchange" does not provide any
protection and thus other mechanisms such parse well, may we update this description as those described in
Section Security are required
suggested below?  If you agree, we will ask IANA to protect update their
corresponding page accordingly.

Original:
 | optionsResponse   | Sent by the data.  This media type does
not contain executable content.
</t>
<t>Interoperability considerations:  None.
</t>
<t>Published specification:
RFC XXXX
[[NOTE TO IANA/RFC-EDITOR:
Please replace XXXX with CI to the RFC number for this specification.]]
</t>
<t>Applications that use this media type:
CLUE participants.
</t>
<t>Additional Information:
Magic Number(s): (none), <vspace/>
File extension(s): .xml, <vspace/>
Macintosh File Type Code(s): TEXT. <vspace/>
</t>
<t>Person &amp; email address CR in reply | RFCXXXX   |
 |                   | to contact for further information:
Simon Pietro Romano (spromano@unina.it).
</t>
<t>Intended usage:
LIMITED USE
</t>
<t>Author/Change controller:
The IETF
</t>
<t>Other information:
This media type is a specialization of
application/xml <xref target="RFC7303"/>, an 'options' message to        |           |
 |                   | finally estabilsh the version and many of |           |
 |                   | the considerations
described there also apply extensions to application/clue+xml.
</t>

</section>

<section title="CLUE Protocol Registry">
<t>
The document requests that be used in the IANA creates new registries for  |           |
 |                   | following CLUE messages exchange. |           |

Suggested (also, "estabilsh" has been corrected):
 | optionsResponse   | Sent by the CI to the CR in       | RFC 8847  |
 |                   | reply to an 'options' message,    |           |
 |                   | to establish the version and response codes.
</t>      |           |
 |                   | extensions to be used in the      |           |
 |                   | subsequent exchange of CLUE       |           |
 |                   | messages.                         |           | -->

        </section>
        <section title="CLUE Message Types"> numbered="true" toc="default">
          <name>CLUE Response Codes</name>
          <t>
The following summarizes the requested registry for CLUE messages:
</t>
<t>
Related Registry:   CLUE Message Types Registry
</t>
<t>
Defining RFC:
RFC XXXX
[[NOTE TO IANA/RFC-EDITOR:
Please replace XXXX with the RFC number for this specification.]] response codes:
</t>
<t>
Registration/Assignment Procedures:  Following

<dl newline="false" spacing="normal">
  <dt>Related Registry:</dt>
   <dd>CLUE Response Codes</dd>
  <dt>Defining RFC:</dt>
   <dd>RFC 8847</dd>
   <dt>Registration/Assignment Procedures:</dt>
    <dd>Following the policies outlined
in <xref target="RFC8126"/>, target="RFC8126" format="default"/>, the IANA policy for assigning new values for the
CLUE message types
response codes for the CLUE protocol is Specification Required.
</t>
<t>
Registrant Contact:
IESG (iesg@ietf.org).
</t> Required.</dd>
   <dt>Registrant Contact:</dt>
    <dd>IESG (iesg@ietf.org).</dd>
</dl>
          <t>
The initial Message table of CLUE response codes is populated using the
CLUE messages described in <xref target="sec-messages"/>
and
response codes defined in the XML schema in <xref target="sec-schema"/>. target="sec-resp-codes" format="default"/>
as follows:
</t>

<texttable title="IANA-CLUE">
<ttcol>Message</ttcol>
<ttcol>Description</ttcol>
<ttcol>Reference</ttcol>
<c>options</c>
<c>Sent by the CI to the CR  in the initiation
phase to specify the roles played by the CI,
the supported versions and the supported extensions.</c>
<c>RFCXXXX</c>
<c>optionsResponse</c>
<c>Sent by the CI to
          <table align="center">
           <name>Initial IANA Table of CLUE Response Codes</name>
            <thead>
              <tr>
                <th align="left">Number</th>
                <th align="left">Default Reason String</th>
                <th align="left">Description</th>
                <th align="left">Reference</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">200</td>
                <td align="left">Success</td>
                <td align="left">The request has been successfully processed.</td>
                <td align="left">RFC 8847</td>
              </tr>
              <tr>
                <td align="left">300</td>
                <td align="left">Low-level request error</td>
                <td align="left">A generic low-level request error has occurred.</td>
                <td align="left">RFC 8847</td>
              </tr>
              <tr>
                <td align="left">301</td>
                <td align="left">Bad syntax</td>
                <td align="left">The XML syntax of the CR in reply to message
is not correct.</td>
                <td align="left">RFC 8847</td>
              </tr>
              <tr>
                <td align="left">302</td>
                <td align="left">Invalid value</td>
                <td align="left">The message contains an 'options'
invalid parameter value.</td>
                <td align="left">RFC 8847</td>
              </tr>
              <tr>
                <td align="left">303</td>
                <td align="left">Conflicting values</td>
                <td align="left">The message
to finally estabilsh the
version and the extensions to contains values
that cannot be used together.</td>
                <td align="left">RFC 8847</td>
              </tr>
              <tr>
                <td align="left">400</td>
                <td align="left">Semantic errors</td>
                <td align="left">Semantic errors in the following CLUE messages
exchange.</c>
<c>RFCXXXX</c>
<c>advertisement</c>
<c>Sent by the MP to the MC to specify the telepresence capabilities
of the MP expressed according to the received
 CLUE framework.</c>
<c>RFCXXXX</c>
<c>ack</c>
<c>Sent by the MC to the MP to acknowledge the reception of
an 'advertisement' message.</c>
<c>RFCXXXX</c>
<c>configure</c>
<c>Sent by the MC to the MP to specify protocol message.</td>
                <td align="left">RFC 8847</td>
              </tr>
              <tr>
                <td align="left">401</td>
                <td align="left">Version not supported</td>
                <td align="left">The protocol version
 used in the desired media captures
among those specified message
 is not supported.</td>
                <td align="left">RFC 8847</td>
              </tr>
              <tr>
                <td align="left">402</td>
                <td align="left">Invalid sequencing</td>
                <td align="left">
 Sequence number gap; repeated sequence number; sequence number
 outdated.
 </td>
                <td align="left">RFC 8847</td>
              </tr>
              <tr>
                <td align="left">403</td>
                <td align="left">Invalid identifier</td>
                <td align="left">The clueId used in the 'advertisement'.</c>
<c>RFCXXXX</c>
<c>configureResponse</c>
<c>Sent by
 message is invalid
 or unknown.</td>
                <td align="left">RFC 8847</td>
              </tr>
              <tr>
                <td align="left">404</td>
                <td align="left">Advertisement expired</td>
                <td align="left">The sequence number of the MP to advertisement
 the MC in reply to a CONFIGURE 'configure' message refers to
communicate if is out
 of date.</td>
                <td align="left">RFC 8847</td>
              </tr>
              <tr>
                <td align="left">405</td>
                <td align="left">Subset choice not allowed</td>
                <td align="left">The subset choice is not allowed
 for the configuration request has been successfully
processed or not.</c>
<c>RFCXXXX</c>
</texttable>

</section>
<section title="CLUE specified Multiple Content Capture.</td>
                <td align="left">RFC 8847</td>
              </tr>
            </tbody>
          </table>

<!-- [rfced] Table 3:  Because "reason string" is used everywhere
else (e.g., text, Table 1), we changed "Response String" to
"Reason String".  Please let us know if this is not correct.

Original:
...
 | Number | Default       | Description                  | Reference |
 |        | Response Codes">
<t>
The following summarizes the requested registry      |                              |           |
 |        | String        |                              |           |
...

Currently:
...
 | Number | Default        | Description                 | Reference |
 |        | Reason String  |                             |           |
... -->

        </section>
      </section>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml"/>

<!-- draft-ietf-clue-framework (RFC 8845) -->
    <reference anchor="RFC8845" target="https://www.rfc-editor.org/info/rfc8845">
          <front>
            <title>Framework for CLUE response codes:
</t>
<t>
Related Registry:   CLUE Response Code Registry
</t>
<t>
Defining RFC:
RFC XXXX
[[NOTE TO IANA/RFC-EDITOR:
Please replace XXXX with the RFC number Telepresence Multi-Streams</title>
             <seriesInfo name="RFC" value="8845"/>
             <seriesInfo name="DOI" value="10.17487/RFC8845"/>
            <author initials="M" surname="Duckworth" fullname="Mark Duckworth"
                    role="editor">
              <organization/>
            </author>
            <author initials="A" surname="Pepperell" fullname="Andrew Pepperell">
              <organization/>
            </author>
            <author initials="S" surname="Wenger" fullname="Stephan Wenger">
              <organization/>
            </author>
            <date month="June" year="2020"/>
          </front>
        </reference>

<!-- draft-ietf-clue-signaling (RFC 8848) -->
        <reference anchor="RFC8848" target="https://www.rfc-editor.org/info/rfc8848">
          <front>
            <title>Session Signaling for this specification.]]
</t>
<t>
Registration/Assignment Procedures:  Following the policies outlined
in <xref target="RFC8126"/>, the IANA policy Controlling Multiple Streams for assigning new values Telepresence (CLUE)</title>
             <seriesInfo name="RFC" value="8848"/>
             <seriesInfo name="DOI" value="10.17487/RFC8848"/>
            <author initials="R" surname="Hanton" fullname="Robert Hanton">
              <organization/>
            </author>
            <author initials="P" surname="Kyzivat" fullname="Paul Kyzivat">
              <organization/>
            </author>
            <author initials="L" surname="Xiao" fullname="Lennard Xiao">
              <organization/>
            </author>
            <author initials="C" surname="Groves" fullname="Christian Groves">
              <organization/>
            </author>
           <date month="June" year="2020"/>
          </front>
        </reference>

<!-- draft-ietf-clue-datachannel (RFC 8850) -->
        <reference anchor="RFC8850" target="https://www.rfc-editor.org/info/rfc8850">
          <front>
            <title>Controlling Multiple Streams for Telepresence (CLUE) Protocol Data Channel</title>
             <seriesInfo name="RFC" value="8850"/>
             <seriesInfo name="DOI" value="10.17487/RFC8850"/>
            <author initials="C." surname="Holmberg" fullname="Christer Holmberg">
              <organization/>
            </author>
           <date month="June" year="2020"/>
          </front>
        </reference>

<!-- draft-ietf-clue-data-model-schema (RFC 8846) -->
        <reference anchor="RFC8846" target="https://www.rfc-editor.org/info/rfc8846">
          <front>
            <title>An XML Schema for the
Response codes ControLling mUltiple streams for CLUE shall be Specification Required.
</t>
<t>
Registrant Contact:
IESG (iesg@ietf.org).
</t>
 tElepresence (CLUE) Data Model</title>
             <seriesInfo name="RFC" value="8846"/>
             <seriesInfo name="DOI" value="10.17487/RFC8846"/>
            <author initials="R" surname="Presta" fullname="Roberta Presta">
              <organization/>
            </author>
            <author initials="S P." surname="Romano" fullname="Simon Romano">
              <organization/>
            </author>
           <date month="June" year="2020"/>
          </front>
        </reference>

<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.3550.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.3688.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8126.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.7303.xml"/>

     <reference anchor='W3C.REC-xml-20081126'
         target='https://www.w3.org/TR/2008/REC-xml-20081126'>
     <front>
     <title>Extensible Markup Language (XML) 1.0 (Fifth Edition)</title>
     <author initials='T.' surname='Bray' fullname='Tim Bray'>
         <organization />
     </author>
     <author initials='J.' surname='Paoli' fullname='Jean Paoli'>
         <organization />
     </author>
     <author initials='M.' surname='Sperberg-McQueen' fullname='Michael Sperberg-McQueen'>
         <organization />
     </author>
     <author initials='E.' surname='Maler' fullname='Eve Maler'>
         <organization />
     </author>
     <author initials='F.' surname='Yergeau' fullname='Francois Yergeau'>
         <organization />
     </author>
     <date month='November' year='2008' />
     </front>
     <refcontent>World Wide Web Consortium Recommendation REC-xml-20081126</refcontent>
     </reference>
    </references>
    <references>
      <name>Informative References</name>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.7262.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.4353.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.7667.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.6120.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.1122.xml"/>
<xi:include
    href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.3261.xml"/>
      </references>
    </references>
    <section numbered="false" toc="default">
      <name>Acknowledgements</name>
      <t>
The initial Response-code table is populated using authors thank all the CLUErs for their precious feedback and support -- in
particular, <contact fullname="Paul Kyzivat"/>, <contact fullname="Christian
Groves"/>, and <contact fullname="Scarlett Liuyan"/>.
</t>

    </section>
  </back>

<!-- [rfced] Please let us know if any changes are needed for the
Response codes defined
following:

a) The following terms were used inconsistently in <xref target="sec-resp-codes"/>
as follows:
</t>

<texttable>
<ttcol>Number</ttcol>
<ttcol>Default Response String</ttcol>
<ttcol>Description</ttcol>
<ttcol>Reference</ttcol>
<c>200</c>
<c>Success</c>
<c>The request has been successfully processed.</c>
<c>RFCXXXX</c>
<c>300</c>
<c>Low-level request error.</c>
<c>A generic low-level request error has occurred.</c>
<c>RFCXXXX</c>
<c>301</c>
<c>Bad syntax</c>
<c>The XML syntax of this document.
We chose to use the latter forms.  Please let us know any objections.

 CLUE participant (one instance) / CLUE Participant*
  * Note:  We will ask IANA to change "CLUE participants" to
  "CLUE Participants" on
  <https://www.iana.org/assignments/media-types/application/clue+xml>.

 CONFIGURE message
is not correct.</c>
<c>RFCXXXX</c>
<c>302</c>
<c>Invalid value</c>
<c>The message contains an
invalid parameter value.</c>
<c>RFCXXXX</c>
<c>303</c>
<c>Conficting values</c>
<c>The message contains values
that cannot (one instance) / 'configure' message**
  ** Note:  We will ask IANA to make this change on
  <https://www.iana.org/assignments/clue/>.

b) The following terms appear to be used together.</c>
<c>RFCXXXX</c>
<c>400</c>
<c>Semantic errors</c>
<c>Semantic errors inconsistently in the received
 CLUE protocol message.</c>
 <c>RFCXXXX</c>
 <c>401</c>
 <c>Version not supported</c>
 <c>The protocol version
 used this
document.  Please let us know which form is preferred.

 'configure + ack' / configure+ack / 'configure+ack' /
   'configure' + 'ack' (Does 'configure' + 'ack' mean
    "'configure' message and 'ack' message,"
    "'configure' + 'ack'," or "'configure+ack'"?)

 <supportedVersion> (1 instance) / <supportedVersions>

c) After several abbreviations (e.g., MC, MCU, MP) are introduced in
Sections 1 and 2, we then see the message
 is not supported.</c>
 <c>RFCXXXX</c>
 <c>402</c>
 <c>Invalid sequencing</c>
 <c>
 Sequence number gap; repeated sequence number; sequence number
 outdated.
 </c>
 <c>RFCXXXX</c>
 <c>403</c>
 <c>Invalid identifier</c>
 <c>The clueId "longhand" and abbreviated forms
used in alternating fashion (e.g., "MC" and "Media Consumer,"
"MP" and "Media Provider," "CI" and "Channel Initiator").  Would you
like us to use the
 message is not valid abbreviated forms of each after their initial
definitions?

d) We see "element," "field," and "tag" apparently used
interchangeably.  Will this be clear to readers, or unknown.</c>
 <c>RFCXXXX</c>
 <c>404</c>
 <c>advertisement Expired</c>
 <c>The sequence number should it be
explained somewhere near the beginning of the advertisement document?

For example:
 The <supportedExtensions> element
 The <version> field
 the configure refers to is out
 of date.</c>
 <c>RFCXXXX</c>
 <c>405</c>
 <c>Subset choice not allowed</c>
 <c>The subset choice is not allowed
 for <version> element
 the specified Multiple Content Capture.</c>
<c>RFCXXXX</c>
</texttable>

</section>
</section>
</section>

<section title="Acknowledgments">
<t> <version> tag
 The authors thank all <advSequenceNr> element
 the CLUErs for their precious feedbacks and support,
in particular Paul Kyzivat, Christian Groves and Scarlett Liuyan.
</t>
</section>

</middle>
<back>

  <references title="Normative References">

  	<!-- RFC2119, boilerplate text -->
	<?rfc include="reference.RFC.2119"?>

  	<!-- RFC8174, boilerplate text -->
	<?rfc include="reference.RFC.8174"?>

    <!-- clue framework -->
    <?rfc include="reference.I-D.ietf-clue-framework"?>

	<!-- clue signaling WG doc-->
	<?rfc include="reference.I-D.ietf-clue-signaling"?>

	<!-- clue data channel -->
	<?rfc include="reference.I-D.ietf-clue-datachannel"?>

	<!-- clue data model -->
	<?rfc include="reference.I-D.ietf-clue-data-model-schema"?>

	<!-- RFC3550, rtp -->
	<?rfc include="reference.RFC.3550"?>

	<!-- RFC3688 -->
	<?rfc include="reference.RFC.3688"?>

	<!-- RFC8126 -->
    <?rfc include="reference.RFC.8126"?>

    <!-- RFC7303 -->
  	<?rfc include="reference.RFC.7303"?>
  </references>

  <references title="Informative References">

    <!-- clue requirements -->
	<?rfc include="reference.RFC.7262"?>

	<!-- RFC4353, sip conferencing framework -->
	<?rfc include="reference.RFC.4353"?>

<!-- 	<?rfc include="reference.RFC.5117"?>  -->

	<!-- RFC7667, rtp topologies -->
	<?rfc include="reference.RFC.7667"?>

	<!-- RFC6120, XMPP -->
	<?rfc include="reference.RFC.6120"?>

	<!-- RFC1122, XMPP -->
	<?rfc include="reference.RFC.1122"?>

		<!-- RFC3261, SIP <confSequenceNr> field -->
	<?rfc include="reference.RFC.3261"?>

 </references>

</back>

</rfc>