<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            xmlns:oval-sc="http://oval.mitre.org/XMLSchema/oval-system-characteristics-5"
            xmlns:oval="http://oval.mitre.org/XMLSchema/oval-common-5"
            xmlns:ind-sc="http://oval.mitre.org/XMLSchema/oval-system-characteristics-5#independent"
            xmlns:sch="http://purl.oclc.org/dsdl/schematron"
            targetNamespace="http://oval.mitre.org/XMLSchema/oval-system-characteristics-5#independent"
            elementFormDefault="qualified"
            version="5.10.1">
   <xsd:import namespace="http://oval.mitre.org/XMLSchema/oval-system-characteristics-5"
               schemaLocation="oval-system-characteristics-schema.xsd"/>
   <xsd:element name="family_item" substitutionGroup="oval-sc:item">
      <xsd:complexType>
         <xsd:complexContent>
            <xsd:extension base="oval-sc:ItemType">
               <xsd:sequence>
                  <xsd:element name="family" type="ind-sc:EntityItemFamilyType" minOccurs="0" maxOccurs="1"/>
               </xsd:sequence>
            </xsd:extension>
         </xsd:complexContent>
      </xsd:complexType>
   </xsd:element>
   <xsd:element name="filehash_item" substitutionGroup="oval-sc:item">
      <xsd:complexType>
         <xsd:complexContent>
            <xsd:extension base="oval-sc:ItemType">
               <xsd:sequence>
                  <xsd:element name="filepath" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="path" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="filename" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="md5" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="sha1" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="windows_view" type="ind-sc:EntityItemWindowsViewType" minOccurs="0"/>
               </xsd:sequence>
            </xsd:extension>
         </xsd:complexContent>
      </xsd:complexType>
   </xsd:element>
   <xsd:element name="filehash58_item" substitutionGroup="oval-sc:item">
      <xsd:complexType>
         <xsd:complexContent>
            <xsd:extension base="oval-sc:ItemType">
               <xsd:sequence>
                  <xsd:element name="filepath" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="path" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="filename" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="hash_type" type="ind-sc:EntityItemHashTypeType" minOccurs="0"
                               maxOccurs="1"/>
                  <xsd:element name="hash" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="windows_view" type="ind-sc:EntityItemWindowsViewType" minOccurs="0"/>
               </xsd:sequence>
            </xsd:extension>
         </xsd:complexContent>
      </xsd:complexType>
   </xsd:element>
   <xsd:element name="environmentvariable_item" substitutionGroup="oval-sc:item">
      <xsd:complexType>
         <xsd:complexContent>
            <xsd:extension base="oval-sc:ItemType">
               <xsd:sequence>
                  <xsd:element name="name" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="value" type="oval-sc:EntityItemAnySimpleType" minOccurs="0" maxOccurs="1"/>
               </xsd:sequence>
            </xsd:extension>
         </xsd:complexContent>
      </xsd:complexType>
   </xsd:element>
   <xsd:element name="environmentvariable58_item" substitutionGroup="oval-sc:item">
      <xsd:complexType>
         <xsd:complexContent>
            <xsd:extension base="oval-sc:ItemType">
               <xsd:sequence>
                  <xsd:element name="pid" type="oval-sc:EntityItemIntType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="name" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="value" type="oval-sc:EntityItemAnySimpleType" minOccurs="0" maxOccurs="1"/>
               </xsd:sequence>
            </xsd:extension>
         </xsd:complexContent>
      </xsd:complexType>
   </xsd:element>
   <xsd:element name="ldap_item" substitutionGroup="oval-sc:item">
      <xsd:complexType>
         <xsd:complexContent>
            <xsd:extension base="oval-sc:ItemType">
               <xsd:sequence>
                  <xsd:element name="suffix" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="relative_dn" type="oval-sc:EntityItemStringType" minOccurs="0"
                               maxOccurs="1"
                               nillable="true"/>
                  <xsd:element name="attribute" type="oval-sc:EntityItemStringType" minOccurs="0"
                               maxOccurs="1"
                               nillable="true"/>
                  <xsd:element name="object_class" type="oval-sc:EntityItemStringType" minOccurs="0"
                               maxOccurs="1"/>
                  <xsd:element name="ldaptype" type="ind-sc:EntityItemLdaptypeType" minOccurs="0"
                               maxOccurs="1"/>
                  <xsd:element name="value" type="oval-sc:EntityItemAnySimpleType" minOccurs="0"
                               maxOccurs="unbounded"/>
               </xsd:sequence>
            </xsd:extension>
         </xsd:complexContent>
      </xsd:complexType>
   </xsd:element>
   <xsd:element name="ldap57_item" substitutionGroup="oval-sc:item">
      <xsd:complexType>
         <xsd:complexContent>
            <xsd:extension base="oval-sc:ItemType">
               <xsd:sequence>
                  <xsd:element name="suffix" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="relative_dn" type="oval-sc:EntityItemStringType" minOccurs="0"
                               maxOccurs="1"
                               nillable="true"/>
                  <xsd:element name="attribute" type="oval-sc:EntityItemStringType" minOccurs="0"
                               maxOccurs="1"
                               nillable="true"/>
                  <xsd:element name="object_class" type="oval-sc:EntityItemStringType" minOccurs="0"
                               maxOccurs="1"/>
                  <xsd:element name="ldaptype" type="ind-sc:EntityItemLdaptypeType" minOccurs="0"
                               maxOccurs="1"/>
                  <xsd:element name="value" type="oval-sc:EntityItemRecordType" minOccurs="0"
                               maxOccurs="unbounded"/>
               </xsd:sequence>
            </xsd:extension>
         </xsd:complexContent>
      </xsd:complexType>
   </xsd:element>
   <xsd:element name="sql_item" substitutionGroup="oval-sc:item">
      <xsd:complexType>
         <xsd:complexContent>
            <xsd:extension base="oval-sc:ItemType">
               <xsd:sequence>
                  <xsd:element name="engine" type="ind-sc:EntityItemEngineType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="version" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="connection_string" type="oval-sc:EntityItemStringType" minOccurs="0"
                               maxOccurs="1"/>
                  <xsd:element name="sql" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="result" type="oval-sc:EntityItemAnySimpleType" minOccurs="0"
                               maxOccurs="unbounded"/>
               </xsd:sequence>
            </xsd:extension>
         </xsd:complexContent>
      </xsd:complexType>
   </xsd:element>
   <xsd:element name="sql57_item" substitutionGroup="oval-sc:item">
      <xsd:complexType>
         <xsd:complexContent>
            <xsd:extension base="oval-sc:ItemType">
               <xsd:sequence>
                  <xsd:element name="engine" type="ind-sc:EntityItemEngineType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="version" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="connection_string" type="oval-sc:EntityItemStringType" minOccurs="0"
                               maxOccurs="1"/>
                  <xsd:element name="sql" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="result" type="oval-sc:EntityItemRecordType" minOccurs="0"
                               maxOccurs="unbounded"/>
               </xsd:sequence>
            </xsd:extension>
         </xsd:complexContent>
      </xsd:complexType>
   </xsd:element>
   <xsd:element name="textfilecontent_item" substitutionGroup="oval-sc:item">
      <xsd:complexType>
         <xsd:complexContent>
            <xsd:extension base="oval-sc:ItemType">
               <xsd:sequence>
                  <xsd:element name="filepath" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="path" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="filename" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="pattern" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="instance" type="oval-sc:EntityItemIntType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="line" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="text" type="oval-sc:EntityItemAnySimpleType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="subexpression" type="oval-sc:EntityItemAnySimpleType" minOccurs="0"
                               maxOccurs="unbounded"/>
                  <xsd:element name="windows_view" type="ind-sc:EntityItemWindowsViewType" minOccurs="0"/>
               </xsd:sequence>
            </xsd:extension>
         </xsd:complexContent>
      </xsd:complexType>
   </xsd:element>
   <xsd:element name="variable_item" substitutionGroup="oval-sc:item">
      <xsd:complexType>
         <xsd:complexContent>
            <xsd:extension base="oval-sc:ItemType">
               <xsd:sequence>
                  <xsd:element name="var_ref" type="ind-sc:EntityItemVariableRefType" minOccurs="0"
                               maxOccurs="1"/>
                  <xsd:element name="value" type="oval-sc:EntityItemAnySimpleType" minOccurs="0"
                               maxOccurs="unbounded"/>
               </xsd:sequence>
            </xsd:extension>
         </xsd:complexContent>
      </xsd:complexType>
   </xsd:element>
   <xsd:element name="xmlfilecontent_item" substitutionGroup="oval-sc:item">
      <xsd:complexType>
         <xsd:complexContent>
            <xsd:extension base="oval-sc:ItemType">
               <xsd:sequence>
                  <xsd:element name="filepath" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="path" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="filename" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="xpath" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1"/>
                  <xsd:element name="value_of" type="oval-sc:EntityItemAnySimpleType" minOccurs="0"
                               maxOccurs="unbounded"/>
                  <xsd:element name="windows_view" type="ind-sc:EntityItemWindowsViewType" minOccurs="0"/>
               </xsd:sequence>
            </xsd:extension>
         </xsd:complexContent>
      </xsd:complexType>
   </xsd:element>
   <xsd:complexType name="EntityItemEngineType">
      <xsd:simpleContent>
         <xsd:restriction base="oval-sc:EntityItemStringType">
            <xsd:enumeration value="access"/>
            <xsd:enumeration value="db2"/>
            <xsd:enumeration value="cache"/>
            <xsd:enumeration value="firebird"/>
            <xsd:enumeration value="firstsql"/>
            <xsd:enumeration value="foxpro"/>
            <xsd:enumeration value="informix"/>
            <xsd:enumeration value="ingres"/>
            <xsd:enumeration value="interbase"/>
            <xsd:enumeration value="lightbase"/>
            <xsd:enumeration value="maxdb"/>
            <xsd:enumeration value="monetdb"/>
            <xsd:enumeration value="mimer"/>
            <xsd:enumeration value="mysql"/>
            <xsd:enumeration value="oracle"/>
            <xsd:enumeration value="paradox"/>
            <xsd:enumeration value="pervasive"/>
            <xsd:enumeration value="postgre"/>
            <xsd:enumeration value="sqlbase"/>
            <xsd:enumeration value="sqlite"/>
            <xsd:enumeration value="sqlserver"/>
            <xsd:enumeration value="sybase"/>
            <xsd:enumeration value=""/>
         </xsd:restriction>
      </xsd:simpleContent>
   </xsd:complexType>
   <xsd:complexType name="EntityItemFamilyType">
      <xsd:simpleContent>
         <xsd:restriction base="oval-sc:EntityItemStringType">
            <xsd:enumeration value="catos"/>
            <xsd:enumeration value="ios"/>
            <xsd:enumeration value="macos"/>
            <xsd:enumeration value="pixos"/>
            <xsd:enumeration value="undefined"/>
            <xsd:enumeration value="unix"/>
            <xsd:enumeration value="vmware_infrastructure"/>
            <xsd:enumeration value="windows"/>
            <xsd:enumeration value=""/>
         </xsd:restriction>
      </xsd:simpleContent>
   </xsd:complexType>
   <xsd:complexType name="EntityItemHashTypeType">
      <xsd:simpleContent>
         <xsd:restriction base="oval-sc:EntityItemStringType">
            <xsd:enumeration value="MD5"/>
            <xsd:enumeration value="SHA-1"/>
            <xsd:enumeration value="SHA-224"/>
            <xsd:enumeration value="SHA-256"/>
            <xsd:enumeration value="SHA-384"/>
            <xsd:enumeration value="SHA-512"/>
            <xsd:enumeration value=""/>
         </xsd:restriction>
      </xsd:simpleContent>
   </xsd:complexType>
   <xsd:complexType name="EntityItemVariableRefType">
      <xsd:simpleContent>
         <xsd:restriction base="oval-sc:EntityItemStringType">
            <xsd:pattern value="oval:[A-Za-z0-9_\-\.]+:var:[1-9][0-9]*"/>
         </xsd:restriction>
      </xsd:simpleContent>
   </xsd:complexType>
   <xsd:complexType name="EntityItemLdaptypeType">
      <xsd:simpleContent>
         <xsd:restriction base="oval-sc:EntityItemStringType">
            <xsd:enumeration value="LDAPTYPE_ATTRIBUTE_TYPE_DESCRIP_STRING"/>
            <xsd:enumeration value="LDAPTYPE_DN_STRING"/>
            <xsd:enumeration value="LDAPTYPE_BIT_STRING"/>
            <xsd:enumeration value="LDAPTYPE_PRINTABLE_STRING"/>
            <xsd:enumeration value="LDAPTYPE_NUMERIC_STRING"/>
            <xsd:enumeration value="LDAPTYPE_BOOLEAN"/>
            <xsd:enumeration value="LDAPTYPE_INTEGER"/>
            <xsd:enumeration value="LDAPTYPE_UTC_TIME"/>
            <xsd:enumeration value="LDAPTYPE_GENERALIZED_TIME"/>
            <xsd:enumeration value="LDAPTYPE_DIRECTORY_STRING"/>
            <xsd:enumeration value="LDAPTYPE_OBJECT_CLASS_DESCRIP_STRING"/>
            <xsd:enumeration value="LDAPTYPE_BINARY"/>
            <xsd:enumeration value="LDAPTYPE_TIMESTAMP"/>
            <xsd:enumeration value="LDAPTYPE_EMAIL"/>
            <xsd:enumeration value=""/>
         </xsd:restriction>
      </xsd:simpleContent>
   </xsd:complexType>
   <xsd:complexType name="EntityItemWindowsViewType">
      <xsd:simpleContent>
         <xsd:restriction base="oval-sc:EntityItemStringType">
            <xsd:enumeration value="32_bit"/>
            <xsd:enumeration value="64_bit"/>
            <xsd:enumeration value=""/>
         </xsd:restriction>
      </xsd:simpleContent>
   </xsd:complexType>
</xsd:schema>