XCAP. XML Configuration Access Protocol - an application layer protocol that allows a client to read, write, and modify application configuration data.

Slides:



Advertisements
Similar presentations
SIP, Presence and Instant Messaging
Advertisements

IM May 24, 2000 Introduction to SIP Jonathan Rosenberg Chief Scientist.
XCAP Tutorial Jonathan Rosenberg.
Yunling Wang VoIP Security COMS 4995 Nov 24, 2008 XCAP The Extensible Markup Language (XML) Configuration Access Protocol (XCAP)
Web Service Ahmed Gamal Ahmed Nile University Bioinformatics Group
User Data Convergence CT4 specifications Jean-Jacques Trottin
SIMPLE Presence Traffic Optimization and Server Scalability Vishal Kumar Singh Henning Schulzrinne Markus Isomaki Piotr Boni IETF 67, San Diego.
Semantic Web Introduction
Microsoft Excel 2003 Illustrated Complete Excel Files and Incorporating Web Information Sharing.
Session-Independent Policies draft-ietf-sipping-session-indep-policy-01 Volker Hilt Gonzalo Camarillo
XML Configuration Access Protocol (XCAP) Jonathan Rosenberg dynamicsoft.
1 CP3024 Lecture 9 XML revisited, XSL, XSLT, XPath, XSL Formatting Objects.
Grid Computing, B. Wilkinson, 20043a.1 WEB SERVICES Introduction.
Implementing ISA Server Caching. Caching Overview ISA Server supports caching as a way to improve the speed of retrieving information from the Internet.
Peoplesoft: Building and Consuming Web Services
HTTP Overview Vijayan Sugumaran School of Business Administration Oakland University.
Tutorial 3: Adding and Formatting Text. 2 Objectives Session 3.1 Type text into a page Copy text from a document and paste it into a page Check for spelling.
Mint-user MINT Technical Overview October 8 th, 2010.
WORKING WITH NAMESPACES
INTRODUCTION TO WEB DATABASE PROGRAMMING
Copyright © cs-tutorial.com. Introduction to Web Development In 1990 and 1991,Tim Berners-Lee created the World Wide Web at the European Laboratory for.
DATA COMMUNICATION DONE BY: ALVIN SAMPATH CARLVIN SAMPATH.
WORKING WITH XSLT AND XPATH
Tutorial 1 Getting Started with Adobe Dreamweaver CS3
Tutorial 1: Getting Started with Adobe Dreamweaver CS4.
XP New Perspectives on Browser and Basics Tutorial 1 1 Browser and Basics Tutorial 1.
PACKET ANALYSIS WITH WIRESHARK DHCP, DNS, HTTP Chanhyun park.
Web HTTP Hypertext Transfer Protocol. Web Terminology ◘Message: The basic unit of HTTP communication, consisting of structured sequence of octets matching.
1 Tutorial 13 Validating Documents with DTDs Working with Document Type Definitions.
1 Dr Alexiei Dingli XML Technologies XML Advanced.
CITA 330 Section 6 XSLT. Transforming XML Documents to XHTML Documents XSLT is an XML dialect which is declared under namespace "
XML Patch Operations based on XPath selectors Jari Urpalainen IETF62 Minneapolis.
Name of Presentation Red Hat Presenter Mobicents SIP Presence Service: XDM Server Creating XCAP Application Usages Eduardo Martins.
XP New Perspectives on XML, 2nd Edition Tutorial 2 1 TUTORIAL 2 WORKING WITH NAMESPACES.
Chapter 10 Intro to SOAP and WSDL. Objectives By study in the chapter, you will be able to: Describe what is SOAP Exam the rules for creating a SOAP document.
XCAP Open Issues May 2004 Interim Jonathan Rosenberg dynamicsoft.
I2RS draft-rfernando-yang-mods.txt I2RS Yang Extensions draft-rfernando-yang-data-mods R.Fernando, P.Chinnakannan, M.Madhayyan, A.Clemm.
Accessing Data Using XML CHAPTER NINE Matakuliah: T0063 – Pemrograman Visual Tahun: 2009.
Data Manipulation Jonathan Rosenberg dynamicsoft.
Web Technologies Interactive Responsiveness Function Hypertext Web E-Publishing Simple Response Web Fill-in Forms Object Web « Full-Blown » Client/Server.
1 Tutorial 12 Working with Namespaces Combining XML Vocabularies in a Compound Document.
JavaScript Tutorial 1 - Introduction to JavaScript1 Tutorial 1 Introduction to JavaScript Section A – Programming, HTML, and JavaScript.
SIMPLE Drafts Jonathan Rosenberg dynamicsoft. Presence List Changes Terminology change Presence List Information Data Format –Provides version, full/partial.
XCAP Jonathan Rosenberg dynamicsoft. Agenda XCAP Main spec changes XCAP Main spec open issues XCAP Package changes XCAP Package Open Issues Authorization.
Module: Software Engineering of Web Applications Chapter 2: Technologies 1.
1 CPCP Hisham Khartabil XCON WG IETF 59, Seoul
Module 5: Managing Content. Overview Publishing Content Executing Reports Creating Cached Instances Creating Snapshots and Report History Creating Subscriptions.
Session-Independent Policies draft-ietf-sipping-session-indep-policy-00 Volker Hilt Gonzalo Camarillo
SOAP, Web Service, WSDL Week 14 Web site:
Apache Cocoon – XML Publishing Framework 데이터베이스 연구실 박사 1 학기 이 세영.
Name of Presentation Red Hat Presenter RED HAT Developer conference Brno 2009 Mobicents/JBCP Pavel Slegr.
SIP wg Items Jonathan Rosenberg dynamicsoft Caller Preferences: Changes Discussion of Redirects –Previous draft only proxy –Nothing different for redirect.
1 Chapter 1 INTRODUCTION TO WEB. 2 Objectives In this chapter, you will: Become familiar with the architecture of the World Wide Web Learn about communication.
Jonathan Rosenberg dynamicsoft
Session-Independent Policies draft-ietf-sipping-session-indep-policy-02 Volker Hilt Jonathan Rosenberg Gonzalo.
ASP.NET Forms.
SIP over MANETs Introduction to SIP SIP vs MANETs Open Issues
WORKING WITH NAMESPACES
SIP Configuration Issues: IETF 57, SIPPING
Node.js Express Web Services
XML in Web Technologies
Subscribing to YANG datastore push updates draft-netconf-yang-push-00 IETF #94 Yokohama A. Clemm A. Gonzalez Prieto
WEB API.
Offline Database Synchronization with SOAP and MySQL
Application layer Lecture 7.
Jonathan Rosenberg dynamicsoft
SIP Session Policies Volker Hilt
WebDAV Design Overview
WEB SERVICES From Chapter 19, Distributed Systems
HTTP Hypertext Transfer Protocol
Presentation transcript:

