Definition Type: Element
Name: file_item
Namespace: http://oval.mitre.org/XMLSchema/oval-system-characteristics-5#unix
Type: oval-sc:ItemType
Containing Schema: unix-system-characteristics-schema.xsd
Abstract
Documentation:
The file item holds information about the individual files found on a system. Each file item contains path and filename information as well as its type, associated user and group ids, relevant dates, and the privialeges granted. It extends the standard ItemType as defined in the oval-system-characteristics schema and one should refer to the ItemType description for more information.
Collapse XSD Schema Diagram:
Drilldown into oexec in schema unix-system-characteristics-schema_xsd Drilldown into owrite in schema unix-system-characteristics-schema_xsd Drilldown into oread in schema unix-system-characteristics-schema_xsd Drilldown into gexec in schema unix-system-characteristics-schema_xsd Drilldown into gwrite in schema unix-system-characteristics-schema_xsd Drilldown into gread in schema unix-system-characteristics-schema_xsd Drilldown into uexec in schema unix-system-characteristics-schema_xsd Drilldown into uwrite in schema unix-system-characteristics-schema_xsd Drilldown into uread in schema unix-system-characteristics-schema_xsd Drilldown into sticky in schema unix-system-characteristics-schema_xsd Drilldown into sgid in schema unix-system-characteristics-schema_xsd Drilldown into suid in schema unix-system-characteristics-schema_xsd Drilldown into size in schema unix-system-characteristics-schema_xsd Drilldown into m_time in schema unix-system-characteristics-schema_xsd Drilldown into c_time in schema unix-system-characteristics-schema_xsd Drilldown into a_time in schema unix-system-characteristics-schema_xsd Drilldown into user_id in schema unix-system-characteristics-schema_xsd Drilldown into group_id in schema unix-system-characteristics-schema_xsd Drilldown into type in schema unix-system-characteristics-schema_xsd Drilldown into filename in schema unix-system-characteristics-schema_xsd Drilldown into path in schema unix-system-characteristics-schema_xsd Drilldown into message in schema oval-system-characteristics-schema_xsd Drilldown into status in schema oval-system-characteristics-schema_xsd Drilldown into id in schema oval-system-characteristics-schema_xsd Drilldown into ItemType in schema oval-system-characteristics-schema_xsdXSD Diagram of file_item in schema unix-system-characteristics-schema_xsd (Open Vulnerability and Assessment Language (OVAL®))
Collapse XSD Schema Code:
<xsd:element name="file_item" substitutionGroup="oval-sc:item">
    <xsd:annotation>
        <xsd:documentation>The file item holds information about the individual files found on a system. Each file item contains path and filename information as well as its type, associated user and group ids, relevant dates, and the privialeges granted. 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="path" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1">
                        <xsd:annotation>
                            <xsd:documentation>The path entity specifies the absolute path (excluding the filename) to a file on the machine.</xsd:documentation>
                            <xsd:appinfo>
                                <sch:pattern id="unixfileitempath" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
                                    <sch:rule context="unix-sc:file_item/unix-sc:path">
                                        <sch:assert test="not(@datatype) or @datatype='string'">item <sch:value-of select="../@id" /> - datatype attribute for the path entity of a file_item should be 'string'</sch:assert>
                                    </sch:rule>
                                </sch:pattern>
                            </xsd:appinfo>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element name="filename" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1" nillable="true">
                        <xsd:annotation>
                            <xsd:documentation>The name of the file. If the nillable attribute is set to true, then the item being represented is the higher directory represented by the path entity.</xsd:documentation>
                            <xsd:appinfo>
                                <sch:pattern id="unixfileitemfilename" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
                                    <sch:rule context="unix-sc:file_item/unix-sc:filename">
                                        <sch:assert test="not(@datatype) or @datatype='string'">item <sch:value-of select="../@id" /> - datatype attribute for the filename entity of a file_item should be 'string'</sch:assert>
                                    </sch:rule>
                                </sch:pattern>
                            </xsd:appinfo>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element name="type" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1">
                        <xsd:annotation>
                            <xsd:documentation>This is the file's type: regular file (regular), directory, named pipe (fifo), symbolic link, socket or block special.</xsd:documentation>
                            <xsd:appinfo>
                                <sch:pattern id="unixfileitemtype" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
                                    <sch:rule context="unix-sc:file_item/unix-sc:type">
                                        <sch:assert test="not(@datatype) or @datatype='string'">item <sch:value-of select="../@id" /> - datatype attribute for the type entity of a file_item should be 'string'</sch:assert>
                                    </sch:rule>
                                </sch:pattern>
                            </xsd:appinfo>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element name="group_id" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1">
                        <xsd:annotation>
                            <xsd:documentation>This is the group owner of the file, by group number.</xsd:documentation>
                            <xsd:appinfo>
                                <sch:pattern id="unixfileitemgroup_id" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
                                    <sch:rule context="unix-sc:file_item/unix-sc:group_id">
                                        <sch:assert test="not(@datatype) or @datatype='string'">item <sch:value-of select="../@id" /> - datatype attribute for the group_id entity of a file_item should be 'string'</sch:assert>
                                    </sch:rule>
                                </sch:pattern>
                            </xsd:appinfo>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element name="user_id" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1">
                        <xsd:annotation>
                            <xsd:documentation>The numeric user id, or uid, is the third column of each user's entry in /etc/passwd. This element represents the owner of the file.</xsd:documentation>
                            <xsd:appinfo>
                                <sch:pattern id="unixfileitemuser_id" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
                                    <sch:rule context="unix-sc:file_item/unix-sc:user_id">
                                        <sch:assert test="not(@datatype) or @datatype='string'">item <sch:value-of select="../@id" /> - datatype attribute for the user_id entity of a file_item should be 'string'</sch:assert>
                                    </sch:rule>
                                </sch:pattern>
                            </xsd:appinfo>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element name="a_time" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1">
                        <xsd:annotation>
                            <xsd:documentation>This is the time of the last access, in seconds since the last epoch.</xsd:documentation>
                            <xsd:appinfo>
                                <sch:pattern id="unixfileitema_time" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
                                    <sch:rule context="unix-sc:file_item/unix-sc:a_time">
                                        <sch:assert test="not(@datatype) or @datatype='string'">item <sch:value-of select="../@id" /> - datatype attribute for the a_time entity of a file_item should be 'string'</sch:assert>
                                    </sch:rule>
                                </sch:pattern>
                            </xsd:appinfo>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element name="c_time" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1">
                        <xsd:annotation>
                            <xsd:documentation>This is the time of the last change to the file's inode, which stores all.</xsd:documentation>
                            <xsd:appinfo>
                                <sch:pattern id="unixfileitemc_time" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
                                    <sch:rule context="unix-sc:file_item/unix-sc:c_time">
                                        <sch:assert test="not(@datatype) or @datatype='string'">item <sch:value-of select="../@id" /> - datatype attribute for the c_time entity of a file_item should be 'string'</sch:assert>
                                    </sch:rule>
                                </sch:pattern>
                            </xsd:appinfo>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element name="m_time" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1">
                        <xsd:annotation>
                            <xsd:documentation>This is the time of the last change to the file's contents.</xsd:documentation>
                            <xsd:appinfo>
                                <sch:pattern id="unixfileitemm_time" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
                                    <sch:rule context="unix-sc:file_item/unix-sc:m_time">
                                        <sch:assert test="not(@datatype) or @datatype='string'">item <sch:value-of select="../@id" /> - datatype attribute for the m_time entity of a file_item should be 'string'</sch:assert>
                                    </sch:rule>
                                </sch:pattern>
                            </xsd:appinfo>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element name="size" type="oval-sc:EntityItemIntType" minOccurs="0" maxOccurs="1">
                        <xsd:annotation>
                            <xsd:documentation>This is the size of the file in bytes.</xsd:documentation>
                            <xsd:appinfo>
                                <sch:pattern id="unixfileitemsize" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
                                    <sch:rule context="unix-sc:file_item/unix-sc:size">
                                        <sch:assert test="@datatype='int'">item <sch:value-of select="../@id" /> - datatype attribute for the size entity of a file_item should be 'int'</sch:assert>
                                    </sch:rule>
                                </sch:pattern>
                            </xsd:appinfo>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element name="suid" type="oval-sc:EntityItemBoolType" minOccurs="0" maxOccurs="1">
                        <xsd:annotation>
                            <xsd:documentation>Does the program run with the uid (thus privileges) of the file's owner, rather than the calling user?</xsd:documentation>
                            <xsd:appinfo>
                                <sch:pattern id="unixfileitemsuid" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
                                    <sch:rule context="unix-sc:file_item/unix-sc:suid">
                                        <sch:assert test="@datatype='boolean'">item <sch:value-of select="../@id" /> - datatype attribute for the suid entity of a file_item should be 'boolean'</sch:assert>
                                    </sch:rule>
                                </sch:pattern>
                            </xsd:appinfo>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element name="sgid" type="oval-sc:EntityItemBoolType" minOccurs="0" maxOccurs="1">
                        <xsd:annotation>
                            <xsd:documentation>Does the program run with the gid (thus privileges) of the file's group owner, rather than the calling user's group?</xsd:documentation>
                            <xsd:appinfo>
                                <sch:pattern id="unixfileitemsgid" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
                                    <sch:rule context="unix-sc:file_item/unix-sc:sgid">
                                        <sch:assert test="@datatype='boolean'">item <sch:value-of select="../@id" /> - datatype attribute for the sgid entity of a file_item should be 'boolean'</sch:assert>
                                    </sch:rule>
                                </sch:pattern>
                            </xsd:appinfo>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element name="sticky" type="oval-sc:EntityItemBoolType" minOccurs="0" maxOccurs="1">
                        <xsd:annotation>
                            <xsd:documentation>Can users delete each other's files in this directory, when said directory is writable by those users?</xsd:documentation>
                            <xsd:appinfo>
                                <sch:pattern id="unixfileitemsticky" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
                                    <sch:rule context="unix-sc:file_item/unix-sc:sticky">
                                        <sch:assert test="@datatype='boolean'">item <sch:value-of select="../@id" /> - datatype attribute for the sticky entity of a file_item should be 'boolean'</sch:assert>
                                    </sch:rule>
                                </sch:pattern>
                            </xsd:appinfo>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element name="uread" type="oval-sc:EntityItemBoolType" minOccurs="0" maxOccurs="1">
                        <xsd:annotation>
                            <xsd:documentation>Can the owner (user owner) of the file read this file or, if a directory, read the directory contents?</xsd:documentation>
                            <xsd:appinfo>
                                <sch:pattern id="unixfileitemuread" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
                                    <sch:rule context="unix-sc:file_item/unix-sc:uread">
                                        <sch:assert test="@datatype='boolean'">item <sch:value-of select="../@id" /> - datatype attribute for the uread entity of a file_item should be 'boolean'</sch:assert>
                                    </sch:rule>
                                </sch:pattern>
                            </xsd:appinfo>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element name="uwrite" type="oval-sc:EntityItemBoolType" minOccurs="0" maxOccurs="1">
                        <xsd:annotation>
                            <xsd:documentation>Can the owner (user owner) of the file read this file or, if a directory, read the directory contents?</xsd:documentation>
                            <xsd:appinfo>
                                <sch:pattern id="unixfileitemuwrite" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
                                    <sch:rule context="unix-sc:file_item/unix-sc:uwrite">
                                        <sch:assert test="@datatype='boolean'">item <sch:value-of select="../@id" /> - datatype attribute for the uwrite entity of a file_item should be 'boolean'</sch:assert>
                                    </sch:rule>
                                </sch:pattern>
                            </xsd:appinfo>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element name="uexec" type="oval-sc:EntityItemBoolType" minOccurs="0" maxOccurs="1">
                        <xsd:annotation>
                            <xsd:documentation>Can the owner (user owner) of the file execute it or, if a directory, change into the directory?</xsd:documentation>
                            <xsd:appinfo>
                                <sch:pattern id="unixfileitemuexec" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
                                    <sch:rule context="unix-sc:file_item/unix-sc:uexec">
                                        <sch:assert test="@datatype='boolean'">item <sch:value-of select="../@id" /> - datatype attribute for the uexec entity of a file_item should be 'boolean'</sch:assert>
                                    </sch:rule>
                                </sch:pattern>
                            </xsd:appinfo>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element name="gread" type="oval-sc:EntityItemBoolType" minOccurs="0" maxOccurs="1">
                        <xsd:annotation>
                            <xsd:documentation>Can the group owner of the file read this file or, if a directory, read the directory contents?</xsd:documentation>
                            <xsd:appinfo>
                                <sch:pattern id="unixfileitemgread" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
                                    <sch:rule context="unix-sc:file_item/unix-sc:gread">
                                        <sch:assert test="@datatype='boolean'">item <sch:value-of select="../@id" /> - datatype attribute for the gread entity of a file_item should be 'boolean'</sch:assert>
                                    </sch:rule>
                                </sch:pattern>
                            </xsd:appinfo>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element name="gwrite" type="oval-sc:EntityItemBoolType" minOccurs="0" maxOccurs="1">
                        <xsd:annotation>
                            <xsd:documentation>Can the group owner of the file write to this file or directory?</xsd:documentation>
                            <xsd:appinfo>
                                <sch:pattern id="unixfileitemgwrite" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
                                    <sch:rule context="unix-sc:file_item/unix-sc:gwrite">
                                        <sch:assert test="@datatype='boolean'">item <sch:value-of select="../@id" /> - datatype attribute for the gwrite entity of a file_item should be 'boolean'</sch:assert>
                                    </sch:rule>
                                </sch:pattern>
                            </xsd:appinfo>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element name="gexec" type="oval-sc:EntityItemBoolType" minOccurs="0" maxOccurs="1">
                        <xsd:annotation>
                            <xsd:documentation>Can the group owner of the file execute it or, if a directory, change into the directory?</xsd:documentation>
                            <xsd:appinfo>
                                <sch:pattern id="unixfileitemgexec" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
                                    <sch:rule context="unix-sc:file_item/unix-sc:gexec">
                                        <sch:assert test="@datatype='boolean'">item <sch:value-of select="../@id" /> - datatype attribute for the gexec entity of a file_item should be 'boolean'</sch:assert>
                                    </sch:rule>
                                </sch:pattern>
                            </xsd:appinfo>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element name="oread" type="oval-sc:EntityItemBoolType" minOccurs="0" maxOccurs="1">
                        <xsd:annotation>
                            <xsd:documentation>Can all other users read this file or, if a directory, read the directory contents?</xsd:documentation>
                            <xsd:appinfo>
                                <sch:pattern id="unixfileitemoread" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
                                    <sch:rule context="unix-sc:file_item/unix-sc:oread">
                                        <sch:assert test="@datatype='boolean'">item <sch:value-of select="../@id" /> - datatype attribute for the oread entity of a file_item should be 'boolean'</sch:assert>
                                    </sch:rule>
                                </sch:pattern>
                            </xsd:appinfo>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element name="owrite" type="oval-sc:EntityItemBoolType" minOccurs="0" maxOccurs="1">
                        <xsd:annotation>
                            <xsd:documentation>Can the other users write to this file or directory?</xsd:documentation>
                            <xsd:appinfo>
                                <sch:pattern id="unixfileitemowrite" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
                                    <sch:rule context="unix-sc:file_item/unix-sc:owrite">
                                        <sch:assert test="@datatype='boolean'">item <sch:value-of select="../@id" /> - datatype attribute for the owrite entity of a file_item should be 'boolean'</sch:assert>
                                    </sch:rule>
                                </sch:pattern>
                            </xsd:appinfo>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element name="oexec" type="oval-sc:EntityItemBoolType" minOccurs="0" maxOccurs="1">
                        <xsd:annotation>
                            <xsd:documentation>Can the other users execute this file or, if a directory, change into the directory?</xsd:documentation>
                            <xsd:appinfo>
                                <sch:pattern id="unixfileitemoexec" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
                                    <sch:rule context="unix-sc:file_item/unix-sc:oexec">
                                        <sch:assert test="@datatype='boolean'">item <sch:value-of select="../@id" /> - datatype attribute for the oexec entity of a file_item should be 'boolean'</sch:assert>
                                    </sch:rule>
                                </sch:pattern>
                            </xsd:appinfo>
                        </xsd:annotation>
                    </xsd:element>
                </xsd:sequence>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>
Collapse Child Elements:
Name Type Min Occurs Max Occurs
message oval-sc:message 0 1
path unix-sc:path 0 1
filename unix-sc:filename 0 1
type unix-sc:type 0 1
group_id unix-sc:group_id 0 1
user_id unix-sc:user_id 0 1
a_time unix-sc:a_time 0 1
c_time unix-sc:c_time 0 1
m_time unix-sc:m_time 0 1
size unix-sc:size 0 1
suid unix-sc:suid 0 1
sgid unix-sc:sgid 0 1
sticky unix-sc:sticky 0 1
uread unix-sc:uread 0 1
uwrite unix-sc:uwrite 0 1
uexec unix-sc:uexec 0 1
gread unix-sc:gread 0 1
gwrite unix-sc:gwrite 0 1
gexec unix-sc:gexec 0 1
oread unix-sc:oread 0 1
owrite unix-sc:owrite 0 1
oexec unix-sc:oexec 0 1
Collapse Child Attributes:
Name Type Default Value Use
id oval-sc:id Required
status oval-sc:status exists Optional
Collapse Derivation Tree:
Collapse References:
oval-sc:item