<!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>resource</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">resource</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_resource.html">resource 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>resource element</h1>
      <table>
        <tr>
          <td align="right">Type:</td>
          <td><a href="ns0_resource.html">resource</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;resource&gt;
  &lt;identifier&gt;...&lt;/identifier&gt;
  &lt;pattern&gt;...&lt;/pattern&gt;
  &lt;permanent&gt;...&lt;/permanent&gt;
&lt;/resource&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>