Cisco XML and Encapsulated CLI Operations


XML interface for the router provides support for XML encapsulated CLI commands and responses.

This chapter provides information on XML CLI command tags.

XML CLI Command Tags

A client application can request a CLI command by encoding the text for the command within a pair of <CLI> start and </CLI> end tags, <Configuration> tags, and <EXEC> tags. The router responds with the uninterpreted CLI text result.


Note XML encapsulated CLI commands use the same target configuration as the corresponding XML operations <Get>, <Set>, and <Delete>.


When used for CLI operations, the <Configuration> tag supports the optional Operation attribute, which can take one of the values listed in Table 6-1.

Table 6-1 Operational Attribute Values 

Operational Attribute Value
Operational Attribute Value Description

Apply

Specifies that the commands should be executed or applied (default).

Help

Gets help on the last command in the list of commands sent in the request. There should not be any empty lines after the last command (because the last command is considered to be the one on the last line).

CommandCompletion

Completes the last keyword of the last command. Apart from not allowing empty lines at the end of the list of commands sent in the request, when this option is used there should not be any white spaces after the partial keyword to be completed.


The following example uses the <CLI> operation tag:

Sample XML Client Request for CLI Command Using CLI Tags

<?xml version="1.0" encoding="UTF-8"?>
<Request MajorVersion="1" MinorVersion="0">
  <CLI>
   <Configuration>
     router bgp 3
       default-metric 10
       timers bgp 80 160
      exit
      commit
   </Configuration>
   <Exec>
     sh config commit changes last 1
   </Exec>
  </CLI>
</Request>

Sample XML Response from the Router

<?xml version="1.0" encoding="UTF-8"?>
<Response MajorVersion="1" MinorVersion="0">
  <CLI>
    <Configuration>
    <EXEC>
     Building configuration...
     router bgp 3
      timers bgp 80 160
      default-metric 10
     end
    <EXEC>
  </CLI>
  <ResultSummary ErrorCount="0"/>
</Response>

CLI Command Limitations

The CLI commands, which are supported through XML, are limited to CLI configuration commands and EXEC mode show commands (and responses) that are wrapped in <CLI> tags.

The following commands and conditions are not supported:

The do configuration mode command.

EXEC mode commands other than show commands except for the following items:

show history

show user

show users

show terminal

Administration EXEC mode commands

Iterators for responses to <CLI> commands issued through XML. For example, iterators are not supported for the output of the show run and show configuration commands.

Sending a request in <CLI> format and getting back an XML encoded response.

Sending an XML encoded request and getting back a response in <CLI> format.

Only one XML <CLI> request can be issued at a time across all client sessions on the router.