draft-ietf-xcon-common-data-model-22.txt   draft-ietf-xcon-common-data-model-23.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: June 26, 2011 D. Morgan Expires: August 5, 2011 D. Morgan
Fidelity Investments Fidelity Investments
J. Urpalainen J. Urpalainen
Nokia Nokia
Dec 23, 2010 Feb 01, 2011
Conference Information Data Model for Centralized Conferencing (XCON) Conference Information Data Model for Centralized Conferencing (XCON)
draft-ietf-xcon-common-data-model-22.txt draft-ietf-xcon-common-data-model-23.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 June 26, 2011. This Internet-Draft will expire on August 5, 2011.
Copyright Notice Copyright Notice
Copyright (c) 2010 IETF Trust and the persons identified as the Copyright (c) 2011 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
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
skipping to change at page 3, line 38 skipping to change at page 3, line 38
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> . . . . . . . . . . . . . . . . . . . . . . . 21 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> . . . . . . . . . . . . . . . . . . . 22
4.5.1. <conference-ID> . . . . . . . . . . . . . . . . . . . 22 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> . . . . . . . . . . . . . . 23 4.5.4. <conference-floor-policy> . . . . . . . . . . . . . . 23
4.6. <users> . . . . . . . . . . . . . . . . . . . . . . . . . 23 4.6. <users> . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.6.1. <join-handling> . . . . . . . . . . . . . . . . . . . 24 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> . . . . . . . . . . . . . . . . . 25 4.6.3. <allowed-users-list> . . . . . . . . . . . . . . . . . 25
4.6.4. <deny-users-list> . . . . . . . . . . . . . . . . . . 26 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> . . . . . . . . . . . . . . . . . . 28
4.6.5.2. <associated-aors> . . . . . . . . . . . . . . . . 27 4.6.5.2. <associated-aors> . . . . . . . . . . . . . . . . 28
4.6.5.3. <provide-anonymity> . . . . . . . . . . . . . . . 27 4.6.5.3. <provide-anonymity> . . . . . . . . . . . . . . . 28
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> . . . . . . . . . . . . . . . . . 29
4.6.5.7. <allow-refer-users-dynamically> . . . . . . . . . 28 4.6.5.7. <allow-refer-users-dynamically> . . . . . . . . . 29
4.6.5.8. <allow-invite-users-dynamically> . . . . . . . . . 28 4.6.5.8. <allow-invite-users-dynamically> . . . . . . . . . 29
4.6.5.9. <allow-remove-users-dynamically> . . . . . . . . . 29 4.6.5.9. <allow-remove-users-dynamically> . . . . . . . . . 29
4.6.5.10. <endpoint> . . . . . . . . . . . . . . . . . . . . 29 4.6.5.10. <endpoint> . . . . . . . . . . . . . . . . . . . . 29
4.7. <sidebars-by-ref> . . . . . . . . . . . . . . . . . . . . 30 4.7. <sidebars-by-ref> . . . . . . . . . . . . . . . . . . . . 30
4.8. <sidebars-by-val> . . . . . . . . . . . . . . . . . . . . 30 4.8. <sidebars-by-val> . . . . . . . . . . . . . . . . . . . . 31
5. RELAX NG Schema . . . . . . . . . . . . . . . . . . . . . . . 30 5. RELAX NG Schema . . . . . . . . . . . . . . . . . . . . . . . 31
6. XML Schema Extensibility . . . . . . . . . . . . . . . . . . . 41 6. XML Schema Extensibility . . . . . . . . . . . . . . . . . . . 42
7. XML Example . . . . . . . . . . . . . . . . . . . . . . . . . 41 7. XML Example . . . . . . . . . . . . . . . . . . . . . . . . . 42
8. Security Considerations . . . . . . . . . . . . . . . . . . . 51 8. Security Considerations . . . . . . . . . . . . . . . . . . . 51
9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 52 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 52
9.1. Relax NG Schema Registration . . . . . . . . . . . . . . . 52 9.1. Relax NG Schema Registration . . . . . . . . . . . . . . . 53
9.2. XML Namespace Registration . . . . . . . . . . . . . . . . 53 9.2. XML Namespace Registration . . . . . . . . . . . . . . . . 53
9.3. Conference Object Identifier Registration . . . . . . . . 53 9.3. Conference Object Identifier Registration . . . . . . . . 54
9.4. Conference User Identifier Registration . . . . . . . . . 54 9.4. Conference User Identifier Registration . . . . . . . . . 55
10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 54 10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 55
11. References . . . . . . . . . . . . . . . . . . . . . . . . . . 55 11. References . . . . . . . . . . . . . . . . . . . . . . . . . . 56
11.1. Normative References . . . . . . . . . . . . . . . . . . . 55 11.1. Normative References . . . . . . . . . . . . . . . . . . . 56
11.2. Informative References . . . . . . . . . . . . . . . . . . 55 11.2. Informative References . . . . . . . . . . . . . . . . . . 56
Appendix A. Non-Normative RELAX NG Schema in XML Syntax . . . . . 56 Appendix A. Non-Normative RELAX NG Schema in XML Syntax . . . . . 57
Appendix B. Non-Normative W3C XML Schema . . . . . . . . . . . . 84 Appendix B. Non-Normative W3C XML Schema . . . . . . . . . . . . 85
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 93 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 94
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.
skipping to change at page 18, line 21 skipping to change at page 18, line 21
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 element to access the conference by different signaling means. This element
contains a set of <entry> child elements - each containing a new contains a set of <entry> child elements - each containing a new
element, <conference-password>. This element contains the element, <conference-password>. This element contains the
password(s) of the conference, for instance, PSTN conference will password(s) of the conference, for instance, PSTN conference will
store the 'PIN code' in this element. All the other <conf-uris> store the 'PIN code' in this element. All the other <conf-uris>
child element are described in section 5.3.1 of [RFC4575]. child element are described in section 5.3.1 of [RFC4575].
The schema in Section 5 allows <conference-password> to appear
anywhere uris-type is expanded. This document only provides meaning
for <conference-password> appearing as a descendent of the <conf-
uris> element. Future standardization may give meaning to
<conference-password> appearing in other elements of type uris-type.
In the absence of such standardization, <conference-password> MUST
NOT appear in elements of type uris-type other than <conf-uris>.
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
to join the conference. Note that this value is set by an to join the conference. Note that this value is set by an
skipping to change at page 24, line 39 skipping to change at page 24, line 42
The <user-admission-policy> is an element that lets an organizer (or The <user-admission-policy> is an element that lets an organizer (or
a participant with appropriate rights) choose a policy for the a participant with appropriate rights) choose a policy for the
conference that controls how users are authenticated into the conference that controls how users are authenticated into the
conference, using a mechanism of the conference's choosing. Since a conference, using a mechanism of the conference's choosing. Since a
variety of signaling protocols are possible, a variety of variety of signaling protocols are possible, a variety of
authentication mechanism - determined by every individual conference authentication mechanism - determined by every individual conference
servers - may need to be mapped from the different protocols. The servers - may need to be mapped from the different protocols. The
specific types of authentication mechanism are beyond the scope of specific types of authentication mechanism are beyond the scope of
this document. The list of possible values are: this document. The list of possible values are:
o "closedAuthenticated": A 'closedAuthenticated' policy requires o "closedAuthenticated": A 'closedAuthenticated' policy MUST have
each conference participant to be in the allowed users list each conference participant in the allowed users list (listed
(listed under the <allowed-users-list> XML element) with each under the <allowed-users-list> XML element) with each participant
participant being sufficiently (up to local policy) authenticated. being sufficiently (up to local policy) authenticated. Conference
Conference join requests for users not in the allowed users list join requests for users not in the allowed users list or
or participants not authenticated should be rejected unless a participants not authenticated should be rejected unless a <join-
<join-handling> action of 'confirm' is selected in which case the handling> action of 'confirm' is selected in which case the user
user is placed on a pending list as indicated earlier. is placed on a pending list as indicated earlier. A
'closedAuthenticated' policy MUST NOT include a <deny-users-list>.
If <deny-users-list> appears in the data model, it MUST be
ignored.
o "openAuthenticated": An 'openAuthenticated' policy requires each o "openAuthenticated": An 'openAuthenticated' policy requires each
conferencing participant to be sufficiently authenticated (as conferencing participant to be sufficiently authenticated.
before) but does not restrict which participants can join the Typically this implies that anyone capable of authenticating with
conference. Typically this implies that anyone capable of the conferencing system may join the conference. The
authenticating with the conferencing system may join the 'openAuthenticated' policy permits the specification of "banned"
conference. conferencing participants. Such banned users are prevented from
re-joining the conference until they have been un-banned. An
'openAuthenticated' policy SHOULD have a deny users list (listed
under the <deny-users-list> XML element) to support banning of
conferencing participants from a conference. An
'openAuthenticated' policy MUST NOT include an <allowed-users-
list>. If <allowed-users-list> appears in the data model, it MUST
be ignored.
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. An 'anonymous' policy MUST NOT
include either an <allowed-users-list> or a <deny-users-list>. If
any of these lists appear in the data model, they MUST be ignored.
In all other cases, the appearance of an <allowed-users-list> and
<deny-users-list> MUST be ignored. Future specifications describing
the use of these lists must provide clear guidance on how to process
the lists when they occur concurrently, especially when both lists
contain the same user. For example, such specification could
disallow both list from appearing at the same time similar to user-
admission-policy values defined in this document.
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
(e.g. SIP URI, xcon-userid defined in Section 4.6.5), roles (defined (e.g. SIP URI, xcon-userid defined in Section 4.6.5), roles (defined
in Section 4.6.5.4), or domains (e.g.: *@example.com) that the focus in Section 4.6.5.4), or domains (e.g.: *@example.com) that the focus
uses to determine who can join the conference, who can be invited to uses to determine who can join the conference, who can be invited to
join a conference, or who the focus needs to "refer to" the join a conference, or who the focus needs to "refer to" the
conference. The <allowed-users-list> element includes zero or more conference. The <allowed-users-list> element includes zero or more
<target> child elements. This child element includes the mandatory <target> child elements. This child element includes the mandatory
skipping to change at page 38, line 37 skipping to change at page 39, line 14
attribute id { text }, attribute id { text },
anyAttribute, anyAttribute,
xsd:boolean xsd:boolean
}* }*
& anyElement* & anyElement*
# MIXER NAME TYPE # MIXER NAME TYPE
mixer-name-type = mixer-name-type =
"VideoIn" | "VideoOut" | "AudioOut" | "AudioIn" | free-text-extension "VideoIn" | "VideoOut" | "AudioOut" | "AudioIn" | free-text-extension
# FREE TEXT EXTENSION # FREE TEXT EXTENSION
# (re-define this as <notAllowed/>, #
# if extensions beyond this spec are not used)
free-text-extension = text free-text-extension = text
# ********************************* # *********************************
# EXTENSIBILITY OF THE SCHEMA # EXTENSIBILITY OF THE SCHEMA
# ********************************* # *********************************
# EXTENSIBILITY ELEMENTS # EXTENSIBILITY ELEMENTS
# (re-define this as <empty/>, #
# if extensions beyond this spec are not used)
anyElement = anyElement =
element * - (conference-description element * - (conference-description
| host-info | host-info
| conference-state | conference-state
| users | users
| sidebars-by-ref | sidebars-by-ref
| sidebars-by-val | sidebars-by-val
| display-text | display-text
| subject | subject
skipping to change at page 41, line 14 skipping to change at page 41, line 37
(attribute * { text } (attribute * { text }
| any)* | any)*
any = any =
element * { element * {
(attribute * { text } (attribute * { text }
| text | text
| any)* | any)*
} }
# EXTENSIBILITY ATTRIBUTES # EXTENSIBILITY ATTRIBUTES
# (re-define this as <empty/>, #
# if extensions beyond this spec are not used)
anyAttribute = anyAttribute =
attribute * - (xml:lang attribute * - (xml:lang
| entity | entity
| required-participant | required-participant
| label | label
| decision | decision
| name | name
| policy | policy
| uri | uri
skipping to change at page 80, line 26 skipping to change at page 81, line 20
<choice> <choice>
<value>VideoIn</value> <value>VideoIn</value>
<value>VideoOut</value> <value>VideoOut</value>
<value>AudioOut</value> <value>AudioOut</value>
<value>AudioIn</value> <value>AudioIn</value>
<ref name="free-text-extension"/> <ref name="free-text-extension"/>
</choice> </choice>
</define> </define>
<!-- <!--
FREE TEXT EXTENSION FREE TEXT EXTENSION
(re-define this as <notAllowed/>,
if extensions beyond this spec are not used)
--> -->
<define name="free-text-extension"> <define name="free-text-extension">
<text/> <text/>
</define> </define>
<!-- <!--
********************************* *********************************
EXTENSIBILITY OF THE SCHEMA EXTENSIBILITY OF THE SCHEMA
********************************* *********************************
--> -->
<!-- <!--
EXTENSIBILITY ELEMENTS EXTENSIBILITY ELEMENTS
(re-define this as <empty/>,
if extensions beyond this spec are not used)
--> -->
<define name="anyElement"> <define name="anyElement">
<element> <element>
<anyName> <anyName>
<except> <except>
<name>conference-description</name> <name>conference-description</name>
<name>host-info</name> <name>host-info</name>
<name>conference-state</name> <name>conference-state</name>
<name>users</name> <name>users</name>
<name>sidebars-by-ref</name> <name>sidebars-by-ref</name>
skipping to change at page 83, line 32 skipping to change at page 84, line 24
</attribute> </attribute>
<text/> <text/>
<ref name="any"/> <ref name="any"/>
</choice> </choice>
</zeroOrMore> </zeroOrMore>
</element> </element>
</define> </define>
<!-- <!--
EXTENSIBILITY ATTRIBUTES EXTENSIBILITY ATTRIBUTES
(re-define this as <empty/>,
if extensions beyond this spec are not used)
--> -->
<define name="anyAttribute"> <define name="anyAttribute">
<zeroOrMore> <zeroOrMore>
<attribute> <attribute>
<anyName> <anyName>
<except> <except>
<name ns="http://www.w3.org/XML/1998/namespace">lang <name ns="http://www.w3.org/XML/1998/namespace">lang
</name> </name>
<name ns="">entity</name> <name ns="">entity</name>
 End of changes. 21 change blocks. 
53 lines changed or deleted 71 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/