<xsd:element name="metabase_object" substitutionGroup="oval-def:object">
<xsd:annotation>
<xsd:documentation>The metabase_object element is used by a metabase test to define the specific metabase item(s) to be evaluated. Each object extends the standard ObjectType as definied in the oval-definitions-schema and one should refer to the ObjectType description for more information. The common set element allows complex objects to be created using filters and set logic. Again, please refer to the description of the set element in the oval-definitions-schema.</xsd:documentation>
<xsd:documentation>A metabase object defines the key and id of the item(s).</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:complexContent>
<xsd:extension base="oval-def:ObjectType">
<xsd:sequence>
<xsd:choice>
<xsd:element ref="oval-def:set" minOccurs="0" />
<xsd:sequence minOccurs="0">
<xsd:element name="key" type="oval-def:EntityObjectStringType">
<xsd:annotation>
<xsd:documentation>The key element specifies a metabase key.</xsd:documentation>
<xsd:appinfo>
<sch:pattern id="metabaseobjkey" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
<sch:rule context="win-def:metabase_object/win-def:key">
<sch:assert test="not(@datatype) or @datatype='string'">
<sch:value-of select="../@id" /> - datatype attribute for the key entity of a metabase_object should be 'string'</sch:assert>
</sch:rule>
</sch:pattern>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="id" type="oval-def:EntityObjectIntType" nillable="true">
<xsd:annotation>
<xsd:documentation>The id element specifies a particular object under the metabase key. If the nillable attribute is set to true, then the object being specified is the higher level key. In this case, the id element should not be collected or used in analysis. Setting nil equal to true is different than using a .* pattern match, says to collect every id under a given key. The most likely use for xsi:nil within a metabase object is when checking for the existance of a particular key, without regards to the different ids associated with it.</xsd:documentation>
<xsd:appinfo>
<valid_datatypes>integer</valid_datatypes>
<valid_operators>equals, not equal, greater than, less than, greater than or equal, less than or equal</valid_operators>
<sch:pattern id="metabaseobjid" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
<sch:rule context="win-def:metabase_object/win-def:id">
<sch:assert test="@datatype='int'">
<sch:value-of select="../@id" /> - datatype attribute for the id entity of a metabase_object should be 'int'</sch:assert>
</sch:rule>
</sch:pattern>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:choice>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
|