<xsd:element name="activedirectory_item" substitutionGroup="oval-sc:item">
<xsd:annotation>
<xsd:documentation>The active directory item holds information about specific entries in the Windows Active Directory. It extends the standard ItemType as defined in the oval-system-characteristics schema and one should refer to the ItemType description for more information.</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:complexContent>
<xsd:extension base="oval-sc:ItemType">
<xsd:sequence>
<xsd:element name="naming_context" type="win-sc:EntityItemNamingContextType" minOccurs="0" maxOccurs="1">
<xsd:annotation>
<xsd:documentation>Each object in active directory exists under a certain naming context (also known as a partition). A naming context is defined as a single object in the Directory Information Tree (DIT) along with every object in the tree subordinate to it. There are three default naming contexts in Active Directory: domain, configuration, and schema.</xsd:documentation>
<xsd:appinfo>
<sch:pattern id="aditemnaming_context" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
<sch:rule context="win-sc:activedirectory_item/win-sc:naming_context">
<sch:assert test="not(@datatype) or @datatype='string'">item <sch:value-of select="../@id" /> - datatype attribute for the naming_context entity of an activedirectory_item should be 'string'</sch:assert>
</sch:rule>
</sch:pattern>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="relative_dn" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1" nillable="true">
<xsd:annotation>
<xsd:documentation>The relative_dn field is used to uniquely identify an object inside the specified naming context. It contains all the parts of the objects distinguished name except those outlined by the naming context. If the nillable attribute is set to true, then the item being represented is the higher level naming context. Using xsi:nil here will result in a status of 'does not exist' for object_class, adstype, and value since these entities are not associated with a naming context by itself. Note that when nil is used for the relative dn element, the attribute element should also be nilled.</xsd:documentation>
<xsd:appinfo>
<sch:pattern id="aditemrelative_dn" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
<sch:rule context="win-sc:activedirectory_item/win-sc:relative_dn">
<sch:assert test="not(@datatype) or @datatype='string'">item <sch:value-of select="../@id" /> - datatype attribute for the relative_dn entity of an activedirectory_item should be 'string'</sch:assert>
<sch:assert test="not(@xsi:nil='true') or ../win-sc:attribute/@xsi:nil='true'">
<sch:value-of select="../@id" /> - attribute entity must be nil when relative_dn is nil</sch:assert>
</sch:rule>
</sch:pattern>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="attribute" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1" nillable="true">
<xsd:annotation>
<xsd:documentation>Specifies a named value contained by the object. If the nillable attribute is set to true, then the item being represented is the higher level relative dn. Using xsi:nil here will result in a status of 'does not exist' for object_class, adstype, and value since these entities are not associated with a relative dn by itself.</xsd:documentation>
<xsd:appinfo>
<sch:pattern id="aditemattribute" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
<sch:rule context="win-sc:activedirectory_item/win-sc:attribute">
<sch:assert test="not(@datatype) or @datatype='string'">item <sch:value-of select="../@id" /> - datatype attribute for the attribute entity of an activedirectory_item should be 'string'</sch:assert>
</sch:rule>
</sch:pattern>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="object_class" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1">
<xsd:annotation>
<xsd:documentation>The name of the class of which the object is an instance.</xsd:documentation>
<xsd:appinfo>
<sch:pattern id="aditemobject_class" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
<sch:rule context="win-sc:activedirectory_item/win-sc:object_class">
<sch:assert test="not(@datatype) or @datatype='string'">item <sch:value-of select="../@id" /> - datatype attribute for the object_class entity of an activedirectory_item should be 'string'</sch:assert>
</sch:rule>
</sch:pattern>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="adstype" type="win-sc:EntityItemAdstypeType" minOccurs="0" maxOccurs="1">
<xsd:annotation>
<xsd:documentation>Specifies the type of information that the specified attribute represents.</xsd:documentation>
<xsd:appinfo>
<sch:pattern id="aditemadstype" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
<sch:rule context="win-sc:activedirectory_item/win-sc:adstype">
<sch:assert test="not(@datatype) or @datatype='string'">item <sch:value-of select="../@id" /> - datatype attribute for the adstype entity of an activedirectory_item should be 'string'</sch:assert>
</sch:rule>
</sch:pattern>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="value" type="oval-sc:EntityItemAnyType" minOccurs="0" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation>The actual value of the specified active directory attribute.</xsd:documentation>
<xsd:appinfo>
<!-- no schematron restrictions -->
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
|