XCAP

XML Configuration Access Protocol - an application layer protocol that allows a client to read, write, and modify application configuration data stored in XML format on a server

XCAP features ● The following operations are supported via XCAP protocol in a client- server interaction: – Retrieve an item – Delete an item – Modify an item – Add an item ● The operations above can be executed on the following items: – Document – Element – Attribute

XCAP functional elements

HTTP URI

XML Basics ● XML is a mechanism for representing structured data ● Data is represented by a tree ● Each node in the tree is an element ● Elements have attributes – Attributes qualify the data ● “Leaf” Elements can contain text content Jonathan Rosenberg 600 Lanidex Pl Parsippany NJ USA

XML Namespaces ● Problem – Want to combine content from different systems into one document – What if both sources define the same name? ● Example – Add information to address book on whether data is synced with PC – synchronized – Which state is it? <!—This guy is a bozo -- Jonathan Rosenberg 600 Lanidex Pl Parsippany NJ USA

XML Namespaces ● Solution: XML Namespace ● Elements and attributes are bound to a namespace when defined ● Namespace is identified with a unique URI ● A prefix is bound to that URI through a declaration in the document ● Each element is named with its qualified name – The prefix, followed by a colon, followed by the local-name <?xml version="1.0" encoding="UTF-8"? xmlns:post=“ xmlns:sync=“ <!—This guy is a bozo -- Jonathan Rosenberg 600 Lanidex Pl Parsippany NJ USA synchronized

