draft-ietf-xcon-common-data-model-21.txt   draft-ietf-xcon-common-data-model-22.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: May 14, 2011 D. Morgan Expires: June 26, 2011 D. Morgan
Fidelity Investments Fidelity Investments
J. Urpalainen J. Urpalainen
Nokia Nokia
Nov 10, 2010 Dec 23, 2010
Conference Information Data Model for Centralized Conferencing (XCON) Conference Information Data Model for Centralized Conferencing (XCON)
draft-ietf-xcon-common-data-model-21.txt draft-ietf-xcon-common-data-model-22.txt
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 1, line 40 skipping to change at page 1, line 40
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
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."
This Internet-Draft will expire on May 14, 2011. This Internet-Draft will expire on June 26, 2011.
Copyright Notice Copyright Notice
Copyright (c) 2010 IETF Trust and the persons identified as the Copyright (c) 2010 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 3, line 20 skipping to change at page 3, line 20
3.1. Data Model Format . . . . . . . . . . . . . . . . . . . . 7 3.1. Data Model Format . . . . . . . . . . . . . . . . . . . . 7
3.2. Data Model Namespace . . . . . . . . . . . . . . . . . . . 7 3.2. Data Model Namespace . . . . . . . . . . . . . . . . . . . 7
3.3. The Conference Object Identifier . . . . . . . . . . . . . 8 3.3. The Conference Object Identifier . . . . . . . . . . . . . 8
3.3.1. Conference Object URI Definition . . . . . . . . . . . 10 3.3.1. Conference Object URI Definition . . . . . . . . . . . 10
3.3.2. Normalization and Conference Object URI Comparison . . 10 3.3.2. Normalization and Conference Object URI Comparison . . 10
3.4. Data Model Structure . . . . . . . . . . . . . . . . . . . 10 3.4. Data Model Structure . . . . . . . . . . . . . . . . . . . 10
4. Data Model Definition . . . . . . . . . . . . . . . . . . . . 11 4. Data Model Definition . . . . . . . . . . . . . . . . . . . . 11
4.1. <conference-info> . . . . . . . . . . . . . . . . . . . . 15 4.1. <conference-info> . . . . . . . . . . . . . . . . . . . . 15
4.2. <conference-description> . . . . . . . . . . . . . . . . . 15 4.2. <conference-description> . . . . . . . . . . . . . . . . . 15
4.2.1. <language> . . . . . . . . . . . . . . . . . . . . . . 15 4.2.1. <language> . . . . . . . . . . . . . . . . . . . . . . 15
4.2.2. <display-text> . . . . . . . . . . . . . . . . . . . . 15 4.2.2. <display-text> . . . . . . . . . . . . . . . . . . . . 16
4.2.3. <subject> . . . . . . . . . . . . . . . . . . . . . . 16 4.2.3. <subject> . . . . . . . . . . . . . . . . . . . . . . 16
4.2.4. <free-text> . . . . . . . . . . . . . . . . . . . . . 16 4.2.4. <free-text> . . . . . . . . . . . . . . . . . . . . . 16
4.2.5. <keywords> . . . . . . . . . . . . . . . . . . . . . . 16 4.2.5. <keywords> . . . . . . . . . . . . . . . . . . . . . . 16
4.2.6. <allow-sidebars> . . . . . . . . . . . . . . . . . . . 16 4.2.6. <allow-sidebars> . . . . . . . . . . . . . . . . . . . 16
4.2.7. <cloning-parent> . . . . . . . . . . . . . . . . . . . 16 4.2.7. <cloning-parent> . . . . . . . . . . . . . . . . . . . 16
4.2.8. <sidebar-parent> . . . . . . . . . . . . . . . . . . . 16 4.2.8. <sidebar-parent> . . . . . . . . . . . . . . . . . . . 16
4.2.9. <conference-time> . . . . . . . . . . . . . . . . . . 16 4.2.9. <conference-time> . . . . . . . . . . . . . . . . . . 16
4.2.10. <conf-uris> . . . . . . . . . . . . . . . . . . . . . 18 4.2.10. <conf-uris> . . . . . . . . . . . . . . . . . . . . . 18
4.2.11. <service-uris> . . . . . . . . . . . . . . . . . . . . 18 4.2.11. <service-uris> . . . . . . . . . . . . . . . . . . . . 18
4.2.12. <maximum-user-count> . . . . . . . . . . . . . . . . . 18 4.2.12. <maximum-user-count> . . . . . . . . . . . . . . . . . 18
4.2.13. <available-media> . . . . . . . . . . . . . . . . . . 18 4.2.13. <available-media> . . . . . . . . . . . . . . . . . . 18
4.3. <host-info> . . . . . . . . . . . . . . . . . . . . . . . 20 4.3. <host-info> . . . . . . . . . . . . . . . . . . . . . . . 21
4.4. <conference-state> . . . . . . . . . . . . . . . . . . . . 21 4.4. <conference-state> . . . . . . . . . . . . . . . . . . . . 21
4.4.1. <allow-conference-event-subscription> . . . . . . . . 21 4.4.1. <allow-conference-event-subscription> . . . . . . . . 21
4.4.2. <user-count> . . . . . . . . . . . . . . . . . . . . . 21 4.4.2. <user-count> . . . . . . . . . . . . . . . . . . . . . 21
4.4.3. <active> . . . . . . . . . . . . . . . . . . . . . . . 21 4.4.3. <active> . . . . . . . . . . . . . . . . . . . . . . . 21
4.4.4. <locked> . . . . . . . . . . . . . . . . . . . . . . . 21 4.4.4. <locked> . . . . . . . . . . . . . . . . . . . . . . . 21
4.5. <floor-information> . . . . . . . . . . . . . . . . . . . 21 4.5. <floor-information> . . . . . . . . . . . . . . . . . . . 21
4.5.1. <conference-ID> . . . . . . . . . . . . . . . . . . . 21 4.5.1. <conference-ID> . . . . . . . . . . . . . . . . . . . 22
4.5.2. <allow-floor-events> . . . . . . . . . . . . . . . . . 22 4.5.2. <allow-floor-events> . . . . . . . . . . . . . . . . . 22
4.5.3. <floor-request-handling> . . . . . . . . . . . . . . . 22 4.5.3. <floor-request-handling> . . . . . . . . . . . . . . . 22
4.5.4. <conference-floor-policy> . . . . . . . . . . . . . . 22 4.5.4. <conference-floor-policy> . . . . . . . . . . . . . . 23
4.6. <users> . . . . . . . . . . . . . . . . . . . . . . . . . 23 4.6. <users> . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.6.1. <join-handling> . . . . . . . . . . . . . . . . . . . 23 4.6.1. <join-handling> . . . . . . . . . . . . . . . . . . . 24
4.6.2. <user-admission-policy> . . . . . . . . . . . . . . . 24 4.6.2. <user-admission-policy> . . . . . . . . . . . . . . . 24
4.6.3. <allowed-users-list> . . . . . . . . . . . . . . . . . 24 4.6.3. <allowed-users-list> . . . . . . . . . . . . . . . . . 25
4.6.4. <deny-users-list> . . . . . . . . . . . . . . . . . . 25 4.6.4. <deny-users-list> . . . . . . . . . . . . . . . . . . 26
4.6.5. <user> and Its <user> Sub-elements . . . . . . . . . . 26 4.6.5. <user> and Its <user> Sub-elements . . . . . . . . . . 26
4.6.5.1. <display-text> . . . . . . . . . . . . . . . . . . 27 4.6.5.1. <display-text> . . . . . . . . . . . . . . . . . . 27
4.6.5.2. <associated-aors> . . . . . . . . . . . . . . . . 27 4.6.5.2. <associated-aors> . . . . . . . . . . . . . . . . 27
4.6.5.3. <provide-anonymity> . . . . . . . . . . . . . . . 27 4.6.5.3. <provide-anonymity> . . . . . . . . . . . . . . . 27
4.6.5.4. <roles> . . . . . . . . . . . . . . . . . . . . . 28 4.6.5.4. <roles> . . . . . . . . . . . . . . . . . . . . . 28
4.6.5.5. <languages> . . . . . . . . . . . . . . . . . . . 28 4.6.5.5. <languages> . . . . . . . . . . . . . . . . . . . 28
4.6.5.6. <cascaded-focus> . . . . . . . . . . . . . . . . . 28 4.6.5.6. <cascaded-focus> . . . . . . . . . . . . . . . . . 28
4.6.5.7. <allow-refer-users-dynamically> . . . . . . . . . 28 4.6.5.7. <allow-refer-users-dynamically> . . . . . . . . . 28
4.6.5.8. <allow-invite-users-dynamically> . . . . . . . . . 28 4.6.5.8. <allow-invite-users-dynamically> . . . . . . . . . 28
4.6.5.9. <allow-remove-users-dynamically> . . . . . . . . . 29 4.6.5.9. <allow-remove-users-dynamically> . . . . . . . . . 29
skipping to change at page 10, line 15 skipping to change at page 10, line 15
conferencing system. conferencing system.
3.3.1. Conference Object URI Definition 3.3.1. Conference Object URI Definition
XCON-URI = "xcon" ":" [conf-object-id "@"] host [ ":" port ] XCON-URI = "xcon" ":" [conf-object-id "@"] host [ ":" port ]
conf-object-id = 1*( unreserved / "+" / "=" / "/" ) conf-object-id = 1*( unreserved / "+" / "=" / "/" )
host, port, and unreserved are defined in RFC3986[RFC3986] host, port, and unreserved are defined in RFC3986[RFC3986]
XCON-URI is a URI conference identifier and even though its
construction is similar to a URL, in this case, the XCON-URI can not
be resolved to addresses and/or ports.
3.3.2. Normalization and Conference Object URI Comparison 3.3.2. Normalization and Conference Object URI Comparison
In order to facilitate the comparison of the XCON-URI identifiers, In order to facilitate the comparison of the XCON-URI identifiers,
all the components of the identifiers MUST be converted to lowercase. all the components of the identifiers MUST be converted to lowercase.
After normalizing the URI strings, the URIs comparison MUST applied a After normalizing the URI strings, the URIs comparison MUST applied a
character-by-character basis as prescribed by RFC3986, Section 6.2.1. character-by-character basis as prescribed by RFC3986, Section 6.2.1.
3.4. Data Model Structure 3.4. Data Model Structure
The information in this data model is structured in the following The information in this data model is structured in the following
skipping to change at page 15, line 28 skipping to change at page 15, line 29
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-
description> and <users> child elements. description> and <users> child elements.
4.2. <conference-description> 4.2. <conference-description>
The <conference-description> element, which is defined in [RFC4575], The <conference-description> element, which is defined in [RFC4575],
describes the conference as a whole. It SHOULD have an extra describes the conference as a whole. It SHOULD have an attribute
attribute 'lang' to specify the language used in the contents of this 'lang' to specify the language used in the contents of this element.
element. It is comprised of <language>, <display-text>, <subject>, It is comprised of <language>, <display-text>, <subject>, <free-
<free-text>, <keywords>, <allow-sidebars>, <cloning-parent>, text>, <keywords>, <allow-sidebars>, <cloning-parent>, <sidebar-
<sidebar-parent>, <conference-time>, <conf-uris>, <service-uris>, parent>, <conference-time>, <conf-uris>, <service-uris>, <maximum-
<maximum-user-count>, and <available-media>. user-count>, and <available-media>.
The following sections describe these elements in more detail. Other The following sections describe these elements in more detail. Other
child elements MAY be defined in the future to extend the child elements MAY be defined in the future to extend the
<conference-description> element. <conference-description> element.
4.2.1. <language> 4.2.1. <language>
The <language> element indicates the predominant language that is The <language> element indicates the predominant language that is
expected to be employed within a conference. The possible values of expected to be employed within a conference. The possible values of
this element are the values of the 'Subtag' column of the [RFC5646] this element are the values of the 'Subtag' column of the [RFC5646]
skipping to change at page 18, line 6 skipping to change at page 18, line 8
o <request-user>: It defines the time when users or resources on the o <request-user>: It defines the time when users or resources on the
<allowed-users-list> are requested to join the conference by using <allowed-users-list> are requested to join the conference by using
the <request-users> element. the <request-users> element.
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 MUST send a notification when defines in seconds when the system MUST 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. approaching.
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> element indicates if the conference is allowed to be
It has a boolean value. extended. It has a boolean value.
4.2.10. <conf-uris> 4.2.10. <conf-uris>
The <conf-uris> element contains the identifiers to be used in order The <conf-uris> element contains the identifiers to be used in order
to access the conference by different signaling means. This document to access the conference by different signaling means. This element
describes a new element, <conference-password>. This element contains a set of <entry> child elements - each containing a new
contains the password(s) of the conference, for instance, PSTN element, <conference-password>. This element contains the
conference will store the 'PIN code' in this element. All the other password(s) of the conference, for instance, PSTN conference will
<conf-uris> child element are described in section 5.3.1 of store the 'PIN code' in this element. All the other <conf-uris>
[RFC4575]. child element are described in section 5.3.1 of [RFC4575].
4.2.11. <service-uris> 4.2.11. <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]. of [RFC4575].
4.2.12. <maximum-user-count> 4.2.12. <maximum-user-count>
The <maximum-user-count> contains the overall number of users allowed The <maximum-user-count> contains the overall number of users allowed
skipping to change at page 21, line 49 skipping to change at page 22, line 8
The <floor-information> element contains the <conference-ID>, <allow- The <floor-information> element contains the <conference-ID>, <allow-
floor-events>, <floor-request-handling>, and <conference-floor- floor-events>, <floor-request-handling>, and <conference-floor-
policy> child elements. Other elements from different namespaces MAY policy> child elements. Other elements from different namespaces MAY
be present for the purposes of extensibility. The absence of this be present for the purposes of extensibility. The absence of this
element from an XML document indicates that the conference does not element from an XML document indicates that the conference does not
have a floor. have a floor.
4.5.1. <conference-ID> 4.5.1. <conference-ID>
The <conference-ID> represents a conference instance within floor The <conference-ID> represents a conference instance within floor
control. When created within the conferencing system, the control. When BFCP serves as the floor control protocol, the
'conference-ID' can be represented by the unique conference object <conference-ID> is a 32-bit BFCP conference identifier defined in
Identifier (XCON-URI). When BFCP serves as the floor control [RFC4582] section 5.1. Note that when created within the
protocol, the <conference-ID> is a 32-bit BFCP conference identifier conferencing system, there is a 1:1 mapping between this
defined in [RFC4582] section 5.1 and there is a 1:1 mapping to the <conference-ID> and the unique conference object Identifier (XCON-
XCON-URI. URI).
4.5.2. <allow-floor-events> 4.5.2. <allow-floor-events>
The <allow-floor-events> element represents a boolean action. If set The <allow-floor-events> element represents a boolean action. If set
to TRUE, the focus is instructed to accept the subscription to floor to TRUE, the focus is instructed to accept the subscription to floor
control events. If set to FALSE, the focus is instructed to reject control events. If set to FALSE, the focus is instructed to reject
the subscription. If this element is undefined, it has a default the subscription. If this element is undefined, it has a default
value of FALSE, causing the subscription to floor control events to value of FALSE, causing the subscription to floor control events to
be rejected. be rejected.
skipping to change at page 28, line 7 skipping to change at page 28, line 7
to the rest of the participants an anonymous identity for that user, to the rest of the participants an anonymous identity for that user,
for example anonymousX, or it does not provide any information for for example anonymousX, or it does not provide any information for
that user such that other users can not see he is a participant in that user such that other users can not see he is a participant in
the conference. This element only affects the way the user the conference. This element only affects the way the user
information is provided to the other participants. The real information is provided to the other participants. The real
information about the user is still stored in the data model. This information about the user is still stored in the data model. This
can be achieved by using the <provide-anonymity> element. This can be achieved by using the <provide-anonymity> element. This
element has three values: 'private', 'semi-private' and 'hidden'. element has three values: 'private', 'semi-private' and 'hidden'.
The 'private' value specifies that this user is completely anonymous The 'private' value specifies that this user is completely anonymous
in the conference. 'semi-private' value specifies that this user is in the conference. 'semi-private' value specifies that this user is
anonymous to all users with equal or lesser permissions in the anonymous to all users with equal or lesser permissions (determined
conference. 'hidden' value specifies that other users can not see by local policy) in the conference. 'hidden' value specifies that
this participant in the conference. other users can not see this participant in the conference.
4.6.5.4. <roles> 4.6.5.4. <roles>
A role provides the context for the set of conference operations that A role provides the context for the set of conference operations that
a participant can perform. This element can contain one or more of a participant can perform. This element can contain one or more of
the following values: "administrator", "moderator", "user", the following values: "administrator", "moderator", "user",
"participant", "observer", and "none". The roles semantic definition "participant", "observer", and "none". The roles semantic definition
is out of the scope of this document and is subject to future policy is out of the scope of this document and is subject to future policy
documents. This element can be extended with new roles in future documents. This element can be extended with new roles in future
documents. documents.
skipping to change at page 48, line 51 skipping to change at page 49, line 4
MEDIA MEDIA
--> -->
<media id="1"> <media id="1">
<type>video</type> <type>video</type>
<label>10235</label> <label>10235</label>
<src-id>432424</src-id> <src-id>432424</src-id>
<status>sendrecv</status> <status>sendrecv</status>
<xcon:to-mixer name="VideoIn"> <xcon:to-mixer name="VideoIn">
<xcon:controls> <xcon:controls>
<xcon:video-layout <xcon:video-layout
>single-view</xcon:video-layout>
>single-view</xcon:video-layout>
</xcon:controls> </xcon:controls>
</xcon:to-mixer> </xcon:to-mixer>
</media> </media>
<media id="2"> <media id="2">
<type>audio</type> <type>audio</type>
<label>10234</label> <label>10234</label>
<src-id>532535</src-id> <src-id>532535</src-id>
<status>sendrecv</status> <status>sendrecv</status>
<xcon:to-mixer name="AudioIn"> <xcon:to-mixer name="AudioIn">
<xcon:controls> <xcon:controls>
skipping to change at page 51, line 25 skipping to change at page 51, line 25
</xcon:floor-information> </xcon:floor-information>
</conference-info> </conference-info>
Note that due to RFC formatting conventions, this documents splits Note that due to RFC formatting conventions, this documents splits
lines whose content would exceed 72 characters. lines whose content would exceed 72 characters.
8. Security Considerations 8. Security Considerations
There are numerous security considerations for this document. This There are numerous security considerations for this document. This
section discusses them. section discusses them. Overall, the The security considerations for
authentication (Section 11) described in the centralized conferencing
framework [RFC5239] applies to this document.
This specification defines a data model for conference objects. This specification defines a data model for conference objects.
Different conferencing systems may use different protocols to provide Different conferencing systems may use different protocols to provide
access to these conference objects. This section contains general access to these conference objects. This section contains general
security considerations for the conference objects and for the security considerations for the conference objects and for the
protocols. The specification of each particular protocol needs to protocols. The specification of each particular protocol needs to
discuss how the specific protocol meets the security requirements discuss how the specific protocol meets the security requirements
provided in this section. provided in this section.
A given conferencing system usually supports different protocols in A given conferencing system usually supports different protocols in
skipping to change at page 56, line 31 skipping to change at page 56, line 31
[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.
[RFC5646] Phillips, A. and M. Davis, "Tags for Identifying [RFC5646] Phillips, A. and M. Davis, "Tags for Identifying
Languages", BCP 47, RFC 5646, September 2009. Languages", BCP 47, RFC 5646, September 2009.
[W3C.REC-xml-20001006] [W3C.REC-xml-20001006]
Maler, E., Sperberg-McQueen, C., Paoli, J., and T. Bray, Sperberg-McQueen, C., Bray, T., Paoli, J., and E. Maler,
"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. Non-Normative RELAX NG Schema in XML Syntax Appendix A. Non-Normative RELAX NG Schema in XML Syntax
<?xml version="1.0" encoding="UTF-8" ?> <?xml version="1.0" encoding="UTF-8" ?>
<grammar <grammar
ns="urn:ietf:params:xml:ns:conference-info" ns="urn:ietf:params:xml:ns:conference-info"
 End of changes. 20 change blocks. 
37 lines changed or deleted 43 lines changed or added

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