PowerShell で非構造化ドキュメント処理モデルの説明を操作する
適用対象: ✓ 非構造化ドキュメント処理
重要
Microsoft Syntex PowerShell コマンドレットとその他のすべての PnP コンポーネントは、アクティブなコミュニティがサポートするオープンソース ツールです。 公式の Microsoft サポート チャネルのオープン ソース ツールのサポート用 SLA ではありません。
カスタム説明テンプレートは、コンテンツ センター内のリストに格納されます。 これらの説明はリスト アイテムとして格納されるため、PowerShell を使用して操作できます。
保存された説明を一覧表示する
この例では、特定のコンテンツ センターに保存されているすべてのカスタム説明テンプレートを表示する方法を示します。
$contentCenterURL = "https://contoso.sharepoint.com/sites/yourContentCenter"
# Connect to content center
Connect-PnPOnline -url $contentCenterURL
# Load explanation templates list and items
$explanationTemplatesList = Get-PnPList -Identity "/Explanations"
$explanations = Get-PnPListItem -List $explanationTemplatesList -Fields "Id", "Title", "ExplanationName", "ExplanationType", "ExplanationDescription","ExplanationContent"
# Extract explanation components
$explanationValues = $explanations.fieldvalues
$explanationOutput = @()
foreach ($explanation in $explanationValues) {
$content = $explanation.ExplanationContent
$content = $content.replace('false','"false"')
$content = $content.replace('true','"true"')
$contentArray = $content | ConvertFrom-Json
$output = New-Object -TypeName PSObject
Add-Member -InputObject $output -MemberType NoteProperty -Name "Explanation Name" -Value $explanation.ExplanationName
Add-Member -InputObject $output -MemberType NoteProperty -Name "Explanation Description" -Value $explanation.ExplanationDescription
Add-Member -InputObject $output -MemberType NoteProperty -Name "Explanation Type" -Value $contentArray.kind
Add-Member -InputObject $output -MemberType NoteProperty -Name "RegEx Pattern" -Value $contentArray.pattern
Add-Member -InputObject $output -MemberType NoteProperty -Name "Phrase List" -Value $contentArray.ngrams
Add-Member -InputObject $output -MemberType NoteProperty -Name "Case Sensitive" -Value $contentArray.caseSensitive
Add-Member -InputObject $output -MemberType NoteProperty -Name "Ignore Digit Identity" -Value $contentArray.ignoreDigitIdentity
Add-Member -InputObject $output -MemberType NoteProperty -Name "Ignore Letter Identity" -Value $contentArray.ignoreLetterIdentity
$explanationOutput += $output
}
$explanationOutput
フレーズ リストの説明を作成する
この例では、カスタム フレーズ リストの説明テンプレートを作成する方法を示します。
$contentCenterURL = "https://contoso.sharepoint.com/sites/yourContentCenter"
$explanationName = "Phrase Explanation A"
$explanationDescription = "This is my explanation"
$phrases = "Phrase 1", "Phrase 2"
$caseSensitive = $false
$ignoreDigitIdentity= $false
$ignoreLetterIdentity = $false
# Connect to content center
Connect-PnPOnline -url $contentCenterURL
# Load explanation templates list
$explanationTemplatesList = Get-PnPList -Identity "/Explanations"
#Generate GUID for explanation
$guid = New-Guid
#Format phrase list
$phrases = $phrases -join "`",`""
#Convert booleans to lower case strings
$caseSensitive = ($caseSensitive.ToString()).ToLower()
$ignoreDigitIdentity= ($ignoreDigitIdentity.ToString()).ToLower()
$ignoreLetterIdentity = ($ignoreLetterIdentity.ToString()).ToLower()
# Build explanation content
$explanationContent = "{`"id`":`"$guid`",`"kind`":`"dictionaryFeature`",`"name`":`"$explanationName`",`"active`":true,`"nGrams`":[`"$phrases`"],`"caseSensitive`":$caseSensitive,`"ignoreDigitIdentity`":$ignoreDigitIdentity,`"ignoreLetterIdentity`":$ignoreLetterIdentity}"
# Create item in explanation list
Add-PnPListItem -List $explanationTemplatesList -Values @{"Title"= $explanationName; "ExplanationName" = $explanationName; "ExplanationDescription" = $explanationDescription; "ExplanationContent" = $explanationContent}
正規表現の説明を作成する
この例では、カスタム正規表現の説明テンプレートを作成する方法を示します。
$contentCenterURL = "https://contoso.sharepoint.com/sites/yourContentCenter"
$explanationName = "RegEx Explanation A"
$explanationDescription = "This is my explanation"
$pattern = "\b(https?):\/\/\S+"
# Connect to content center
Connect-PnPOnline -url $contentCenterURL
# Load explanation templates list
$explanationTemplatesList = Get-PnPList -Identity "/Explanations"
#Generate GUID for explanation
$guid = New-Guid
# Build explanation content
$pattern = $pattern.Replace('\','\\')
$explanationContent = "{`"id`":`"$guid`",`"kind`":`"regexFeature`",`"name`":`"$explanationName`",`"active`":true,`"pattern`":`"$pattern`"}"
# Create item in explanation list
Add-PnPListItem -List $explanationTemplatesList -Values @{"Title"= $explanationName; "ExplanationName" = $explanationName; "ExplanationDescription" = $explanationDescription; "ExplanationContent" = $explanationContent}
用語セットに基づいてフレーズ リストの説明を作成する
この例では、用語セットから値を取得して、カスタム フレーズ リストの説明テンプレートを作成する方法を示します。 これには、優先する用語名と任意のシノニムが含まれます。
$contentCenterURL = "https://contoso.sharepoint.com/sites/yourContentCenter"
$termSetName = "Terms"
$termGroupName = "GroupA"
$explanationName = "MMS Explanation A"
$explanationDescription = "This is my explanation"
$caseSensitive = $false
$ignoreDigitIdentity= $false
$ignoreLetterIdentity = $false
# Connect to content center
Connect-PnPOnline -url $contentCenterURL
# Load explanation templates list
$explanationTemplatesList = Get-PnPList -Identity "/Explanations"
#Generate GUID for explanation
$guid = New-Guid
#Get term set, including preferred labels and synonyms
$terms = Get-PnPTerm -TermGroup $termGroupName -TermSet $termSetName -Includes Labels
$phrases = $terms.labels.value
#Format phrase list
$phrases = $phrases -join "`",`""
#Convert booleans to lower case strings
$caseSensitive = ($caseSensitive.ToString()).ToLower()
$ignoreDigitIdentity= ($ignoreDigitIdentity.ToString()).ToLower()
$ignoreLetterIdentity = ($ignoreLetterIdentity.ToString()).ToLower()
# Build explanation content
$explanationContent = "{`"id`":`"$guid`",`"kind`":`"dictionaryFeature`",`"name`":`"$explanationName`",`"active`":true,`"nGrams`":[`"$phrases`"],`"caseSensitive`":$caseSensitive,`"ignoreDigitIdentity`":$ignoreDigitIdentity,`"ignoreLetterIdentity`":$ignoreLetterIdentity}"
# Create item in explanation list
Add-PnPListItem -List $explanationTemplatesList -Values @{"Title"= $explanationName; "ExplanationName" = $explanationName; "ExplanationDescription" = $explanationDescription; "ExplanationContent" = $explanationContent}