Positional Selectors ● What if there are multiple elements with that name? – Can supply predicates which select one of the matching ones – Predicates appear in square brackets ● One such predicate is position – Indicates which one by its place in the ordered sequence of matching elements ● Select second bar: foo/bar[2] ● Select first bar: foo/bar[1] Hello There

Select by Attribute Name ● You can select elements that have attributes with specific values Hi How Are

Selecting Attributes ● An attribute is selected by prefixing its name with an @bool ● The selected object is JUST the value – Different from elements – Name would be redundant Hi How Are

AUID ● Unique Identifier for each application ● Two sub-namespaces – IETF tree: tokens in RFC documents ● IANA Registry – Vendor tree: proprietary data ● Start with reverse DNS name of enterprise ● Examples – IETF Tree ● “resource-lists” draft-ietf-simple-xcap-list-usage ● “pidf-manipulation” draft-isomaki-simple-xcap-pidf-manipulation-usage-00 ● “rules” draft-rosenberg-simple-rules – Vendor Tree ● “com.example.customer-list”

AUID Grammar AUID = global-auid / vendor-auid global-auid = auid auid = alphanum / mark vendor-auid = rev-hostname "." auid rev-hostname = toplabel *( "." domainlabel ) domainlabel = alphanum / alphanum *( alphanum / "-" ) alphanum toplabel = ALPHA / ALPHA *( alphanum / "-" ) alphanum

Creating or replacing a complete XML document

Adding an element to an XML document

Deleting an XML document

Entity tags in HTML

HTTP conditional requests

Subscription to changes in XML documents

SUBSCRIBE request (1)

Diff-processing ● There are three possible values of the diff- processing parameter: – “no-patching” – “xcap-patching” – “aggregate”

Initial XCAP-Diff document included in a NOTIFY request (3)

Subsequent XCAP-Diff document included in a NOTIFY request (5)

XML Patch ● XML documents that offer a set of conventions to express changes incurred in other XML documents ● There are three patch operations: –

XML patch operations document

XDM

XDM (XML Document Management) ● XDM allows a user to: – modify XML documents stored in remote network servers. – synchronized the local copy of XML documents in the IMS terminal with the copy stored in network servers, so that if the user makes changes to one XML document from a given IMS terminal, other terminals are updated with the latest changes – searches of information stored in XML documents.

XDM architecture

XDM: basic GET operation

HTTP GET request (1)

HTTP 401 (Unauthorized) response (2)

HTTP GET request (3)

HTTP GET request (4)

200 (OK) response (5)

200 (OK) response (6)

Directory retrieval with XDM

Directory retrieval: HTTP GET request (1)

Directory retrieval: 200 (OK) response (5)

Directory retrieval: Aggregated 200 (OK) response (6)

Directory retrieval with XDM for a given XCAP application usage

Directory retrieval: HTTP GET request (1)

Directory retrieval : 200 (OK) response (3)

Searching data with XDM

Search operation: HTTP POST request (1) (part 1/2)

Search operation: HTTP POST request (1) (part 2/2)

Search operation: HTTP 200 (OK) response (4)

Sources ● The 3G IP Multimedia Subsystem (IMS) Third Edition, Gonzalo Camarillo and Miguel A. Garcia-Martin ● XCAP Tutorial, Jonathan Rosenberg ●