draft-ietf-xcon-common-data-model-10.txt   draft-ietf-xcon-common-data-model-11.txt 
XCON O. Novo XCON O. Novo
Internet-Draft G. Camarillo Internet-Draft G. Camarillo
Intended status: Standards Track Ericsson Intended status: Standards Track Ericsson
Expires: September 29, 2008 D. Morgan Expires: December 12, 2008 D. Morgan
Fidelity Investments Fidelity Investments
R. Even R. Even
Polycom Polycom
March 28, 2008 June 10, 2008
Conference Information Data Model for Centralized Conferencing (XCON) Conference Information Data Model for Centralized Conferencing (XCON)
draft-ietf-xcon-common-data-model-10.txt draft-ietf-xcon-common-data-model-11.txt
Status of this Memo Status of this Memo
By submitting this Internet-Draft, each author represents that any By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79. aware will be disclosed, in accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
skipping to change at page 1, line 38 skipping to change at page 1, line 38
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt. http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
This Internet-Draft will expire on September 29, 2008. This Internet-Draft will expire on December 12, 2008.
Abstract Abstract
This document defines an Extensible Markup Language (XML)-based This document defines an Extensible Markup Language (XML)-based
conference information data model for centralized conferencing conference information data model for centralized conferencing
(XCON). A conference information data model is designed to convey (XCON). A conference information data model is designed to convey
information about the conference and about participation in the information about the conference and about participation in the
conference. The conference information data model defined in this conference. The conference information data model defined in this
document constitutes an extension of the data format specified in the document constitutes an extension of the data format specified in the
Session Initiation Protocol (SIP) Event Package for Conference State. Session Initiation Protocol (SIP) Event Package for Conference State.
skipping to change at page 2, line 27 skipping to change at page 2, line 27
4.2. <conference-description> . . . . . . . . . . . . . . . . . 14 4.2. <conference-description> . . . . . . . . . . . . . . . . . 14
4.2.1. <language> . . . . . . . . . . . . . . . . . . . . . . 14 4.2.1. <language> . . . . . . . . . . . . . . . . . . . . . . 14
4.2.2. <display-text> . . . . . . . . . . . . . . . . . . . . 14 4.2.2. <display-text> . . . . . . . . . . . . . . . . . . . . 14
4.2.3. <subject> . . . . . . . . . . . . . . . . . . . . . . 14 4.2.3. <subject> . . . . . . . . . . . . . . . . . . . . . . 14
4.2.4. <free-text> . . . . . . . . . . . . . . . . . . . . . 14 4.2.4. <free-text> . . . . . . . . . . . . . . . . . . . . . 14
4.2.5. <keywords> . . . . . . . . . . . . . . . . . . . . . . 15 4.2.5. <keywords> . . . . . . . . . . . . . . . . . . . . . . 15
4.2.6. <allow-sidebars> . . . . . . . . . . . . . . . . . . . 15 4.2.6. <allow-sidebars> . . . . . . . . . . . . . . . . . . . 15
4.2.7. <conference-time> . . . . . . . . . . . . . . . . . . 15 4.2.7. <conference-time> . . . . . . . . . . . . . . . . . . 15
4.2.8. <conf-uris> . . . . . . . . . . . . . . . . . . . . . 16 4.2.8. <conf-uris> . . . . . . . . . . . . . . . . . . . . . 16
4.2.9. <service-uris> . . . . . . . . . . . . . . . . . . . . 16 4.2.9. <service-uris> . . . . . . . . . . . . . . . . . . . . 16
4.2.10. <maximum-user-count> . . . . . . . . . . . . . . . . . 17 4.2.10. <maximum-user-count> . . . . . . . . . . . . . . . . . 16
4.2.11. <available-media> . . . . . . . . . . . . . . . . . . 17 4.2.11. <available-media> . . . . . . . . . . . . . . . . . . 17
4.3. <host-info> . . . . . . . . . . . . . . . . . . . . . . . 19 4.3. <host-info> . . . . . . . . . . . . . . . . . . . . . . . 19
4.4. <conference-state> . . . . . . . . . . . . . . . . . . . . 19 4.4. <conference-state> . . . . . . . . . . . . . . . . . . . . 19
4.4.1. <allow-conference-event-subscription> . . . . . . . . 19 4.4.1. <allow-conference-event-subscription> . . . . . . . . 19
4.4.2. <user-count> . . . . . . . . . . . . . . . . . . . . . 20 4.4.2. <user-count> . . . . . . . . . . . . . . . . . . . . . 19
4.4.3. <active> . . . . . . . . . . . . . . . . . . . . . . . 20 4.4.3. <active> . . . . . . . . . . . . . . . . . . . . . . . 19
4.4.4. <locked> . . . . . . . . . . . . . . . . . . . . . . . 20 4.4.4. <locked> . . . . . . . . . . . . . . . . . . . . . . . 20
4.5. <floor-information> . . . . . . . . . . . . . . . . . . . 20 4.5. <floor-information> . . . . . . . . . . . . . . . . . . . 20
4.5.1. <conference-ID> . . . . . . . . . . . . . . . . . . . 20 4.5.1. <conference-ID> . . . . . . . . . . . . . . . . . . . 20
4.5.2. <allow-floor-events> . . . . . . . . . . . . . . . . . 20 4.5.2. <allow-floor-events> . . . . . . . . . . . . . . . . . 20
4.5.3. <floor-request-handling> . . . . . . . . . . . . . . . 21 4.5.3. <floor-request-handling> . . . . . . . . . . . . . . . 20
4.5.4. <conference-floor-policy> . . . . . . . . . . . . . . 21 4.5.4. <conference-floor-policy> . . . . . . . . . . . . . . 21
4.6. <users> . . . . . . . . . . . . . . . . . . . . . . . . . 22 4.6. <users> . . . . . . . . . . . . . . . . . . . . . . . . . 22
4.6.1. <join-handling> . . . . . . . . . . . . . . . . . . . 22 4.6.1. <join-handling> . . . . . . . . . . . . . . . . . . . 22
4.6.2. <user-admission-policy> . . . . . . . . . . . . . . . 22 4.6.2. <user-admission-policy> . . . . . . . . . . . . . . . 22
4.6.3. <allowed-users-list> . . . . . . . . . . . . . . . . . 23 4.6.3. <allowed-users-list> . . . . . . . . . . . . . . . . . 23
4.6.4. <deny-users-list> . . . . . . . . . . . . . . . . . . 24 4.6.4. <deny-users-list> . . . . . . . . . . . . . . . . . . 24
4.6.5. <user> and Its <user> Sub-elements . . . . . . . . . . 24 4.6.5. <user> and Its <user> Sub-elements . . . . . . . . . . 24
4.6.5.1. <display-text> . . . . . . . . . . . . . . . . . . 25 4.6.5.1. <display-text> . . . . . . . . . . . . . . . . . . 25
4.6.5.2. <associated-aors> . . . . . . . . . . . . . . . . 25 4.6.5.2. <associated-aors> . . . . . . . . . . . . . . . . 25
4.6.5.3. <provide-anonymity> . . . . . . . . . . . . . . . 26 4.6.5.3. <provide-anonymity> . . . . . . . . . . . . . . . 25
4.6.5.4. <roles> . . . . . . . . . . . . . . . . . . . . . 26 4.6.5.4. <roles> . . . . . . . . . . . . . . . . . . . . . 26
4.6.5.5. <languages> . . . . . . . . . . . . . . . . . . . 26 4.6.5.5. <languages> . . . . . . . . . . . . . . . . . . . 26
4.6.5.6. <cascaded-focus> . . . . . . . . . . . . . . . . . 26 4.6.5.6. <cascaded-focus> . . . . . . . . . . . . . . . . . 26
4.6.5.7. <allow-refer-users-dynamically> . . . . . . . . . 26 4.6.5.7. <allow-refer-users-dynamically> . . . . . . . . . 26
4.6.5.8. <allow-invite-users-dynamically> . . . . . . . . . 27 4.6.5.8. <allow-invite-users-dynamically> . . . . . . . . . 26
4.6.5.9. <allow-remove-users-dynamically> . . . . . . . . . 27 4.6.5.9. <allow-remove-users-dynamically> . . . . . . . . . 27
4.6.5.10. <endpoint> . . . . . . . . . . . . . . . . . . . . 27 4.6.5.10. <endpoint> . . . . . . . . . . . . . . . . . . . . 27
4.7. <sidebars-by-ref> . . . . . . . . . . . . . . . . . . . . 28 4.7. <sidebars-by-ref> . . . . . . . . . . . . . . . . . . . . 28
4.8. <sidebars-by-val> . . . . . . . . . . . . . . . . . . . . 28 4.8. <sidebars-by-val> . . . . . . . . . . . . . . . . . . . . 28
5. RELAX NG Schema . . . . . . . . . . . . . . . . . . . . . . . 28 5. RELAX NG Schema . . . . . . . . . . . . . . . . . . . . . . . 28
6. XML Schema Extensibility . . . . . . . . . . . . . . . . . . . 38 6. XML Schema Extensibility . . . . . . . . . . . . . . . . . . . 37
7. XML Example . . . . . . . . . . . . . . . . . . . . . . . . . 38 7. XML Example . . . . . . . . . . . . . . . . . . . . . . . . . 38
8. Security Considerations . . . . . . . . . . . . . . . . . . . 47 8. Security Considerations . . . . . . . . . . . . . . . . . . . 47
8.1. Authentication . . . . . . . . . . . . . . . . . . . . . . 47 8.1. Authentication . . . . . . . . . . . . . . . . . . . . . . 47
8.2. Confidentiality . . . . . . . . . . . . . . . . . . . . . 47 8.2. Confidentiality . . . . . . . . . . . . . . . . . . . . . 47
8.3. Integrity . . . . . . . . . . . . . . . . . . . . . . . . 48 8.3. Integrity . . . . . . . . . . . . . . . . . . . . . . . . 48
9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 48 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 48
9.1. Relax NG Schema Registration . . . . . . . . . . . . . . . 48 9.1. Relax NG Schema Registration . . . . . . . . . . . . . . . 48
9.2. XML Namespace Registration . . . . . . . . . . . . . . . . 49 9.2. XML Namespace Registration . . . . . . . . . . . . . . . . 48
9.3. Conference Object Identifier Registration . . . . . . . . 49 9.3. Conference Object Identifier Registration . . . . . . . . 49
9.4. Conference User Identifier Registration . . . . . . . . . 50 9.4. Conference User Identifier Registration . . . . . . . . . 50
10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 50 10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 50
11. References . . . . . . . . . . . . . . . . . . . . . . . . . . 51 11. References . . . . . . . . . . . . . . . . . . . . . . . . . . 51
11.1. Normative References . . . . . . . . . . . . . . . . . . . 51 11.1. Normative References . . . . . . . . . . . . . . . . . . . 51
11.2. Informative References . . . . . . . . . . . . . . . . . . 51 11.2. Informative References . . . . . . . . . . . . . . . . . . 51
Appendix A. Appendix A. Non-Normative RELAX NG Schema in XML Appendix A. Non-Normative RELAX NG Schema in XML Syntax . . . . . 52
Syntax . . . . . . . . . . . . . . . . . . . . . . . 52
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 73 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 73
Intellectual Property and Copyright Statements . . . . . . . . . . 75 Intellectual Property and Copyright Statements . . . . . . . . . . 75
1. Introduction 1. Introduction
There is a core data set of conference information that is utilized There is a core data set of conference information that is utilized
in any conference, independent of the specific conference media. in any conference, independent of the specific conference media.
This core data set called the 'conference information data model' is This core data set called the 'conference information data model' is
defined in this document using an Extensible Markup Language (XML)- defined in this document using an Extensible Markup Language (XML)-
based. The conference information data model defined in this based. The conference information data model defined in this
document is logically represented by the conference object. document is logically represented by the conference object.
Conference objects are a fundamental concept in Centralized Conference objects are a fundamental concept in Centralized
Conferencing, as described in the Centralized Conferencing Framework Conferencing, as described in the Centralized Conferencing Framework
[I-D.ietf-xcon-framework]. A conference object contains data that [RFC5239]. A conference object contains data that represents a
represents a conference during each of its various stages (e.g., conference during each of its various stages (e.g., created/creation,
created/creation, reserved/reservation, active/activation, completed/ reserved/reservation, active/activation, completed/completion). A
completion). A conference object can be manipulated using a conference object can be manipulated using a conference control
conference control protocol at a conference server. The conference protocol at a conference server. The conference object represents a
object represents a particular instantiation of a conference particular instantiation of a conference information data model.
information data model. Consequently, conference objects follow the Consequently, conference objects follow the XML format defined in
XML format defined in this document. this document.
A conference object contains the core information of a conference A conference object contains the core information of a conference
(i.e., capabilities, membership, call control signaling, media, etc.) (i.e., capabilities, membership, call control signaling, media, etc.)
and specifies who, and in which way that information can be and specifies who, and in which way that information can be
manipulated. manipulated.
Figure 1 shows the logical functional elements of a conference server Figure 1 shows the logical functional elements of a conference server
as defined by the Centralized Conferencing Framework as defined by the Centralized Conferencing Framework [RFC5239]. They
[I-D.ietf-xcon-framework]. They are a Conference Control Server, a are a Conference Control Server, a Floor Control Server, a number of
Floor Control Server, a number of Foci, and a Notification Service. Foci, and a Notification Service. A conference control protocol
A conference control protocol provides the interface between a provides the interface between a conference control client and the
conference control client and the conference control server. A floor conference control server. A floor control protocol (e.g., BFCP
control protocol (e.g., BFCP [RFC4582]) provides the interface [RFC4582]) provides the interface between a floor control client and
between a floor control client and the floor control server. A call the floor control server. A call signaling protocol (e.g., SIP,
signaling protocol (e.g., SIP, H.323, Q.931, ISUP, etc.) provides the H.323, Q.931, ISUP, etc.) provides the interface between a call
interface between a call signaling client and a Focus. A signaling client and a Focus. A notification protocol (e.g., SIP-
notification protocol (e.g., SIP-based event notifications [RFC3265]) based event notifications [RFC3265]) provides the interface between
provides the interface between the conferencing client and the the conferencing client and the Notification Service. Within a
Notification Service. Within a conference, the conference control conference, the conference control server, floor control server, and
server, floor control server, and focus can modify the information in focus can modify the information in the conference object.
the conference object.
............................................................... ...............................................................
. Conferencing Server . . Conferencing Server .
. +---------------------------------------------------+ . . +---------------------------------------------------+ .
. | C o n f e r e n c e o b j e c t | . . | C o n f e r e n c e o b j e c t | .
. +-+--------------------------------------------------+| . . +-+--------------------------------------------------+| .
. | C o n f e r e n c e o b j e c t || . . | C o n f e r e n c e o b j e c t || .
. +-+---------------------------------------------------+|| . . +-+---------------------------------------------------+|| .
. | C o n f e r e n c e o b j e c t ||| . . | C o n f e r e n c e o b j e c t ||| .
. | +--------------------------------------------------+||| . . | +--------------------------------------------------+||| .
skipping to change at page 6, line 8 skipping to change at page 6, line 8
|Protocol |Protocol |Protocol | |Protocol |Protocol |Protocol |
........v..............v..............v..........v............. ........v..............v..............v..........v.............
. C o n f e r e n c i n g C l i e n t . . C o n f e r e n c i n g C l i e n t .
............................................................... ...............................................................
Figure 1: Conference Server Architecture Figure 1: Conference Server Architecture
The Session Initiation Protocol (SIP) Event Package for Conference The Session Initiation Protocol (SIP) Event Package for Conference
State, specified in [RFC4575], already defines a data format for State, specified in [RFC4575], already defines a data format for
conferences. However, that model is SIP specific and lacks elements conferences. However, that model is SIP specific and lacks elements
related to some of the functionality defined by the Centralized related to some of the functionality defined by the Centralized
Conferencing Framework [I-D.ietf-xcon-framework] (e.g., floor Conferencing Framework [RFC5239] (e.g., floor control). The data
control). The data model defined in this document constitutes a model defined in this document constitutes a superset of the data
superset of the data format defined in [RFC4575]. The result is a format defined in [RFC4575]. The result is a data format that
data format that supports more call signaling protocols besides SIP supports more call signaling protocols besides SIP and that covers
and that covers all the functionality defined in the Centralized all the functionality defined in the Centralized Conferencing
Conferencing Framework [I-D.ietf-xcon-framework]. Framework [RFC5239].
2. Terminology 2. Terminology
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [RFC2119]. document are to be interpreted as described in RFC 2119 [RFC2119].
This document uses the terminology defined in the Centralized This document uses the terminology defined in the Centralized
Conferencing Framework [I-D.ietf-xcon-framework], the SIPPING Conferencing Framework [RFC5239], the SIPPING conferencing framework
conferencing framework [RFC4353] and the BFCP (Binary Floor Control [RFC4353] and the BFCP (Binary Floor Control Protocol) specification
Protocol) specification [RFC4582]. Readers of this document should [RFC4582]. Readers of this document should be familiar with the
be familiar with the terminology used in those documents. terminology used in those documents.
3. Overview 3. Overview
The data model specified in this document is the result of extending The data model specified in this document is the result of extending
the data format defined in [RFC4575] with new elements. Examples of the data format defined in [RFC4575] with new elements. Examples of
such extensions include scheduling elements, media control elements, such extensions include scheduling elements, media control elements,
floor control elements, non-SIP URIs, and addition of localization floor control elements, non-SIP URIs, and addition of localization
extensions to text elements. This data model can be used by extensions to text elements. This data model can be used by
conference servers providing different types of basic conferences. conference servers providing different types of basic conferences.
It is expected that this data model can be further extended with new It is expected that this data model can be further extended with new
skipping to change at page 13, line 49 skipping to change at page 13, line 49
The following sections describe these elements in detail. The full The following sections describe these elements in detail. The full
Relax NG schema is provided Section 5. Relax NG schema is provided Section 5.
4.1. <conference-info> 4.1. <conference-info>
A conference object document begins with the root element tag A conference object document begins with the root element tag
<conference-info>, which is defined in [RFC4575]. The <conference- <conference-info>, which is defined in [RFC4575]. The <conference-
info> attributes are described in [RFC4575]. Note that the info> attributes are described in [RFC4575]. Note that the
<conference-info> element does not have the attributes 'state' and <conference-info> element does not have the attributes 'state' and
'version' defined in [RFC4575] for this element because these 'version' defined in [RFC4575] for this element because these
attributes only applies to notification mechanisms. attributes only apply to notification mechanisms.
In addition, [RFC4575] defines an 'entity' attribute that contains In addition, [RFC4575] defines an 'entity' attribute that contains
the conference object identifier (XCON-URI) that identifies the the conference object identifier (XCON-URI) that identifies the
conference being described in the document. conference being described in the document.
The <conference-info> element contains the <conference-description>, The <conference-info> element contains the <conference-description>,
<host-info>, <conference-state>, <floor-information>, <users>, <host-info>, <conference-state>, <floor-information>, <users>,
<sidebars-by-ref>, and <sidebars-by-val> child elements. All these <sidebars-by-ref>, and <sidebars-by-val> child elements. All these
elements, except <floor-information>, are defined in [RFC4575]. A elements, except <floor-information>, are defined in [RFC4575]. A
conference document MUST at least include the <conference- conference document MUST at least include the <conference-
skipping to change at page 15, line 28 skipping to change at page 15, line 28
element contains one or more <entry> elements each defining the time element contains one or more <entry> elements each defining the time
information specifying a single conference occurrence. information specifying a single conference occurrence.
Every <entry> element contains the following child elements: Every <entry> element contains the following child elements:
o <base>: The <base> child element specifies the iCalendar object of o <base>: The <base> child element specifies the iCalendar object of
the conference. The iCalendar object components are defined in the conference. The iCalendar object components are defined in
[RFC2445]. [RFC2445].
o <mixing-start-offset>: The <mixing-start-offset> child element o <mixing-start-offset>: The <mixing-start-offset> child element
specifies when the conference media mixing starts before the specifies when the conference media mixing starts before the
conference starts. The <mixing-start-offset> child element conference starts. If the <mixing-start-offset> element is not
expresses the offset as signed integers representing seconds present, it indicates that the conference media mixing starts
before/after the iCalendar DTSTART field [RFC2445]. If the immediately. The <mixing-start-offset> has the mandatory
<mixing-start-offset> element is not present, it indicates that 'required-participant' attribute. This attribute contains one of
the conference media mixing starts immediately. The <mixing- the following values: "none", "administrator", "moderator",
start-offset> has the mandatory 'required-participant' attribute. "user", "observer", and "participant". The roles semantic
This attribute contains one of the following values: "none", definition is out of the scope of this document and is subject to
"administrator", "moderator", "user", "observer", and future policy documents. More values can be specified in the
"participant". More values can be specified in the future. The future. The 'required-participant' attribute allows a privileged
'required-participant' attribute allows a privileged user to user to define when media mixing starts based on the latter of the
define when media mixing starts based on the latter of the mixing mixing start time, and the time the first participant arrives. If
start time, and the time the first participant arrives. If the the value is set to "none'", mixing starts according to the mixing
value is set to "none'", mixing starts according to the mixing
start time. start time.
o <mixing-end-offset>: The <mixing-end-offset> child element that o <mixing-end-offset>: The <mixing-end-offset> child element that
specifies the time a conference media mixing stops after the specifies the time a conference media mixing stops after the
conference stops. The <mixing-end-offset> child element expresses conference stops. If the <mixing-end-offset> element is not
the offset as signed integers representing seconds before/after present, it indicates that the conference occurrence is not
the iCalendar DTEND field [RFC2445]. If the <mixing-end-offset> bounded. The <mixing-end-offset> elements both have the mandatory
element is not present, it indicates that the conference 'required-participant' attribute. This attribute contains one of
occurrence is not bounded. The <mixing-end-offset> elements both the following values: "none", "administrator", "moderator",
have the mandatory 'required-participant' attribute. This "observer", "user", and "participant". More values can be
attribute contains one of the following values: "none", specified in the future. The 'required-participant' attribute
"administrator", "moderator", "observer", "user", and allows a privileged user to define when media mixing ends based on
"participant". More values can be specified in the future. The the earlier of the <mixing-end-offset>, and the time the last
'required-participant' attribute allows a privileged user to participant leaves. If the value is set to "none", mixing stops
define when media mixing ends based on the earlier of the <mixing- according to the <mixing-end-offset>. If the conference policy
end-offset>, and the time the last participant leaves. If the was modified so that last privileged user is now a normal
value is set to "none", mixing stops according to the <mixing-end- conference participant, and the conference requires a privileged
offset>. If the conference policy was modified so that last user to continue; that conference MUST terminate.
privileged user is now a normal conference participant, and the
conference requires a privileged user to continue; that conference
MUST terminate.
o <can-join-after-offset>: An administrator can indicate the time o <can-join-after-offset>: An administrator can indicate the time
when users can join a conference by populating the <can-join- when users can join a conference by populating the <can-join-
after-offset> element. after-offset> element.
o <must-join-before-offset>: An administrator can define the time o <must-join-before-offset>: An administrator can define the time
after which new users are not allowed to join the conference after which new users are not allowed to join the conference
anymore. This is done by populating the <must-join-before-offset> anymore.
element expressing the offset as signed integers representing
seconds before/after DTSTART field.
o <request-user>: It is possible to define the time when users or o <request-user>: It is possible to define the time when users or
resources on the <allowed-users-list> are requested to join the resources on the <allowed-users-list> are requested to join the
conference by using the <request-users> element. This element conference by using the <request-users> element.
expresses the offset as signed integers representing seconds
before/after DTSTART field.
o <notify-end-of-conference>: The <notify-end-of-conference> element o <notify-end-of-conference>: The <notify-end-of-conference> element
defines in seconds when the system has to send a notification when defines in seconds when the system has to send a notification when
the end of the conference is approaching. If the <notify-end-of- the end of the conference is approaching. If the <notify-end-of-
conference> element is not present, it indicates that the system conference> element is not present, it indicates that the system
does not notify the users when the end of the conference is does not notify the users when the end of the conference is
approaching. The <notify-end-of-conference> child element approaching.
expresses the offset as signed integers representing seconds after
DTSTART field.
o <allowed-extend-mixing-end-offset>: The <allowed-extend-mixing- o <allowed-extend-mixing-end-offset>: The <allowed-extend-mixing-
end-offset> refers to the possibility to extend the conference. end-offset> refers to the possibility to extend the conference.
It has a boolean value. It has a boolean value.
4.2.8. <conf-uris> 4.2.8. <conf-uris>
The <conf-uris> contains the identifiers to be used in order to The <conf-uris> contains the identifiers to be used in order to
access the conference by different signaling means. This document access the conference by different signaling means. This document
describes a new element, <conference-password>. This element describes a new element, <conference-password>. This element
contains the password of the conference, for instance, PSTN contains the password(s) of the conference, for instance, PSTN
conference will store the 'PIN code' in this element. All the other conference will store the 'PIN code' in this element. All the other
<conf-uris> child element are described in section 5.3.1 of <conf-uris> child element are described in section 5.3.1 of
[RFC4575]. Future extensions to this schema may define new values [RFC4575]. Future extensions to this schema may define new values
and register them with IANA. and register them with IANA.
4.2.9. <service-uris> 4.2.9. <service-uris>
The <service-uris> describes auxiliary services available for the The <service-uris> describes auxiliary services available for the
conference. The <service-uris> element is described in section 5.3.2 conference. The <service-uris> element is described in section 5.3.2
of [RFC4575]. Future extensions to this schema may define new values of [RFC4575]. Future extensions to this schema may define new values
skipping to change at page 22, line 4 skipping to change at page 21, line 42
A floor can be used for one or more media types; A floor can be used for one or more media types;
o <algorithm>: A floor can be controlled using many algorithms; the o <algorithm>: A floor can be controlled using many algorithms; the
mandatory <algorithm> element MUST be set to any of the mandatory <algorithm> element MUST be set to any of the
"moderator-controlled", "FCFS" or "random" values indicating the "moderator-controlled", "FCFS" or "random" values indicating the
algorithm. The "Moderator-controlled" value indicates that the algorithm. The "Moderator-controlled" value indicates that the
moderator of the conference controls the floor. The "FCFS" value moderator of the conference controls the floor. The "FCFS" value
states for 'first-come-first-served' floor control. states for 'first-come-first-served' floor control.
o <max-floor-users>: The <max-floor-users> child element in the o <max-floor-users>: The <max-floor-users> child element in the
<floor> element is optional and, if present, dictates the maximum <floor> element is optional and, if present, dictates the maximum
number of users who can have the floor at one time. number of users who can have the floor at one time.
o <moderator-id>: The optional <moderator-id> indicates the 'User o <moderator-id>: The optional <moderator-id> indicates the 'User
ID' of the moderator. It MUST be set if the element <algorithm> ID' of the moderator(s). It MUST be set if the element
is set to "Moderator-controlled" value. When the floor is created <algorithm> is set to "Moderator-controlled" value. When the
within the conferencing system, the XCON-User identifier MAY be floor is created within the conferencing system, the XCON-User
used as the moderator-id. In the case of BFCP as the floor identifier MAY be used as the moderator-id. In the case of BFCP
control protocol, the <moderator-id> is defined in [RFC4582] as the floor control protocol, the <moderator-id> is defined in
section 5.1. Note that [RFC4582] refers to the moderator role as [RFC4582] section 3. Note that [RFC4582] refers to the moderator
a 'floor chair'. role as a 'floor chair'.
4.6. <users> 4.6. <users>
The <users> element is described in [RFC4575] and contains the <join- The <users> element is described in [RFC4575] and contains the <join-
handling>, <user-admission-policy>, <allowed-users-list> and <deny- handling>, <user-admission-policy>, <allowed-users-list> and <deny-
users-list> defined in this document and <user> child elements users-list> defined in this document and <user> child elements
defined in [RFC4575]. Note that the <users> element does not have defined in [RFC4575]. Note that the <users> element does not have
the attribute 'state' defined in [RFC4575] for this element because the attribute 'state' defined in [RFC4575] for this element because
this attribute only applies to notifications mechanism. The this attribute only applies to notifications mechanism. The
following sections describe these elements in more detail. Other following sections describe these elements in more detail. Other
skipping to change at page 23, line 26 skipping to change at page 23, line 16
conferencing participant to be sufficiently authenticated (as conferencing participant to be sufficiently authenticated (as
before) but does not restrict which participants can join the before) but does not restrict which participants can join the
conference. Typically this implies that anyone capable of conference. Typically this implies that anyone capable of
authenticating with the conferencing system may join the authenticating with the conferencing system may join the
conference. conference.
o "anonymous": An 'anonymous' policy allows any join requests in and o "anonymous": An 'anonymous' policy allows any join requests in and
is the least restrictive policy. is the least restrictive policy.
4.6.3. <allowed-users-list> 4.6.3. <allowed-users-list>
The <allowed-users-list> child element contains a list of user URIs, The <allowed-users-list> child element contains a list of user URIs
roles, or domains (*@example.com) that the focus uses to determine (e.g. SIP URI, xcon-userid defined in Section 4.6.5), roles (defined
who can join the conference, who can be invited to join a conference, in Section 4.6.5.4), or domains (e.g.: *@example.com) that the focus
or who the focus needs to "refer to" the conference. The <allowed- uses to determine who can join the conference, who can be invited to
users-list> element includes zero or more <target> child elements. join a conference, or who the focus needs to "refer to" the
This child element includes the mandatory 'uri' attribute and the conference. The <allowed-users-list> element includes zero or more
mandatory 'method' attribute. The same 'uri' attribute with <target> child elements. This child element includes the mandatory
different method values can appear in the list more than once. 'uri' attribute and the mandatory 'method' attribute. The same 'uri'
attribute with different method values can appear in the list more
than once.
The 'method' attribute is a list with the following values: The 'method' attribute is a list with the following values:
o "dial-in": The value "dial-in" is used by the focus to determine o "dial-in": The value "dial-in" is used by the focus to determine
who can join the conference. who can join the conference.
o "dial-out": The value "dial-out" contains a list of resources that o "dial-out": The value "dial-out" contains a list of resources that
the focus will initiate a session with. the focus will initiate a session with.
o "refer": The value "refer" is used by the focus to determine the o "refer": The value "refer" is used by the focus to determine the
resources that the focus needs to "refer to" the conference. In resources that the focus needs to "refer to" the conference. In
SIP, this is achieved by the focus sending a REFER request to SIP, this is achieved by the focus sending a REFER request to
skipping to change at page 24, line 25 skipping to change at page 24, line 18
user identifier (XCON-USERID) and email address of a user. It has user identifier (XCON-USERID) and email address of a user. It has
three attributes: 'name', 'nickname' and 'id' and an <email> three attributes: 'name', 'nickname' and 'id' and an <email>
element. Future extensions to this schema may define new elements element. Future extensions to this schema may define new elements
for the <user> element. for the <user> element.
Future extensions to this schema may define new elements for the Future extensions to this schema may define new elements for the
<target> element. <target> element.
4.6.4. <deny-users-list> 4.6.4. <deny-users-list>
The <deny-users-list> child element contains a list of user URIs, The <deny-users-list> child element contains a list of user URIs
roles, or domains (*@example.com) that the focus uses to determine (e.g. SIP URI, xcon-userid defined in Section 4.6.5), roles (defined
who has been 'banned' from the conference. Such banned users are in Section 4.6.5.4), or domains (e.g.: *@example.com) that the focus
prevented from re-joining the chatroom until they have been un- uses to determine who has been 'banned' from the conference. Such
banned. banned users are prevented from re-joining the chatroom until they
have been un-banned.
4.6.5. <user> and Its <user> Sub-elements 4.6.5. <user> and Its <user> Sub-elements
The element <user> is described in [RFC4575] and describes a single The element <user> is described in [RFC4575] and describes a single
participant in the conference. The <user> element has an attribute participant in the conference. The <user> element has an attribute
'entity'. Note that the <user> element does not have the attribute 'entity'. Note that the <user> element does not have the attribute
'state' defined in [RFC4575] for this element because this attribute 'state' defined in [RFC4575] for this element because this attribute
only applies to notifications mechanism. only applies to notifications mechanism.
The attribute 'entity' contains a unique conference user identifier The attribute 'entity' contains a unique conference user identifier
skipping to change at page 28, line 48 skipping to change at page 28, line 44
The <sidebars-by-val> element contains a set of <entry> child The <sidebars-by-val> element contains a set of <entry> child
elements each containing information about a single sidebar. This elements each containing information about a single sidebar. This
element is described in [RFC4575], 5.9.2. Note that the <sidebars- element is described in [RFC4575], 5.9.2. Note that the <sidebars-
by-val> element does not have the attribute 'state' defined in by-val> element does not have the attribute 'state' defined in
[RFC4575] for this element because this attribute only applies to [RFC4575] for this element because this attribute only applies to
notifications mechanism. notifications mechanism.
5. RELAX NG Schema 5. RELAX NG Schema
In accordance with the Centralized Conferencing Framework document In accordance with the Centralized Conferencing Framework document
[I-D.ietf-xcon-framework], the Conference Object is a logical [RFC5239], the Conference Object is a logical representation of a
representation of a conference instance. The conference information conference instance. The conference information schema contains core
schema contains core information that is utilized in any conference. information that is utilized in any conference. It also contains the
It also contains the variable information part of the Conference variable information part of the Conference Object.
Object.
This specification defines some document fragments in RELAX NG format This specification defines some document fragments in RELAX NG format
[RELAX]. [RELAX].
namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0" namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0"
default namespace ns1 = "urn:ietf:params:xml:ns:xcon-conference-info" default namespace ns1 = "urn:ietf:params:xml:ns:xcon-conference-info"
namespace ns2 = "urn:ietf:params:xml:ns:conference-info" namespace ns2 = "urn:ietf:params:xml:ns:conference-info"
namespace local = "" namespace local = ""
start = element conference-info { conference-type } start = element conference-info { conference-type }
skipping to change at page 29, line 46 skipping to change at page 29, line 42
anyAttribute, anyAttribute,
element display-text { text }?, element display-text { text }?,
element subject { text }?, element subject { text }?,
element free-text { text }?, element free-text { text }?,
element keywords { element keywords {
list { xsd:string* } list { xsd:string* }
}?, }?,
element allow-sidebars { xsd:boolean }?, element allow-sidebars { xsd:boolean }?,
element conference-time { conferencetime-type }?, element conference-time { conferencetime-type }?,
element conf-uris { element conf-uris {
(element conference-password { text }?, (element conference-password { text }*,
conference-info-urn)* conference-info-urn)*
}?, }?,
element service-uris { conference-info-urn* }?, element service-uris { conference-info-urn* }?,
element maximum-user-count { xsd:int }?, element maximum-user-count { xsd:int }?,
element available-media { conference-media-type }?, element available-media { conference-media-type }?,
anyElement* anyElement*
} }
# CONFERENCE TIME # CONFERENCE TIME
conferencetime-type = conferencetime-type =
anyAttribute, anyAttribute,
element entry { element entry {
element base { text }?, element base { text }?,
element mixing-start-offset { element mixing-start-offset {
xsd:dateTime { pattern = ".+T.+Z.*" }, xsd:dateTime { pattern = ".+T.+Z.*" },
attribute required-participant { single-role-type }, attribute required-participant { single-role-type },
anyAttribute anyAttribute
}?, }?,
element mixing-end-offset { element mixing-end-offset {
skipping to change at page 32, line 34 skipping to change at page 32, line 29
element locked { xsd:boolean }?, element locked { xsd:boolean }?,
anyElement* anyElement*
# FLOOR INFORMATION TYPE # FLOOR INFORMATION TYPE
floor-information-type = floor-information-type =
anyAttribute, anyAttribute,
(element conference-ID { xsd:unsignedLong }, (element conference-ID { xsd:unsignedLong },
element allow-floor-events { xsd:boolean }, element allow-floor-events { xsd:boolean },
element floor-request-handling { floor-request-type }, element floor-request-handling { floor-request-type },
element conference-floor-policy { Conference-floor-policy }, element conference-floor-policy { conference-floor-policy },
anyElement*)* anyElement*)*
# FLOOR REQUEST TYPE # FLOOR REQUEST TYPE
floor-request-type = xsd:string "block" | xsd:string "confirm" | text floor-request-type = xsd:string "block" | xsd:string "confirm" | text
# CONFERENCE FLOOR POLICY # CONFERENCE FLOOR POLICY
Conference-floor-policy = conference-floor-policy =
anyAttribute, anyAttribute,
element floor { element floor {
attribute id { text }, attribute id { text },
anyAttribute, anyAttribute,
element media-label { xsd:nonNegativeInteger }+, element media-label { xsd:nonNegativeInteger }+,
(element algorithm { (element algorithm {
xsd:string "moderator-controlled" xsd:string "moderator-controlled"
| xsd:string "FCFS" | xsd:string "FCFS"
| xsd:string "random" | xsd:string "random"
| text | text
}, },
element max-floor-users { xsd:nonNegativeInteger }, element max-floor-users { xsd:nonNegativeInteger },
element moderator-id { text }, element moderator-id { text }*,
anyElement*)* anyElement*)*
}+ }+
# USERS TYPE # USERS TYPE
users-type = users-type =
anyAttribute, anyAttribute,
element join-handling { join-handling-type }?, element join-handling { join-handling-type }?,
element user-admission-policy { user-admission-policy-type }?, element user-admission-policy { user-admission-policy-type }?,
element allowed-users-list { UserList }?, element allowed-users-list { UserList }?,
skipping to change at page 37, line 5 skipping to change at page 36, line 47
| lang | lang
| required-participant | required-participant
| label | label
| decision | decision
| name | name
| policy | policy
| uri | uri
| method | method
| id | id
| local:* | local:*
| ns1:*) | ns2:*) { text }*
{ text }*
# ************************************************************* # *************************************************************
# TYPES DEFINED IN THE EVENT PACKAGE FOR # TYPES DEFINED IN THE EVENT PACKAGE FOR CONFERENCE STATE
# CONFERENCE STATE
# - RFC4575 - # - RFC4575 -
# ************************************************************* # *************************************************************
# WILDCARD FOR EVENT-PACKAGE NAMESPACE # WILDCARD FOR EVENT-PACKAGE NAMESPACE
conference-info-urn = conference-info-urn =
element * - (ns2:* | local:*) { element * - (ns1:* | local:*) {
mixed { mixed {
(attribute * { text } (attribute * { text }
| conference-info-urn)* | conference-info-urn)*
} }
} }
# DEFINITION OF ENDPOINT STATUS TYPE # DEFINITION OF ENDPOINT STATUS TYPE
media-status-type = media-status-type =
"recvonly" | "sendonly" | "sendrecv" | "inactive" | text "recvonly" | "sendonly" | "sendrecv" | "inactive" | text
skipping to change at page 51, line 28 skipping to change at page 51, line 23
Requirement Levels", BCP 14, RFC 2119, March 1997. Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC2445] Dawson, F. and Stenerson, D., "Internet Calendaring and [RFC2445] Dawson, F. and Stenerson, D., "Internet Calendaring and
Scheduling Core Object Specification (iCalendar)", Scheduling Core Object Specification (iCalendar)",
RFC 2445, November 1998. RFC 2445, November 1998.
[RFC4575] Rosenberg, J., Schulzrinne, H., and O. Levin, "A Session [RFC4575] Rosenberg, J., Schulzrinne, H., and O. Levin, "A Session
Initiation Protocol (SIP) Event Package for Conference Initiation Protocol (SIP) Event Package for Conference
State", RFC 4575, August 2006. State", RFC 4575, August 2006.
11.2. Informative References [RFC4582] Camarillo, G., Ott, J., and K. Drage, "The Binary Floor
Control Protocol (BFCP)", RFC 4582, November 2006.
[I-D.ietf-xcon-framework] [RFC4583] Camarillo, G., "Session Description Protocol (SDP) Format
Barnes, M., Boulton, C., and O. Levin, "A Framework for for Binary Floor Control Protocol (BFCP) Streams",
Centralized Conferencing", draft-ietf-xcon-framework-10 RFC 4583, November 2006.
(work in progress), November 2007.
[RFC5239] Barnes, M., Boulton, C., and O. Levin, "A Framework for
Centralized Conferencing", RFC 5239, June 2008.
11.2. Informative References
[IANA] "IANA registry for RTP Payload Types" [IANA] "IANA registry for RTP Payload Types"
"http://www.iana.org/assignments/rtp-parameters". "http://www.iana.org/assignments/rtp-parameters".
[RELAX] "RELAX NG Home Page" "http://relaxng.org/". [RELAX] "RELAX NG Home Page" "http://relaxng.org/".
[RFC3264] Rosenberg, J. and H. Schulzrinne, "An Offer/Answer Model [RFC3264] Rosenberg, J. and H. Schulzrinne, "An Offer/Answer Model
with Session Description Protocol (SDP)", RFC 3264, with Session Description Protocol (SDP)", RFC 3264,
June 2002. June 2002.
skipping to change at page 52, line 9 skipping to change at page 52, line 9
Event Notification", RFC 3265, June 2002. Event Notification", RFC 3265, June 2002.
[RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform [RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform
Resource Identifier (URI): Generic Syntax", STD 66, Resource Identifier (URI): Generic Syntax", STD 66,
RFC 3986, January 2005. RFC 3986, January 2005.
[RFC4353] Rosenberg, J., "A Framework for Conferencing with the [RFC4353] Rosenberg, J., "A Framework for Conferencing with the
Session Initiation Protocol (SIP)", RFC 4353, Session Initiation Protocol (SIP)", RFC 4353,
February 2006. February 2006.
[RFC4582] Camarillo, G., Ott, J., and K. Drage, "The Binary Floor
Control Protocol (BFCP)", RFC 4582, November 2006.
[RFC4583] Camarillo, G., "Session Description Protocol (SDP) Format
for Binary Floor Control Protocol (BFCP) Streams",
RFC 4583, November 2006.
[RFC4855] Casner, S., "Media Type Registration of RTP Payload [RFC4855] Casner, S., "Media Type Registration of RTP Payload
Formats", RFC 4855, February 2007. Formats", RFC 4855, February 2007.
[RFC5018] Camarillo, G., "Connection Establishment in the Binary [RFC5018] Camarillo, G., "Connection Establishment in the Binary
Floor Control Protocol (BFCP)", RFC 5018, September 2007. Floor Control Protocol (BFCP)", RFC 5018, September 2007.
[W3C.REC-xml-20001006] [W3C.REC-xml-20001006]
Paoli, J., Bray, T., Maler, E., and C. Sperberg-McQueen, Paoli, J., Bray, T., Maler, E., and C. Sperberg-McQueen,
"Extensible Markup Language (XML) 1.0 (Second Edition)", "Extensible Markup Language (XML) 1.0 (Second Edition)",
World Wide Web Consortium FirstEdition REC-xml-20001006, World Wide Web Consortium FirstEdition REC-xml-20001006,
October 2000, October 2000,
<http://www.w3.org/TR/2000/REC-xml-20001006>. <http://www.w3.org/TR/2000/REC-xml-20001006>.
Appendix A. Appendix A. Non-Normative RELAX NG Schema in XML Syntax Appendix A. Non-Normative RELAX NG Schema in XML Syntax
<grammar ns="urn:ietf:params:xml:ns:xcon-conference-info" <grammar ns="urn:ietf:params:xml:ns:xcon-conference-info"
xmlns="http://relaxng.org/ns/structure/1.0" xmlns="http://relaxng.org/ns/structure/1.0"
xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
<start> <start>
<element name="conference-info"> <element name="conference-info">
<ref name="conference-type"/> <ref name="conference-type"/>
</element> </element>
</start> </start>
skipping to change at page 54, line 40 skipping to change at page 54, line 33
</element> </element>
</optional> </optional>
<optional> <optional>
<element name="conference-time"> <element name="conference-time">
<ref name="conferencetime-type"/> <ref name="conferencetime-type"/>
</element> </element>
</optional> </optional>
<optional> <optional>
<element name="conf-uris"> <element name="conf-uris">
<zeroOrMore> <zeroOrMore>
<optional> <zeroOrMore>
<element name="conference-password"> <element name="conference-password">
<text/> <text/>
</element> </element>
</optional> </zeroOrMore>
<ref name="conference-info-urn"/> <ref name="conference-info-urn"/>
</zeroOrMore> </zeroOrMore>
</element> </element>
</optional> </optional>
<optional> <optional>
<element name="service-uris"> <element name="service-uris">
<zeroOrMore> <zeroOrMore>
<ref name="conference-info-urn"/> <ref name="conference-info-urn"/>
</zeroOrMore> </zeroOrMore>
</element> </element>
skipping to change at page 61, line 10 skipping to change at page 61, line 4
<zeroOrMore> <zeroOrMore>
<element name="conference-ID"> <element name="conference-ID">
<data type="unsignedLong"/> <data type="unsignedLong"/>
</element> </element>
<element name="allow-floor-events"> <element name="allow-floor-events">
<data type="boolean"/> <data type="boolean"/>
</element> </element>
<element name="floor-request-handling"> <element name="floor-request-handling">
<ref name="floor-request-type"/> <ref name="floor-request-type"/>
</element> </element>
<element name="conference-floor-policy"> <element name="conference-floor-policy">
<ref name="Conference-floor-policy"/> <ref name="conference-floor-policy"/>
</element> </element>
<zeroOrMore> <zeroOrMore>
<ref name="anyElement"/> <ref name="anyElement"/>
</zeroOrMore> </zeroOrMore>
</zeroOrMore> </zeroOrMore>
</define> </define>
<!-- <!--
FLOOR REQUEST TYPE FLOOR REQUEST TYPE
--> -->
<define name="floor-request-type"> <define name="floor-request-type">
<choice> <choice>
<value type="string">block</value> <value type="string">block</value>
<value type="string">confirm</value> <value type="string">confirm</value>
<text/> <text/>
</choice> </choice>
</define> </define>
<!-- <!--
CONFERENCE FLOOR POLICY CONFERENCE FLOOR POLICY
--> -->
<define name="Conference-floor-policy"> <define name="conference-floor-policy">
<ref name="anyAttribute"/> <ref name="anyAttribute"/>
<oneOrMore> <oneOrMore>
<element name="floor"> <element name="floor">
<attribute name="id"> <attribute name="id">
<text/> <text/>
</attribute> </attribute>
<ref name="anyAttribute"/> <ref name="anyAttribute"/>
<oneOrMore> <oneOrMore>
<element name="media-label"> <element name="media-label">
<data type="nonNegativeInteger"/> <data type="nonNegativeInteger"/>
skipping to change at page 62, line 9 skipping to change at page 61, line 50
<choice> <choice>
<value type="string">moderator-controlled</value> <value type="string">moderator-controlled</value>
<value type="string">FCFS</value> <value type="string">FCFS</value>
<value type="string">random</value> <value type="string">random</value>
<text/> <text/>
</choice> </choice>
</element> </element>
<element name="max-floor-users"> <element name="max-floor-users">
<data type="nonNegativeInteger"/> <data type="nonNegativeInteger"/>
</element> </element>
<zeroOrMore>
<element name="moderator-id"> <element name="moderator-id">
<text/> <text/>
</element> </element>
</zeroOrMore>
<zeroOrMore> <zeroOrMore>
<ref name="anyElement"/> <ref name="anyElement"/>
</zeroOrMore> </zeroOrMore>
</zeroOrMore> </zeroOrMore>
</element> </element>
</oneOrMore> </oneOrMore>
</define> </define>
<!-- <!--
USERS TYPE USERS TYPE
--> -->
 End of changes. 47 change blocks. 
141 lines changed or deleted 126 lines changed or added

This html diff was produced by rfcdiff 1.35. The latest version is available from http://tools.ietf.org/tools/rfcdiff/