XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP...
-
Upload
chad-mckenzie -
Category
Documents
-
view
232 -
download
5
Transcript of XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP...
![Page 1: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/1.jpg)
XCAP
Jonathan Rosenberg
dynamicsoft
![Page 2: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/2.jpg)
Agenda
• XCAP Base
• XCAP List
• XCAP Event Package
• XCAP Authorization Usage
• Presence Data Model
• XCAP Multiple Inserts
![Page 3: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/3.jpg)
XCAP Base
Almost There!
![Page 4: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/4.jpg)
XCAP Base
• ISSUE 1: Schema Awareness– Only validation
• ISSUE 2: Positional Insertion– Added
• ISSUE 3: PUT v. POST– PUT– Client sets data
• ISSUE 4: Separators– ~~
• ISSUE 5: Multiple Insertions– Deferred
• ISSUE 6: Select by Text– No
• ISSUE 7: Unique Steps– Required
• ISSUE 8: Etag Scopes– Document
• ISSUE 9a: Namespace Discovery– Through extension usage
• ISSUE 9b: Etags useless for insert– Documented
![Page 5: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/5.jpg)
Other Changes
• AU specifies uniqueness constraints
• XCAP servers don’t do referential integrity
• Resource interdependencies defined
• Removed <mandatory-ns>
• Multiple xcap root ok; no information carryover
• Added escape coding• Reworked error report
document• Capabilities application
usage• Changed MIME type
names• Addressed “do we need
filename” issue• Added guidelines for app
usages
![Page 6: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/6.jpg)
Issues Raised in WGLC
• DELETE Idempotency
• XPath Namespace Context
• ETag and DELETE
• Caching
![Page 7: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/7.jpg)
DELETE Idempotency
• DELETE needs to be idempotent
• Won’t be for positional deletions
• Similar issue with insertions
• Solution– URI has to have two
properties• Identifies one resource
before delete• Identifies no resource after
– Inverse of insertion
<foo> <bar> contenta </bar> <bar> contentc </bar> </foo>
DELETEfoo/bar[2]
<foo> <bar> contenta </bar> <bar> contentb </bar> <bar> contentc </bar> </foo>
DELETEfoo/bar[2]
<foo> <bar> contenta </bar> </foo>
![Page 8: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/8.jpg)
XPath Namespace Context
• What is the namespace context used for evaluating a step?– Default namespaces– Element and attribute
matching
• XPath 1.0– Namespace from
evaluation context– Default is null
• How to handle this case
<foo> <bar xmlns=“NS1” xmlns:ns1=“NS1”/> <bar xmlns=“NS2” xmlns:ns2=“NS2”/></foo>
Selectthis
foo/ns2:bar
![Page 9: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/9.jpg)
ETag and DELETE
• Etag is associated with a resource (URI)
• After DELETE, the resource doesn’t exist– Presumably 200 OK
doesn’t carry Etag
• Thus, you lose “track” of document after DELETE
• Options– Document limitation– Put in Etag anyway– Empty resources
• Empty Resources– A resource “exists” as long
as parent exists and is not empty
– To delete, you PUT it to empty
– To insert, you modify from empty to content
![Page 10: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/10.jpg)
Empty Content
• Pros– Makes etags useful for
all operations
• Cons– Hack– May interact with other
mechanisms– Complicates simple
cases
• Proposal– Document limitation
![Page 11: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/11.jpg)
Caching
• XCAP says nothing about cache control– It should
• Proposal– Not really different than other content– If you allow caching, it might be stale– PUTs may be against sub-resources, making
staleness likely – won’t be picked up by server processing PUT
![Page 12: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/12.jpg)
XCAP List
Lists, lists and more lists
![Page 13: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/13.jpg)
XCAP List
• ISSUE 1: Scope of entry-ref– XCAP Root
• ISSUE 2: URI of <entry> attribute or child– Attribute
• ISSUE 3: name or URI as <entry> index– URI– Canonicalization defined
• ISSUE 4: Index document– Added RLS Services
document– Server generates
composite document in global tree
• Picks off docs in specific place in user tree
– Somewhat obviates need for XCAP directory
![Page 14: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/14.jpg)
<?xml version="1.0" encoding="UTF-8"?><rls-services xmlns="urn:ietf:params:xml:ns:rls-services" xmlns:rl="urn:ietf:params:xml:ns:resource-lists“ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <service uri="sip:[email protected]"> <resource-list>http://xcap.example.com/resource-lists/ users/joe/index/~~/ resource-lists/list%5b@name=%22l1%22%5d </resource-list> <packages> <package>presence</package> </packages> </service> <service uri="sip:[email protected]"> <list name="marketing"> <rl:entry uri="sip:[email protected]"/> <rl:entry uri="sip:[email protected]"/> </list> <packages> <package>presence</package> </packages> </service></rls-services>
![Page 15: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/15.jpg)
Issues Since WGLC
• Embedded vs. External Resource Lists
• Simpler structure for RLS services doc
• Support for “membercode” from draft-hiller-uri-list-index
![Page 16: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/16.jpg)
Embedded v. External Lists
• RLS Services doc allows resource lists to be specified by value or reference– Reference has to be within same XCAP root
• Jari asks – why both? Why not just by reference?– Desire to have a self contained buddy list
document– Avoid referential integrity ugliness for simple
cases
![Page 17: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/17.jpg)
Simpler Structure
• Jari asks, “can’t we just define each RLS service by its resource list”?
• I don’t think so– RLS service uses a lot of provisioned data– Resource list is just one piece– Spec also defines allowed packages– Other things for the future
• Index to authorization policies• Back end subscription policies
– Keep it extensible
![Page 18: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/18.jpg)
Support for Membercode
• Draft-hiller-uri-list-index proposes a small payload for specifying subscriptions to list subsets
• Requires each list entry to have an integral index
• Currently, resource lists don’t have this index
• Cannot be added, schema doesn’t support that type of extensibility
• Options– Ignore– Add attribute extensibility– Add “membercode” now
![Page 19: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/19.jpg)
Membercode choices
• Ignore– Not a chartered item– Feature creep
• Add extensibility– Allow it later– Needs to extend the
app usage in addition to the schema
• Add membercode now– Con: similar to the
“name” attribute we just removed!
– Pro: will be work to add later
• Proposal– Add attribute
extensibility
![Page 20: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/20.jpg)
XCAP Package/Diff
Change is good
![Page 21: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/21.jpg)
XCAP Package
• Major Changes!• Unified with Config
Framework– Draft-ietf-sipping-config
framework• Event package
• Event header parameters to specify what you want
– Draft-ietf-simple-xcap-package
• XCAP diff format
• Can be used as a MIME type in config package
• Benefits of unification– Single bootstrapping and
data discovery framework– Allows for bootstrapping to
start and stop at various layers
![Page 22: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/22.jpg)
Bootstrapping points
• Client knows its username, password, but not applications– SUBSCRIBE sip:user@domain
Event: sip-profile;profile-name=application• Client knows username, password, and the
specific app usage– SUBSCRIBE sip:user@domain
Event: sip-profile;profile-name=application; app-id=resource-lists
• Client knows the specific document– SUBSCRIBE sip:user@domain
Event: sip-profile;profile-name=application; app-id=resource-lists;document=“user/index”
![Page 23: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/23.jpg)
XCAP Diff Format
![Page 24: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/24.jpg)
Relationship to directory
• Directory allows discovery of documents on startup
• Config framework allows discovery of documents on startup
• SUBSCRIBE to user@domain with Event sip-profile and profile-name of app and Accept of xcap-diff
• Returns an xcap-diff document listing all of my documents and global documents of relevance– Same function as directory
• Proposal: directory not needed
![Page 25: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/25.jpg)
XCAP Auth Usage
Picking up the Pieces in light of a Data Model
![Page 26: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/26.jpg)
Issue A: Sphere interpretation
• Problem– <sphere> as a
condition can be ambiguous
– What tuple are we talking about?
– Previously: if ambiguous, condition fails
• Data Model Impact– <sphere> is a
presentity characteristic
– There is only one per document
– Problem eliminated
![Page 27: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/27.jpg)
Issue B: Sequencing
• Problem– Do we do authorization
first, then composition, or the opposite?
– Do our documents define composition
• Data Model Impact– Defines a specific data
processing sequence– Separate composition
control [aka – how you land at a concrete document] from privacy [how you strip it down]
– Problem eliminated
![Page 28: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/28.jpg)
Issue C: Post Privacy Composition
• Problem– What happens if
document, after privacy, has tuples which don’t differ much?
– Do we mandate re-combination? Optional? How to do it?
• Data Model Impact– Post-filtering
composition is done– Guided by composition
policy (TBD)– Problem solved
![Page 29: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/29.jpg)
Issue D: Different Docs to Different Watchers
• Problem– Can authorization policy
allow me to give conflicting information to different watchers?
• Previous Answer– Yes – presence doc has
inconsistent tuples– You pick which one to send
based on class
• Data Model Impact– Each service or device can
be represented only once– Thus, a document cannot
have conflicting data– The problem is thus
relegated entirely to composition policy
• Specifies which inputs to include in a document
– Problem solved
![Page 30: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/30.jpg)
Issue E: Separate subscription from document processing
• Problem– Currently, authorization
policy jointly specifies how to process subscription (accept, block, polite block) from how to process data (transformations)
– Should they be split
• Considerations– Do the same conditions
make sense?• Time of day [yes]
• Watcher [yes]
• Presentity state [?]
• Service state [?]
• Device state [?]
– When do we need the policy
• Upon subscription
• Upon input state change
![Page 31: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/31.jpg)
Issue E:
• Considerations– Action currently
includes both• Polite block affects data
– Overhead• If they are separate,
users will normally need to set both
– Continuum• Rejection of a
subscription is just the extreme end of a privacy continuum
• Data Model Impact– Data processing
doesn’t include subscription acceptance/rejection - would seem to argue for split
– Polite blocking is actually acceptance plus a specific composition policy!
![Page 32: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/32.jpg)
Proposal: Logical Split, Physical Join
• Logically, there are three policy documents– What to do when you get a
SUBSCRIBE• “Subscription Policy”
– How to generate a document when an input changes
• “Composition Policy”
– How to filter a document for privacy
• “Privacy Policy”
• Each policy document has conditions, actions and transformations specific to it
• Each policy document has conditions, actions and transformations applicable to all
• Use XML namespaces to indicate which conditions, actions, transformations are for subscription, composition or filter policy
![Page 33: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/33.jpg)
Subscription Policy
• Conditions– Identity, sphere, validity
• Actions– Reject, confirm, accept
• Transformations
![Page 34: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/34.jpg)
Composition Policy
• Conditions– Identity, sphere, validity [types of inputs,
numbers of inputs, etc.]
• Actions– Polite-block, [concatenate, etc.]
• Transformations
![Page 35: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/35.jpg)
Privacy Policy
• Conditions– Identity, sphere, validity
• Actions
• Transformations– See later slides
![Page 36: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/36.jpg)
Issue F: What does document apply to
• Problem– Current document makes
transformations conditioned on tuple type
– Two layer conditions ugly
• Henning proposed policy documents apply to tuples
• Data Model Implication– Policy documents apply to
processing of presence document
– Can condition policy document on existence of specific service, device or their characteristics
– Can specify transformations that apply to specific service, device, presentity
• Proposal– Punt per-tuple privacy
![Page 37: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/37.jpg)
Issue G: What kind of privacy transformations do we want?
• Provide tuples of particular schemes/class/type?
• Provide all RPID elements?
• How to provide note? Document-wide? Per-tuple?
• RPID elements by name and class/URI scheme/type of tuple?
• Not a data model issue (mostly), a scope issue
• Use cases really unclear• Proposal
– Absolute minimum for now• Provide services by URI
or scheme• Provide devices by
device ID• Provide attributes by
name– Not on a tuple by tuple
basis
![Page 38: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/38.jpg)
Motivating Use Cases
• Give Bob information on my voip service, but not my telephony service
• Allow Jane to see my Vonage service, but not my work service
• Don’t show anyone what I’m doing right now
![Page 39: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/39.jpg)
Presence Data Model
What is a tuple anyway?
![Page 40: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/40.jpg)
Motivation
• Need to have a common understanding of what presence documents really mean in order to achieve interoperability– Consistent understanding and interpretation
of our various extensions– Only one way to interpret a document
• Many of our drafts are caught in loops due to lack of understanding
![Page 41: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/41.jpg)
Tuple Design Team
• Points of Debate– One vs. Many Presentity– Devices or not– Resources and Capabilities as Device
Information– Correlation of services across devices– Meaning of “idle”
![Page 42: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/42.jpg)
One vs. Many Presentity
• Model allows one presentity per document– Inherently presence
models one presentity
• Some concerns about inability to retain conflicting information from multiple sources
• Proposals to handle conflicts at attribute level
• Design team conclusion– Retain current model of
one per document
![Page 43: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/43.jpg)
Devices or Not
• What some folks thought of as a device previously is now called a service
• What is the definition of a device?
• How to model distributed devices?– Bluetooth headset +
mobile phone
• Design team conclusion– Devices are useful, we
should keep them– Not clear what does in
them– Not clear how to
define them
![Page 44: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/44.jpg)
Resources and Capabilities
• Is it useful to say certain things about devices– CPU– Memory– Bandwidth– Screen size– Video camera, speakers
• Problem: application may not get access to these resources
• If it does, they become service characteristics
• Design Team Conclusion– Devices not useful for
conveying resource and capability information
![Page 45: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/45.jpg)
Correlation
• Is it useful to know that– Two services run on the
same device– A service runs across
multiple devices
• Former most interesting• Helps in selecting a
service because a human can extract service preference from device correlation– Send an SMS to the device
I just called
• Design Team Conclusion– Correlation useful– Service states cannot be
automatically inferred from other services on the same device
![Page 46: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/46.jpg)
Meaning of Idle
• Model proposes idle interpretation is dependent on service, device or presentity– Device: no input into
device (meaning in existing IM systems)
– Service: no input into service
– Presentity: no input to person?
• Other approaches– Have it mean
probability of responding
• How to measure?
– Have it be specific to a type of input
• Keyboard• Mouse
• No conclusion
![Page 47: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/47.jpg)
Multiple Inserts
• Relegated to a separate draft– draft-rosenberg-simple-xcap-multiple-00.txt– Defines proposal we’ve been debating on the
list
![Page 48: XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Base XCAP List XCAP Event Package XCAP Authorization Usage Presence Data Model XCAP Multiple Inserts.](https://reader035.fdocuments.in/reader035/viewer/2022062216/56649f575503460f94c7c5c8/html5/thumbnails/48.jpg)
Multiple Inserts
• Issue – referential integrity– We have a few places
where one document contains a reference to another
– Server doesn’t guarantee referential integrity now – very hard
• Doesn’t fit well with “reject if not good” model
– Multiple inserts would allow server to check referential integrity
• Client would need to PUT something so that result is fully consistent
• Allow app usages to specify referential integrity constraints
– Takes us a major step closer to a DB protocol
• Is that what we want?• Is this the right group to
do it?