<xsd:schema targetNamespace="http://oval.mitre.org/XMLSchema/oval_results#ios" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:oval_results="http://oval.mitre.org/XMLSchema/oval_results" xmlns:ios="http://oval.mitre.org/XMLSchema/oval_results#ios" elementFormDefault="qualified" version="4.2">
<xsd:import namespace="http://oval.mitre.org/XMLSchema/oval_results" schemaLocation="oval-results-schema.xsd"/>
<xsd:annotation>
<xsd:documentation>This document outlines the IOS specific tests of the OVAL Results XML schema. Each test is an extention of a basic OVAL Results test defined in the default OVAL Results XML schema.</xsd:documentation>
<xsd:appinfo>
<schema>IOS Results</schema>
<version>4.2</version>
<date>2 December 2005</date>
</xsd:appinfo>
</xsd:annotation>
<!-- =============================================================================== -->
<!-- ======================== IOS GLOBAL TEST (igt) ============================== -->
<!-- =============================================================================== -->
<xsd:element name="global_test" substitutionGroup="oval_results:test">
<xsd:annotation>
<xsd:documentation>Test for the existence of a particular line in the ios config file under the global context</xsd:documentation>
<xsd:appinfo>
<test_name>Global Test</test_name>
<extends>standardTestType</extends>
<valid_sections>message, definition_object, tested_object</valid_sections>
<example></example>
</xsd:appinfo>
</xsd:annotation>
<xsd:complexType>
<xsd:complexContent>
<xsd:extension base="oval_results:standardTestType">
<xsd:sequence>
<xsd:element name="definition_object" minOccurs="1" maxOccurs="1">
<xsd:complexType>
<xsd:complexContent>
<xsd:extension base="oval_results:definitionObjectType">
<xsd:sequence>
<xsd:element name="global_command" type="oval_results:subtestStringType" minOccurs="1" maxOccurs="1">
<xsd:annotation>
<xsd:documentation></xsd:documentation>
<xsd:appinfo>
<parent_test>Global Test</parent_test>
<cardinality>1</cardinality>
<content>string</content>
<valid_datatypes>string</valid_datatypes>
<valid_operators>equals, not equal, pattern match</valid_operators>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="tested_object" minOccurs="0" maxOccurs="unbounded">
<xsd:complexType>
<xsd:complexContent>
<xsd:extension base="oval_results:testedObjectType">
<xsd:sequence>
<xsd:element name="global_command" type="oval_results:testedStringType" minOccurs="1" maxOccurs="1">
<xsd:annotation>
<xsd:documentation></xsd:documentation>
<xsd:appinfo>
<parent_test>Global Test</parent_test>
<cardinality>1</cardinality>
<content>string</content>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
<!-- =============================================================================== -->
<!-- ======================== IOS INTERFACE TEST (iit) =========================== -->
<!-- =============================================================================== -->
<xsd:element name="interface_test" substitutionGroup="oval_results:test">
<xsd:annotation>
<xsd:documentation></xsd:documentation>
<xsd:appinfo>
<test_name>Interface Test</test_name>
<extends>standardTestType</extends>
<valid_sections>message, definition_object, tested_object</valid_sections>
<example></example>
</xsd:appinfo>
</xsd:annotation>
<xsd:complexType>
<xsd:complexContent>
<xsd:extension base="oval_results:standardTestType">
<xsd:sequence>
<xsd:element name="definition_object" minOccurs="1" maxOccurs="1">
<xsd:complexType>
<xsd:complexContent>
<xsd:extension base="oval_results:definitionObjectType">
<xsd:sequence>
<xsd:element name="name" type="oval_results:subtestStringType" minOccurs="1" maxOccurs="1">
<xsd:annotation>
<xsd:documentation></xsd:documentation>
<xsd:appinfo>
<parent_test>Interface Test</parent_test>
<cardinality>1</cardinality>
<content>string</content>
<valid_datatypes>string</valid_datatypes>
<valid_operators>equals, not equal, pattern match</valid_operators>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="definition_data" minOccurs="0" maxOccurs="1">
<xsd:complexType>
<xsd:complexContent>
<xsd:extension base="oval_results:definitionDataType">
<xsd:sequence>
<xsd:element name="ip_directed_broadcast_command" type="oval_results:testedStringType" minOccurs="0" maxOccurs="1">
<xsd:annotation>
<xsd:documentation></xsd:documentation>
<xsd:appinfo>
<parent_test>Interface Test</parent_test>
<cardinality>0-1</cardinality>
<content>string</content>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="no_ip_directed_broadcast_command" type="oval_results:testedStringType" minOccurs="0" maxOccurs="1">
<xsd:annotation>
<xsd:documentation></xsd:documentation>
<xsd:appinfo>
<parent_test>Interface Test</parent_test>
<cardinality>0-1</cardinality>
<content>string</content>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="proxy_arp_command" type="oval_results:testedStringType" minOccurs="0" maxOccurs="1">
<xsd:annotation>
<xsd:documentation></xsd:documentation>
<xsd:appinfo>
<parent_test>Interface Test</parent_test>
<cardinality>1</cardinality>
<content>string</content>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="shutdown_command" type="oval_results:testedStringType" minOccurs="0" maxOccurs="1">
<xsd:annotation>
<xsd:documentation></xsd:documentation>
<xsd:appinfo>
<parent_test>Interface Test</parent_test>
<cardinality>0-1</cardinality>
<content>string</content>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="tested_object" minOccurs="0" maxOccurs="unbounded">
<xsd:complexType>
<xsd:complexContent>
<xsd:extension base="oval_results:testedObjectType">
<xsd:sequence>
<xsd:element name="name" type="oval_results:testedStringType" minOccurs="1" maxOccurs="1">
<xsd:annotation>
<xsd:documentation></xsd:documentation>
<xsd:appinfo>
<parent_test>Interface Test</parent_test>
<cardinality>1</cardinality>
<content>string</content>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
<!-- =============================================================================== -->
<!-- ============================ IOS LINE TEST (ilt) ============================ -->
<!-- =============================================================================== -->
<xsd:element name="line_test" substitutionGroup="oval_results:test">
<xsd:annotation>
<xsd:documentation>Test the properties of specific lines in the ios config file.</xsd:documentation>
<xsd:appinfo>
<test_name>Line Test</test_name>
<extends>standardTestType</extends>
<valid_sections>message, definition_object, tested_object</valid_sections>
<example></example>
</xsd:appinfo>
</xsd:annotation>
<xsd:complexType>
<xsd:complexContent>
<xsd:extension base="oval_results:standardTestType">
<xsd:sequence>
<xsd:element name="definition_object" minOccurs="1" maxOccurs="1">
<xsd:complexType>
<xsd:complexContent>
<xsd:extension base="oval_results:definitionObjectType">
<xsd:sequence>
<xsd:element name="name" type="oval_results:subtestStringType" minOccurs="1" maxOccurs="1">
<xsd:annotation>
<xsd:documentation></xsd:documentation>
<xsd:appinfo>
<parent_test>Line Test</parent_test>
<cardinality>1</cardinality>
<content>string</content>
<valid_datatypes>string</valid_datatypes>
<valid_operators>equals, not equal, pattern match</valid_operators>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="definition_data" minOccurs="0" maxOccurs="1">
<xsd:complexType>
<xsd:complexContent>
<xsd:extension base="oval_results:definitionDataType">
<xsd:sequence>
<xsd:element name="exec_timeout_command" type="oval_results:testedStringType" minOccurs="0" maxOccurs="1">
<xsd:annotation>
<xsd:documentation></xsd:documentation>
<xsd:appinfo>
<parent_test>Line Test</parent_test>
<cardinality>1</cardinality>
<content>string</content>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="login_command" type="oval_results:testedStringType" minOccurs="0" maxOccurs="1">
<xsd:annotation>
<xsd:documentation></xsd:documentation>
<xsd:appinfo>
<parent_test>Line Test</parent_test>
<cardinality>1</cardinality>
<content>string</content>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="no_exec_command" type="oval_results:testedStringType" minOccurs="0" maxOccurs="1">
<xsd:annotation>
<xsd:documentation></xsd:documentation>
<xsd:appinfo>
<parent_test>Line Test</parent_test>
<cardinality>1</cardinality>
<content>string</content>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="password_command" type="oval_results:testedStringType" minOccurs="0" maxOccurs="1">
<xsd:annotation>
<xsd:documentation></xsd:documentation>
<xsd:appinfo>
<parent_test>Line Test</parent_test>
<cardinality>1</cardinality>
<content>string</content>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="transport_command" type="oval_results:testedStringType" minOccurs="0" maxOccurs="1">
<xsd:annotation>
<xsd:documentation></xsd:documentation>
<xsd:appinfo>
<parent_test>Line Test</parent_test>
<cardinality>1</cardinality>
<content>string</content>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="tested_object" minOccurs="0" maxOccurs="unbounded">
<xsd:complexType>
<xsd:complexContent>
<xsd:extension base="oval_results:testedObjectType">
<xsd:sequence>
<xsd:element name="name" type="oval_results:testedStringType" minOccurs="1" maxOccurs="1">
<xsd:annotation>
<xsd:documentation></xsd:documentation>
<xsd:appinfo>
<parent_test>Line Test</parent_test>
<cardinality>1</cardinality>
<content>string</content>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
<!-- =============================================================================== -->
<!-- ========================== IOS SNMP TEST (ist) ============================== -->
<!-- =============================================================================== -->
<xsd:element name="snmp_test" substitutionGroup="oval_results:test">
<xsd:annotation>
<xsd:documentation>Tests if lines under the global context associated with snmp have a specifiec access list or community name.</xsd:documentation>
<xsd:appinfo>
<test_name>SNMP Test</test_name>
<extends>standardTestType</extends>
<valid_sections>message, definition_data, tested_object</valid_sections>
<example></example>
</xsd:appinfo>
</xsd:annotation>
<xsd:complexType>
<xsd:complexContent>
<xsd:extension base="oval_results:standardTestType">
<xsd:sequence>
<xsd:element name="definition_data" minOccurs="1" maxOccurs="1">
<xsd:complexType>
<xsd:complexContent>
<xsd:extension base="oval_results:definitionDataType">
<xsd:sequence>
<xsd:element name="access_list" type="oval_results:testedStringType" minOccurs="0" maxOccurs="1">
<xsd:annotation>
<xsd:documentation></xsd:documentation>
<xsd:appinfo>
<parent_test>SNMP Test</parent_test>
<cardinality>0-1</cardinality>
<content>string</content>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="community_name" type="oval_results:testedStringType" minOccurs="0" maxOccurs="1">
<xsd:annotation>
<xsd:documentation></xsd:documentation>
<xsd:appinfo>
<parent_test>SNMP Test</parent_test>
<cardinality>0-1</cardinality>
<content>string</content>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="tested_object" type="oval_results:testedObjectType" minOccurs="0" maxOccurs="1"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
<!-- =============================================================================== -->
<!-- ======================== IOS VERSION TEST (ivt) ============================= -->
<!-- =============================================================================== -->
<xsd:element name="version_test" substitutionGroup="oval_results:test">
<xsd:annotation>
<xsd:documentation>Tests the version of the IOS operating system.</xsd:documentation>
<xsd:appinfo>
<test_name>Version Test</test_name>
<extends>standardTestType</extends>
<valid_sections>message, definition_data, tested_object</valid_sections>
<example></example>
</xsd:appinfo>
</xsd:annotation>
<xsd:complexType>
<xsd:complexContent>
<xsd:extension base="oval_results:standardTestType">
<xsd:sequence>
<xsd:element name="definition_data" minOccurs="1" maxOccurs="1">
<xsd:complexType>
<xsd:complexContent>
<xsd:extension base="oval_results:definitionDataType">
<xsd:sequence>
<xsd:element name="version" type="oval_results:subtestStringType" minOccurs="0" maxOccurs="1">
<xsd:annotation>
<xsd:documentation></xsd:documentation>
<xsd:appinfo>
<parent_test>Version Test</parent_test>
<cardinality>0-1</cardinality>
<content>string</content>
<valid_datatypes>string</valid_datatypes>
<valid_operators>equals, not equal, pattern match</valid_operators>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="tested_object" type="oval_results:testedObjectType" minOccurs="0" maxOccurs="1"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
<!-- =============================================================================== -->
<!-- =============================================================================== -->
<!-- =============================================================================== -->
<xsd:element name="platform" substitutionGroup="oval_results:platformBase">
<xsd:annotation>
<xsd:documentation>The valid platforms for the IOS Family.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="IOS 11.0"/>
<xsd:enumeration value="IOS 11.1"/>
<xsd:enumeration value="IOS 11.2"/>
<xsd:enumeration value="IOS 12.0"/>
<xsd:enumeration value="IOS 12.1"/>
<xsd:enumeration value="IOS 12.2"/>
<xsd:enumeration value="IOS 12.3"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:schema>
|