Работа с объяснениями для неструктурированных моделей обработки документов в PowerShell
Область применения: ✓ Обработка неструктурированных документов
Важно!
Командлеты PowerShell Microsoft Syntex и все остальные компоненты PnP являются инструментами с открытым кодом, поддерживаемыми активным сообществом, поддерживающим их. Со стороны официальных каналов поддержки Майкрософт отсутствуют соглашения об уровне обслуживания (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}