<xsd:element name="smf_item" substitutionGroup="oval-sc:item">
<xsd:annotation>
<xsd:documentation>The smf_item is used to hold information related to service management facility controlled services</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:complexContent>
<xsd:extension base="oval-sc:ItemType">
<xsd:sequence>
<xsd:element name="fmri" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1">
<xsd:annotation>
<xsd:documentation>The FMRI (Fault Managed Resource Identifier) entity holds the identifier associated with a service. Services managed by SMF are assigned FMRI URIs prefixed with the scheme name "svc". FMRIs used by SMF can be expressed in three ways: first as an absolute path including a location path such as "localhost" (eg svc://localhost/system/system-log:default), second as a path relative to the local machine (eg svc:/system/system-log:default), and third as simply the service identifier with the string prefixes implied (eg system/system-log:default). For OVAL, the absolute path version (first choice) should be used.</xsd:documentation>
<xsd:appinfo>
<sch:pattern id="fmriitembase" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
<sch:rule context="sol-sc:smf_item/sol-sc:fmri">
<sch:assert test="not(@datatype) or @datatype='string'">item <sch:value-of select="../@id" /> - datatype attribute for the fmri entity of a smf_item should be 'string'</sch:assert>
</sch:rule>
</sch:pattern>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="service_name" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1">
<xsd:annotation>
<xsd:documentation>The service_name entity is usually an abbreviated form of the FMRI. In the example svc://localhost/system/system-log:default, the name would be system-log.</xsd:documentation>
<xsd:appinfo>
<sch:pattern id="srvnameitembase" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
<sch:rule context="sol-sc:smf_item/sol-sc:service_name">
<sch:assert test="not(@datatype) or @datatype='string'">item <sch:value-of select="../@id" /> - datatype attribute for the service_name entity of a smf_item should be 'string'</sch:assert>
</sch:rule>
</sch:pattern>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="service_state" type="sol-sc:EntityItemSmfServiceStateType" minOccurs="0" maxOccurs="1">
<xsd:annotation>
<xsd:documentation>The service_state entity describes the state that the service is in. Each service instance is always in a well-defined state based on its dependencies, the results of the execution of its methods, and its potential receipt of events from the contracts filesystem. The service_state values are UNINITIALIZED, OFFLINE, ONLINE, DEGRADED, MAINTENANCE, DISABLED, and LEGACY-RUN.</xsd:documentation>
<xsd:appinfo>
<sch:pattern id="srvstateitembase" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
<sch:rule context="sol-sc:smf_item/sol-sc:service_state">
<sch:assert test="not(@datatype) or @datatype='string'">item <sch:value-of select="../@id" /> - datatype attribute for the service_state entity of a smf_item should be 'string'</sch:assert>
</sch:rule>
</sch:pattern>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="protocol" type="sol-sc:EntityItemSmfProtocolType" minOccurs="0" maxOccurs="1">
<xsd:annotation>
<xsd:documentation>The protocol entity describes the protocol supported by the service. Possible values are tcp, tcp6, tcp6only, udp, udp6, and udp6only</xsd:documentation>
<xsd:appinfo>
<sch:pattern id="protocolitembase" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
<sch:rule context="sol-sc:smf_item/sol-sc:protocol">
<sch:assert test="not(@datatype) or @datatype='string'">item <sch:value-of select="../@id" /> - datatype attribute for the protocol entity of a smf_item should be 'string'</sch:assert>
</sch:rule>
</sch:pattern>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="server_executable" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1">
<xsd:annotation>
<xsd:documentation>The entity server_executable is a string representing the listening daemon on the server side. An example being 'svcprop ftp' which might show 'inetd/start/exec astring /usr/sbin/in.ftpd\ -a'</xsd:documentation>
<xsd:appinfo>
<sch:pattern id="srvexeitembase" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
<sch:rule context="sol-sc:smf_item/sol-sc:server_executable">
<sch:assert test="not(@datatype) or @datatype='string'">item <sch:value-of select="../@id" /> - datatype attribute for the server_executable entity of a smf_item should be 'string'</sch:assert>
</sch:rule>
</sch:pattern>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="server_arguements" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1">
<xsd:annotation>
<xsd:documentation>The server_arguments entity describes the parameters that are passed to the service.</xsd:documentation>
<xsd:appinfo>
<sch:pattern id="srvargsitembase" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
<sch:rule context="sol-sc:smf_item/sol-sc:server_arguements">
<sch:assert test="not(@datatype) or @datatype='string'">item <sch:value-of select="../@id" /> - datatype attribute for the server_arguements entity of a smf_item should be 'string'</sch:assert>
</sch:rule>
</sch:pattern>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="exec_as_user" type="oval-sc:EntityItemStringType" minOccurs="0" maxOccurs="1">
<xsd:annotation>
<xsd:documentation>The exec_as_user entity is a string pulled from svcprop in the following format: inetd_start/user astring root</xsd:documentation>
<xsd:appinfo>
<sch:pattern id="execasuseritembase" xmlns:sch="http://purl.oclc.org/dsdl/schematron">
<sch:rule context="sol-sc:smf_item/sol-sc:exec_as_user">
<sch:assert test="not(@datatype) or @datatype='string'">item <sch:value-of select="../@id" /> - datatype attribute for the exec_as_user entity of a smf_item should be 'string'</sch:assert>
</sch:rule>
</sch:pattern>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
|