IMS

 

 

 

 

XDM/XCAP

 

As XML gets more widely used, now it gets used as a standard form of storing various configurations in mobile devices and exchanging short informations like supplimentary services.

 

XDM (XML Document Management) and XCAP (XML Configuration Access Protocol) is designed to provide standard way of managing and exchanging information in the form of XML (3GPP 24.623 for the details).

 

XCAP protocol allows a client to read, write, and modify application configuration data stored in XML format on a server and allows clients to read, write as well as modify the same configuration file. XCAP maps XML document sub-trees and element attributes to HTTP URIs, so that these components can be directly accessed by HTTP. An XCAP server is used by the XCAP clients to store data like Presence policy in combination with a SIP server that supports PUBLISH /SUBSCRIBE /NOTIFY methods to provide a complete SIP SIMPLE server solution.

 

One possible scenario can be illustrated as below (there can be wide range of variation in terms of real implementation).

 

 

 

Structure of XML/XCAP Document

 

You can get the detailed information on XML in XCAP from 24.623 chapter 5 and 6, and 24.611 section 4.9.1. 24.623 will give you the details of every component of the XML, but it is super boring without giving you any context :).  24.611 would give you more practical examples but not much of the explanation of each components. It means you need to refer to both of the document.  More practical way that I am taking is.. 'pickup any one specific/simple sample xml file and go through line by line' refering to 3GPP document. Following template can be a good starting point for you to try (I hope)

 

<?xml version="1.0" encoding="utf-8"?>

<simservs xmlns="http://uri.etsi.org/ngn/params/xml/simservs/xcap"

          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

          xmlns:ss="http://uri.etsi.org/ngn/params/xml/simservs/xcap"

          xmlns:xs="http://www.w3.org/2001/XMLSchema"

          xmlns:cp="urn:ietf:params:xml:ns:common-policy"

          xmlns:ocp="urn:oma:xml:xdm:common-policy"

          xsi:schemaLocation="urn:ietf:params:xml:ns:xcap-caps xcap-caps.xsd">

   <communication-diversion active="true">

     <cp:ruleset>

       <cp:rule id="my rule">

         <cp:conditions/>

         <cp:actions>

           details .............

         </cp:actions>

        </cp:rule>

       </cp:ruleset>

   </communication-diversion>

   <communication-diversion active="true"/>

</simservs>

 

 

 

Reference :

 

[1] 3GPP 24.623 - Extensible Configuration Access Protocol (XCAP) over the Ut Interface for Manipulating Supplementary Service

[2] 3GPP 24.390 - Unstructured Supplementary Service Data (USSD) using IP Multimedia (IM) Core Network (CN) subsystem IMS;Stage 3

[3] 24.611 - Anonymous Communication Rejection (ACR) and Communication Barring (CB) using IP Multimedia (IM) Core Network (CN) subsystem; Protocol specification