<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
 elementFormDefault="qualified">

<xsd:include schemaLocation="common_trans_obj.xsd"/>
<xsd:include schemaLocation="common_obj.xsd"/>
	

	<xsd:element name="SNMP_DATA" type="SnmpDataContent"/>
	<xsd:element name="SNMP_ENABLED" type="xsd:boolean" default="true"/>
	<xsd:element name="LOCATION" type="xsd:string"/>
	<xsd:element name="CONTACT_NAME" type="xsd:string"/>
	<xsd:element name="SYSTEM_NAME" type="xsd:string"/>

	<xsd:element name="SECURITY" type="SnmpSecurityContent"/>
	<xsd:element name="ACCEPT_ALL_REQUESTS" type="xsd:boolean"/>
	<xsd:element name="SEND_AUTHENTICATION_TRAPS" type="xsd:boolean"/>

	<xsd:element name="TRAP_DESTINATION_LIST" type="TrapDestinationListContent"/>
	<xsd:element name="TRAP_DESTINATION" type="TrapDestinationContent"/>
	<xsd:element name="TRAP_VERSION" type="TrapVersionType"/>
	<xsd:element name="COMMUNITY_NAME" type="xsd:string"/>

	<xsd:element name="REQUEST_SOURCE_LIST" type="RequestSourceListContent"/>
	<xsd:element name="REQUEST_SOURCE" type="IpAddressType"/>
	
	<xsd:element name="COMMUNITY_PERMISSION_LIST" type="CommunityPermissionListContent"/>
	<xsd:element name="COMMUNITY_PERMISSION" type="CommunityPermissionContent"/>
	<xsd:element name="COMMUNITY_PERMISSION_SPECIFIC" type="CommunityPermissionType"/>


	<xsd:complexType name="SnmpDataContent">
		<xsd:sequence>
			<xsd:element ref="LOCATION" minOccurs="0"/>
			<xsd:element ref="CONTACT_NAME" minOccurs="0"/>
			<xsd:element ref="SYSTEM_NAME" minOccurs="0"/>
			<xsd:element ref="SECURITY" minOccurs="0"/>
			<xsd:element ref="SNMP_ENABLED" minOccurs="0"/>
			<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded" namespace="##other"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="SnmpSecurityContent">
		<xsd:sequence>
			<xsd:element ref="ACCEPT_ALL_REQUESTS" minOccurs="0"/>
			<xsd:element ref="SEND_AUTHENTICATION_TRAPS" minOccurs="0"/>
			<xsd:element ref="TRAP_DESTINATION_LIST" minOccurs="0"/>
			<xsd:element ref="REQUEST_SOURCE_LIST" minOccurs="0"/>
			<xsd:element ref="COMMUNITY_PERMISSION_LIST" minOccurs="0"/>
			<xsd:element ref="TRAP_VERSION" minOccurs="0"/>
			<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded" namespace="##other"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="RequestSourceListContent">
		<xsd:sequence>
			<xsd:element ref="REQUEST_SOURCE" minOccurs="0" maxOccurs="unbounded"/>
			<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded" namespace="##other"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="CommunityPermissionListContent">
		<xsd:sequence>
			<xsd:element ref="COMMUNITY_PERMISSION" minOccurs="0" maxOccurs="unbounded"/>
			<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded" namespace="##other"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="TrapDestinationListContent">
		<xsd:sequence>
			<xsd:element ref="TRAP_DESTINATION" minOccurs="0" maxOccurs="unbounded"/>
			<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded" namespace="##other"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="TrapDestinationContent">
		<xsd:sequence>
			<xsd:element ref="IP" minOccurs="0"/>
			<xsd:element ref="COMMUNITY_NAME" minOccurs="0"/>
			<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded" namespace="##other"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="CommunityPermissionContent">
		<xsd:sequence>
			<xsd:element ref="COMMUNITY_PERMISSION_SPECIFIC" minOccurs="0"/>
			<xsd:element ref="COMMUNITY_NAME" minOccurs="0"/>
			<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded" namespace="##other"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:simpleType name="CommunityPermissionType">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="snmp_no_permission"/>
			<xsd:enumeration value="snmp_read_only"/>
			<xsd:enumeration value="snmp_read_write"/>
			<xsd:enumeration value="snmp_write_create"/>
		</xsd:restriction>
	</xsd:simpleType>


	<xsd:simpleType name="TrapVersionType">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="snmpv1"/>
			<xsd:enumeration value="snmpv2"/>
		</xsd:restriction>
	</xsd:simpleType>


</xsd:schema>
