<!doctype html>
<!-- paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/ -->
<!--[if lt IE 7 ]> <html class="no-js ie6" lang="en"> <![endif]-->
<!--[if IE 7 ]>    <html class="no-js ie7" lang="en"> <![endif]-->
<!--[if IE 8 ]>    <html class="no-js ie8" lang="en"> <![endif]-->
<!--[if (gte IE 9)|!(IE)]><!--> <html class="no-js" lang="en"> <!--<![endif]-->
<head>
  <meta charset="utf-8">

  <!-- Always force latest IE rendering engine (even in intranet) & Chrome Frame
       Remove this if you use the .htaccess -->
  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">

  <title>operation</title>

  <!-- Mobile viewport optimized: j.mp/bplateviewport -->
  <meta name="viewport" content="width=device-width, initial-scale=1.0">

  <!-- CSS: implied media="all" -->
  <link rel="stylesheet" href="css/style.css?v=2">
  <link rel="stylesheet" href="css/prettify.css">

  <!-- All JavaScript at the bottom, except for Modernizr which enables HTML5 elements & feature detects -->
  <script src="js/libs/modernizr-1.7.min.js"></script>

</head>

<body class="home">

  <div class="container">
    <header>
      <div id="header" class="column first last span-20">
        <div id="site-name" class="column span-18 append-1 prepend-1 first last"><a href="index.html">operation</a></div>
        <div id="primary" class="column span-18 append-1 prepend-1 first last">
          <ul class="navigation">
            <li id="nav-rest"><a href="rest.html">REST</a></li>
            <li id="nav-data"><a href="model.html">Data Model</a></li>
          </ul>
        </div>
        <div>
          <ul class="xbreadcrumbs" id="breadcrumbs">
            <li>
              <a href="index.html" class="home">Home</a> &gt;
            </li>
            <li>
              <a href="model.html">Data Model</a> &gt;
              <ul>
                <li><a href="model.html">Data Model</a></li>
                <li><a href="rest.html">REST</a></li>
              </ul>
            </li>
            <li>
              <a href="ns0.html">ns0</a> &gt;
              <ul>
                <li><a href="ns0.html">ns0</a></li>
              </ul>
            </li>
            <li class="current">
              <a href="el_ns0_operation.html">operation element</a>
              <ul>
                <li><a href="el_ns0_userRegistrationRequest.html">userRegistrationRequest element</a></li>
                <li><a href="el_ns0_roleTemplate.html">roleTemplate element</a></li>
                <li><a href="el_ns0_resource.html">resource element</a></li>
                <li><a href="el_ns0_stringList.html">stringList element</a></li>
                <li><a href="el_ns0_ldapGroupMappingUpdateRequest.html">ldapGroupMappingUpdateRequest element</a></li>
                <li><a href="el_ns0_role.html">role element</a></li>
                <li><a href="el_ns0_applicationRole.html">applicationRole element</a></li>
                <li><a href="el_ns0_application.html">application element</a></li>
                <li><a href="el_ns0_operation.html">operation element</a></li>
                <li><a href="el_ns0_errorMessage.html">errorMessage element</a></li>
                <li><a href="el_ns0_registrationKey.html">registrationKey element</a></li>
                <li><a href="el_ns0_ldapGroupMapping.html">ldapGroupMapping element</a></li>
                <li><a href="el_ns0_user.html">user element</a></li>
                <li><a href="el_ns0_permission.html">permission element</a></li>
                <li><a href="el_ns0_loginRequest.html">loginRequest element</a></li>
                <li><a href="el_ns0_redbackRestError.html">redbackRestError element</a></li>
              </ul>
            </li>
          </ul>
        </div>
      </div>
    </header>
    <div id="main" class="column first last span-20">
      <h1>operation element</h1>
      <table>
        <tr>
          <td align="right">Type:</td>
          <td><a href="ns0_operation.html">operation</a></td>
        </tr>
        <tr>
          <td align="right">Namespace:</td>
          <td>(default namespace)</td>
        </tr>
        <tr>
          <td align="right">XML Schema:</td>
          <td><a href="ns0.xsd">ns0.xsd</a></td>
        </tr>
        <tr>
          <td align="right">Available Since:</td>
          <td>1.4</td>
        </tr>
      </table>
      <h2>Example XML</h2>
      <code class="prettyprint lang-xml">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;operation&gt;
  &lt;name&gt;...&lt;/name&gt;
  &lt;description&gt;...&lt;/description&gt;
  &lt;permanent&gt;...&lt;/permanent&gt;
&lt;/operation&gt;</code>

      <div class="clear" />
    </div>
    <footer>
      <div id="footer">
        Generated by <a href="http://enunciate.codehaus.org">Enunciate</a>.
      </div>
    </footer>
  </div> <!--! end of #container -->

  <!-- JavaScript at the bottom for fast page loading -->

  <!-- Grab Google CDN's jQuery, with a protocol relative URL; fall back to local if necessary -->
  <script src="//ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.js"></script>
  <script>window.jQuery || document.write("<script src='js/libs/jquery-1.5.1.min.js'>\x3C/script>")</script>

  <!--manage the navigation menu-->
  <script src="js/libs/xbreadcrumbs.js"></script>
  <script>
    $(function() {
      $('#breadcrumbs').xBreadcrumbs();
    });
  </script>


  <!-- prettify code blocks. see http://code.google.com/p/google-code-prettify/ -->
  <script src="js/libs/prettify/prettify.js"></script>
  <script>
    $(function() {
      prettyPrint();
    });
  </script>

  <!--[if lt IE 7 ]>
    <script src="js/libs/dd_belatedpng.js"></script>
    <script>DD_belatedPNG.fix("img, .png_bg"); // Fix any <img> or .png_bg bg-images. Also, please read goo.gl/mZiyb </script>
  <![endif]-->

</body>
</html>