DSCResources/MSFT_xSPFeature/MSFT_xSPFeature.schema.mof

/*
**Description**
 
This resource is used to make sure that a specific feature is either enabled or disabled at a given URL/scope.
The Ensure property will dictate if the feature should be on or off.
The name property is the name of the feature based on its folder name in the FEATURES folder in the SharePoint hive directory.
 
**Example**
 
    xSPFeature EnableViewFormsLockDown
    {
        Name = "ViewFormPagesLockDown"
        Url = "http://www.contoso.com"
        Ensure = "Present"
        Scope = "Site"
        PsDscRunAsCredential = $SetupAccuount
    }
*/
[ClassVersion("1.0.0.0"), FriendlyName("xSPFeature")]
class MSFT_xSPFeature : OMI_BaseResource
{
    [Key] string Name;
    [Required, ValueMap{"Farm","WebApplication","Site","Web"}, Values{"Farm","WebApplication","Site","Web"}] string FeatureScope;
    [Key] string Url;
    [Write, EmbeddedInstance("MSFT_Credential")] String InstallAccount;
    [Required, ValueMap{"Present","Absent"}, Values{"Present","Absent"}] string Ensure;
};