[This topic is pre-release documentation and is subject to change in future releases. Blank topics are included as placeholders.]

Represents a data source module type definition in a management pack.

Schema Hierarchy

ManagementPack
  TypeDefinitions
    ModuleTypes
      DataSourceModuleType

Syntax

Xml
<DataSourceModuleType ID=”Company.Product.DataSourceModuleTypeID” Comment=”Comment” Accessibility=”Public/Internal” RunAs=”SecureReferenceID” Batching=”True/False”>
   <Configuration>…</Configuration>
   <OverrideableParameters>…</OverrideableParameters>
   <ModuleImplementation>…</ModuleImplementation>
   <OutputType>DataType</OutputType>
</DataSourceModuleType>

Attributes and Elements

The following sections describe attributes, child elements, and the parent element of the DataSourceModuleType element.

Attributes

Attribute Description

ID

Required attribute. Represents the identity of the element. To learn how to identify your element in a management pack, see Element Identity and Namespace Conventions.

Comment

Optional attribute. Represents commentary by the management pack author.

Accessibility

Required attribute. Defines the visibility of the module type definition.

RunAs

Optional attribute. Refers to a SecureReference type ID. All instances of this module type definition will run under the credentials set for the SecureReference ID. When not specified, the module will run under the default action account.

Batching

Optional attribute. Indicates whether or not the module type can accept a batch of input data at one time. Not relevant for composite module types. Default value is false.

Accessibility Attribute Values

Value Description

Public

Indicates that the module type definition is visible to external management packs.

Internal

Indicates that the module type definition is not visible to external management packs.

Child Elements

Element Description

Configuration (DataSourceModuleType)

Required element. Represents the parameters for a monitor or module type definition in XSD schema.

OverrideableParameters (DataSourceModuleType)

Optional element. Contains any overrideable configuration parameters in a monitor or module type definition.

ModuleImplementation (DataSourceModuleType)

Required element. Defines the implementation type for native or managed module type definitions and defines the composite elements for composite module type definitions.

OutputType (DataSourceModuleType)

Required element. Defines the output data type of a module type definition.

Parent Elements

Element Description

ModuleTypes

Contains module type definitions in a management pack.

Remarks

Data source module types have no input and a single output. Because they take no input, they are usually the first module in any workflow.

For more information about DataSource modules, see DataSource (DataSourceModuleType).

Example

The following sample shows two DataSourceModuleType elements. Both are defined in the Microsoft.Windows.Library management pack. The Microsoft.Windows.BaseEventProvider is implemented in native code and is used inside the composite data source module type element Microsoft.Windows.EventCollector. To offer filtering through a condition detection module, the Microsoft.Windows.EventCollector module wraps the functionality of Microsoft.Windows.BaseEventProvider.

  Copy Code
<DataSourceModuleType ID="Microsoft.Windows.BaseEventProvider" Accessibility="Public">
  <Configuration>
	<IncludeSchemaTypes>
	<SchemaType>Microsoft.Windows.ComputerNameSchema</SchemaType>
	</IncludeSchemaTypes>
	<xsd:element name="ComputerName" type="ComputerNameType" minOccurs="0" maxOccurs="1" />
	<xsd:element name="LogName" type="xsd:string" />
	<xsd:element name="AllowProxying" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
  </Configuration>
  <ModuleImplementation>
	<Native>
	<ClassID>B98BD20C-3CC8-4AFE-9F68-5702C74D73DB</ClassID>
	</Native>
  </ModuleImplementation>
  <OutputType>Microsoft.Windows.EventData</OutputType>
</DataSourceModuleType>


<DataSourceModuleType ID="Microsoft.Windows.EventCollector" Accessibility="Public">
  <Configuration>
	<IncludeSchemaTypes>
	<SchemaType>System!System.ExpressionEvaluatorSchema</SchemaType>
	<SchemaType>Microsoft.Windows.ComputerNameSchema</SchemaType>
	</IncludeSchemaTypes>
	<xsd:element name="ComputerName" type="ComputerNameType" minOccurs="0" maxOccurs="1" />
	<xsd:element name="LogName" type="xsd:string" />
	<xsd:element name="AllowProxying" type="xsd:boolean" />
	<xsd:element name="Expression" type="ExpressionType" />
  </Configuration>
  <OverrideableParameters>
	<OverrideableParameter ID="AllowProxying" Selector="$Config/AllowProxying$" ParameterType="bool" />
  </OverrideableParameters>
  <ModuleImplementation>
	<Composite>
	<MemberModules>
		<DataSource TypeID="Microsoft.Windows.BaseEventProvider" ID="Provider">
		<ComputerName>$Config/ComputerName$</ComputerName>
		<LogName>$Config/LogName$</LogName>
		<AllowProxying>$Config/AllowProxying$</AllowProxying>
		</DataSource>
		<ConditionDetection TypeID="System!System.ExpressionFilter" ID="Filter">
		<Expression>$Config/Expression$</Expression>
		</ConditionDetection>
	</MemberModules>
	<Composition>
		<Node ID="Filter">
		<Node ID="Provider" />
		</Node>
	</Composition>
	</Composite>
  </ModuleImplementation>
  <OutputType>System!System.Event.Data</OutputType>
</DataSourceModuleType>

See Also