DSCResources/MSFT_SPOSearchManagedProperty/MSFT_SPOSearchManagedProperty.schema.mof

[ClassVersion("1.0.0.0"), FriendlyName("SPOSearchManagedProperty")]
class MSFT_SPOSearchManagedProperty : OMI_BaseResource
{
    [Key, Description("The Name of the Managed Property")] string Name;
    [Key, Description("The Type of the Managed Property"), ValueMap{"Text","Integer","Decimal","DateTime","YesNo","Double","Binary"}, Values{"Text","Integer","Decimal","DateTime","YesNo","Double","Binary"}] string Type;
    [Write, Description("Description of the Managed Property")] string Description;
    [Write, Description("Enables querying against the content of the managed property. The content of this managed property is included in the full-text index. For example, if the property is 'author', a simple query for 'Smith' returns items containing the word 'Smith' and items whose author property contains 'Smith'.")] boolean Searchable;
    [Write, Description("Defines which full-text index the Managed Property is stored in.")] string FullTextIndex;
    [Write, Description("Defines the context of a managed property within its full-text index.")] uint32 FullTextContext;
    [Write, Description("Enables querying against the specific Managed Property. The Managed Property field name must be included in the query, either specified in the query itself or included in the query programmatically. If the Managed Property is 'author', the query must contain 'author:Smith'.")] boolean Queryable;
    [Write, Description("Enables the content of this managed property to be returned in search results. Enable this setting for managed properties that are relevant to present in search results.")] boolean Retrievable;
    [Write, Description("Allow multiple values of the same type in this managed property. For example, if this is the 'author' managed property, and a document has multiple authors, each author name will be stored as a separate value in this managed property.")] boolean AllowMultipleValues;
    [Write, Description("Yes: Enables using the property as a refiner for search results in the front end. You must manually configure the refiner in the web part. Yes - latent: Enables switching refinable to active later, without having to do a full re-crawl when you switch. Both options require a full crawl to take effect."), ValueMap{"No", "Yes - latent", "Yes"}, Values{"No", "Yes - latent", "Yes"}] string Refinable;
    [Write, Description("Yes: Enables sorting the result set based on the property before the result set is returned. Use for example for large result sets that cannot be sorted and retrieved at the same time. Yes - latent: Enables switching sortable to active later, without having to do a full re-crawl when you switch. Both options require a full crawl to take effect."), ValueMap{"No", "Yes - latent", "Yes"}, Values{"No", "Yes - latent", "Yes"}] string Sortable;
    [Write, Description("Enables this managed property to be returned for queries executed by anonymous users. Enable this setting for managed properties that do not contain sensitive information and are appropriate for anonymous users to view.")] boolean Safe;
    [Write, Description("Define an alias for a managed property if you want to use the alias instead of the managed property name in queries and in search results. Use the original managed property and not the alias to map to a crawled property. Use an alias if you don't want to or don't have permission to create a new managed property.")] string Aliases[];
    [Write, Description("Enable to return results independent of letter casing and diacritics(for example accented characters) used in the query.")] boolean TokenNormalization;
    [Write, Description("By default, search returns partial matches between queries against this managed property and its content. Select Complete Matching for search to return exact matches instead. If a managed property 'Title' contains 'Contoso Sites', only the query Title: 'Contoso Sites' will give a result.")] boolean CompleteMatching;
    [Write, Description("By default, search depends on language when it breaks queries and content into parts (tokenization). Select language neutral tokenization if you have multilingual content and this managed property contains tags that are based on metadata term sets or other identifiers.")] boolean LanguageNeutralTokenization;
    [Write, Description("By default, search tokenizes queries coarser than content. If a managed property 'ID' contains the string '1-23-456#7', and you query ID:'1-23', you might not get a partial match because search didn't break the query into small enough parts. Consider selecting finer query tokenization if the content of this managed property contains separators such as dots and dashes. Finer query tokenization makes queries against this managed property slower.")] boolean FinerQueryTokenization;
    [Write, Description("Names of the crawled properties that are mapped to this managed property")] string MappedCrawledProperties[];
    [Write, Description("Enables the system to extract company name entities from the managed property when crawling new or updated items. Afterwards, the extracted entities can be used to set up refiners in the web part.")] boolean CompanyNameExtraction;
    [Write, Description("Present ensures the Search Managed Property exists."), ValueMap{"Present"}, Values{"Present"}] string Ensure;
    [Write, Description("Credentials of the account to authenticate with."), EmbeddedInstance("MSFT_Credential")] string Credential;
    [Write, Description("Id of the Azure Active Directory application to authenticate with.")] String ApplicationId;
    [Write, Description("Secret of the Azure Active Directory application to authenticate with."), EmbeddedInstance("MSFT_Credential")] String ApplicationSecret;
    [Write, Description("Name of the Azure Active Directory tenant used for authentication. Format contoso.onmicrosoft.com")] String TenantId;
    [Write, Description("Username can be made up to anything but password will be used for certificatePassword"), EmbeddedInstance("MSFT_Credential")] String CertificatePassword;
    [Write, Description("Path to certificate used in service principal usually a PFX file.")] String CertificatePath;
    [Write, Description("Thumbprint of the Azure Active Directory application's authentication certificate to use for authentication.")] String CertificateThumbprint;
    [Write, Description("Managed ID being used for authentication.")] Boolean ManagedIdentity;
};