<?xml version="1.0"?>

<!-- XML file automatically generated by MIB Smithy               -->
<!-- Source: Z:/Projects/MIBSmithy/mibs/rfc2578.mib               -->

<smi xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xmlns="http://www.muonics.com/XMLSMI/Schema/XML-SMI-2.0"
     xsi:schemaLocation="http://www.muonics.com/XMLSMI/Schema/XML-SMI-2.0
     http://www.muonics.com/XMLSMI/Schema/XML-SMI-2.0.xsd">

 <module name="SNMPv2-SMI" language="SMIv2">
  <typedefs>
   <typedef name="ApplicationSyntax" status="current">
    <comments>
     <para>
      application-wide types includes Gauge32
     </para>
    </comments>
    <syntax typeref="CHOICE">
     <components>
      <syntax name="ipAddress-value" typeref="IpAddress"/>
      <syntax name="counter-value" typeref="Counter32"/>
      <syntax name="timeticks-value" typeref="TimeTicks"/>
      <syntax name="arbitrary-value" typeref="Opaque"/>
      <syntax name="big-counter-value" typeref="Counter64"/>
      <syntax name="unsigned-integer-value" typeref="Unsigned32"/>
     </components>
    </syntax>
   </typedef>
   <typedef name="Counter32" status="current">
    <comments>
     <para>
      this wraps
     </para>
    </comments>
    <syntax typeref="INTEGER">
     <tag implicit="true" class="application" value="1"/>
     <ranges>
      <range min="0" max="4294967295"/>
     </ranges>
    </syntax>
   </typedef>
   <typedef name="Counter64" status="current">
    <comments>
     <para>
      for counters that wrap in less than one hour with only 32 bits
     </para>
    </comments>
    <syntax typeref="INTEGER">
     <tag implicit="true" class="application" value="6"/>
     <ranges>
      <range min="0" max="18446744073709551615"/>
     </ranges>
    </syntax>
   </typedef>
   <typedef name="ExtUTCTime" status="current">
    <comments>
     <para>
      Extended UTCTime, to allow dates with four-digit years<br/>
      (Note that this definition of ExtUTCTime is not to be IMPORTed by MIB
      modules.)
     </para>
    </comments>
    <syntax typeref="OCTET STRING">
     <sizes>
      <size min="11" max="11"/>
      <size min="13" max="13"/>
     </sizes>
    </syntax>
   </typedef>
   <typedef name="Gauge32" status="current">
    <comments>
     <para>
      this doesn't wrap
     </para>
    </comments>
    <syntax typeref="INTEGER">
     <tag implicit="true" class="application" value="2"/>
     <ranges>
      <range min="0" max="4294967295"/>
     </ranges>
    </syntax>
   </typedef>
   <typedef name="Integer32" status="current">
    <comments>
     <para>
      indistinguishable from INTEGER, but never needs more than<br/>
      32-bits for a two's complement representation
     </para>
    </comments>
    <syntax typeref="INTEGER">
     <ranges>
      <range min="-2147483648" max="2147483647"/>
     </ranges>
    </syntax>
   </typedef>
   <typedef name="IpAddress" status="current">
    <comments>
     <para>
      in network-byte order
     </para>
     <para>
      (this is a tagged type for historical reasons)
     </para>
    </comments>
    <syntax typeref="OCTET STRING">
     <tag implicit="true" class="application" value="0"/>
     <sizes>
      <size min="4" max="4"/>
     </sizes>
    </syntax>
   </typedef>
   <typedef name="NotificationName" status="current">
    <syntax typeref="OBJECT IDENTIFIER"/>
   </typedef>
   <typedef name="ObjectName" status="current">
    <comments>
     <para>
      names of objects<br/>
      (Note that these definitions of ObjectName and NotificationName are
      not to be IMPORTed by MIB modules.)
     </para>
    </comments>
    <syntax typeref="OBJECT IDENTIFIER"/>
   </typedef>
   <typedef name="ObjectSyntax" status="current">
    <comments>
     <para>
      syntax of objects
     </para>
     <para>
      the "base types" defined here are:<br/>
      3 built-in ASN.1 types: INTEGER, OCTET STRING, OBJECT IDENTIFIER<br/>
      8 application-defined types: Integer32, IpAddress, Counter32, Gauge32,
      Unsigned32, TimeTicks, Opaque, and Counter64<br/>
      note that SEQUENCEs for conceptual tables and rows are not mentioned
      here...
     </para>
    </comments>
    <syntax typeref="CHOICE">
     <components>
      <syntax name="simple" typeref="SimpleSyntax"/>
      <syntax name="application-wide" typeref="ApplicationSyntax"/>
     </components>
    </syntax>
   </typedef>
   <typedef name="Opaque" status="current">
    <comments>
     <para>
      for backward-compatibility only
     </para>
    </comments>
    <syntax typeref="OCTET STRING">
     <tag implicit="true" class="application" value="4"/>
    </syntax>
   </typedef>
   <typedef name="SimpleSyntax" status="current">
    <comments>
     <para>
      built-in ASN.1 types INTEGERs with a more restrictive range may also
      be used includes Integer32<br/>
      OCTET STRINGs with a more restrictive size may also be used
     </para>
    </comments>
    <syntax typeref="CHOICE">
     <components>
      <syntax name="integer-value" typeref="INTEGER">
       <ranges>
        <range min="-2147483648" max="2147483647"/>
       </ranges>
      </syntax>
      <syntax name="string-value" typeref="OCTET STRING">
       <sizes>
        <size min="0" max="65535"/>
       </sizes>
      </syntax>
      <syntax name="objectID-value" typeref="OBJECT IDENTIFIER"/>
     </components>
    </syntax>
   </typedef>
   <typedef name="TimeTicks" status="current">
    <comments>
     <para>
      hundredths of seconds since an epoch
     </para>
    </comments>
    <syntax typeref="INTEGER">
     <tag implicit="true" class="application" value="3"/>
     <ranges>
      <range min="0" max="4294967295"/>
     </ranges>
    </syntax>
   </typedef>
   <typedef name="Unsigned32" status="current">
    <comments>
     <para>
      an unsigned 32-bit quantity indistinguishable from Gauge32
     </para>
    </comments>
    <syntax typeref="INTEGER">
     <tag implicit="true" class="application" value="2"/>
     <ranges>
      <range min="0" max="4294967295"/>
     </ranges>
    </syntax>
   </typedef>
  </typedefs>
  <assignments>
   <objectid name="zeroDotZero" status="current">
    <comments>
     <para>
      definitions of administrative identifiers
     </para>
    </comments>
    <description>
     <para>
      A value used for null identifiers.
     </para>
    </description>
    <oid>
     <subid value="0"/>
     <subid value="0"/>
    </oid>
   </objectid>
   <objectid name="org" status="current">
    <comments>
     <para>
      the path to the root
     </para>
    </comments>
    <oid>
     <subid name="iso"/>
     <subid value="3"/>
    </oid>
   </objectid>
   <objectid name="dod" status="current">
    <comments>
     <para>
      "iso" = 1
     </para>
    </comments>
    <oid>
     <subid name="org"/>
     <subid value="6"/>
    </oid>
   </objectid>
   <objectid name="internet" status="current">
    <oid>
     <subid name="dod"/>
     <subid value="1"/>
    </oid>
   </objectid>
   <objectid name="directory" status="current">
    <oid>
     <subid name="internet"/>
     <subid value="1"/>
    </oid>
   </objectid>
   <objectid name="mgmt" status="current">
    <oid>
     <subid name="internet"/>
     <subid value="2"/>
    </oid>
   </objectid>
   <objectid name="mib-2" status="current">
    <oid>
     <subid name="mgmt"/>
     <subid value="1"/>
    </oid>
   </objectid>
   <objectid name="transmission" status="current">
    <oid>
     <subid name="mib-2"/>
     <subid value="10"/>
    </oid>
   </objectid>
   <objectid name="experimental" status="current">
    <oid>
     <subid name="internet"/>
     <subid value="3"/>
    </oid>
   </objectid>
   <objectid name="private" status="current">
    <oid>
     <subid name="internet"/>
     <subid value="4"/>
    </oid>
   </objectid>
   <objectid name="enterprises" status="current">
    <oid>
     <subid name="private"/>
     <subid value="1"/>
    </oid>
   </objectid>
   <objectid name="security" status="current">
    <oid>
     <subid name="internet"/>
     <subid value="5"/>
    </oid>
   </objectid>
   <objectid name="snmpV2" status="current">
    <oid>
     <subid name="internet"/>
     <subid value="6"/>
    </oid>
   </objectid>
   <objectid name="snmpDomains" status="current">
    <comments>
     <para>
      transport domains
     </para>
    </comments>
    <oid>
     <subid name="snmpV2"/>
     <subid value="1"/>
    </oid>
   </objectid>
   <objectid name="snmpProxys" status="current">
    <comments>
     <para>
      transport proxies
     </para>
    </comments>
    <oid>
     <subid name="snmpV2"/>
     <subid value="2"/>
    </oid>
   </objectid>
   <objectid name="snmpModules" status="current">
    <comments>
     <para>
      module identities
     </para>
    </comments>
    <oid>
     <subid name="snmpV2"/>
     <subid value="3"/>
    </oid>
   </objectid>
  </assignments>
 </module>

</smi>

