5.5 Support of XCAP
34.229-33GPPInternet Protocol (IP) multimedia call control protocol based on Session Initiation Protocol (SIP) and Session Description Protocol (SDP)Part 3: Abstract test suite (ATS)Release 17TSUser Equipment (UE) conformance specification
MTSI supplementary services (TS 24.173[25]) like communication barring (CB) and communication diversion (CDIV) require the XCAP protocol (RFC 4825[26]) for transporting and manipulating XML documents in the network describing these services. Test cases for these services are specified in e.g. TS 34.229-1 [5] clause 15. As shown in figure 5.2-2 the SS shall provide an XCAP server to support XCAP test cases; the TTCN interface to this server is specified in clause 6.5.
5.5.1 XCAP Server
Supplementary services are managed by the XCAP server in the simservs documents according to TS 24.623 [36]. Test cases manipulating data related to supplementary services are specified in e.g. TS 34.229-1 [5] clause 15. For simplification of the TTCN implementation, the XCAP server functionality shall be provided by the SS i.e. it is not implemented in the TTCN. Access to the XCAP server can be distinguished into:
– HTTP based transaction between the UE and the XCAP server
– Initialisation and validation of the simservs document according to the test cases
In addition the UE may exchange HTTP messages for authentication (depending on the UE’s security capabilities); see figure 5.5.1-1.
Figure 5.5.1-1: IMS CC test model
NOTE: In accordance to RFC 4825 clause 6.3 [26], the UE may use complex XPATH expressions to modify the simservs document but this shall be handled by the XCAP server; in the TTCN these expressions are not explicitly checked. Furthermore test case implementation itself does not use complex XPATH expressions to access the simservs document, but always considers the whole document.
5.5.2 HTTP Signalling
RFC 4825 [26] specifies the protocol for accessing user data in the XCAP server via HTTP requests. An HTTP request for an XCAP operation contains basically three components:
– Request line method, i.e. PUT, GET or DELETE
– Request line uri – The XCAP expression to be evaluated to access the XCAP document. The XCAP expression consists of the document selector followed by the separator “~~” followed by the node selector pointing to the user data to accessed or evaluated
– body – Describing the value (an xml fragment) referenced by the XCAP expression
Example 1
In order to set terminating-identity-presentation for user sip:ob.stf160@etsi.org, the UE sends following HTTP request:
PUT http://XCAP- Server/simservs.ngn.etsi.org/users/sip%3Aob.stf160%40etsi.org/simservs.xml/~~
/simservs/terminating-identity-presentation/%40active
Body: true
If successful, the XCAP server responds with
HTTP/1.1 200 OK
Example 2
To get the value of terminating-identity-presentation for user sip:ob.stf160@etsi.org, the UE sends following HTTP request:
GET
/simservs/terminating-identity-presentation/%40active
If successful, the XCAP server responds with
HTTP/1.1 200 OK
Body: true
In this example
//XCAP-server/simservs.ngn.etsi.org/users/ sip%3Aob.stf160%40etsi.org/simservs.xml/– Document selector for user .
~~ – Document selector separator, see RFC 4825
/simservs/terminating-identity-presentation/%40active – Node selector pointing to the information in the XCAP server to be accessed. This is an XPATH expression, see RFC 4825 section 6.3.
true – Is the xml fragment (in this case very simple) to be set as value of the XPATH expression
Following operations shall be implemented in the XCAP server, see RFC 4825.
GET – Returns the requested data as an XML fragment to be send to the UE
input parameters: charstring documentSelector, charstring xpathExpr
returns: XML fragment or XML document
PUT – Builds an XML subtree or sets an attribute given by the xmlFragment at the position pointed by the xpath expression
input parameters: charstring documentSelector, charstring xpathExpr, charstring xmlFragment or xmlDocument
DELETE – Deletes an XML subtree or sets an attribute given by the xmlFragment at the position pointed by the xpath expression
input parameters: charstring documentSelector, charstring xpathExpr