Praca z wyjaśnieniami dotyczącymi modeli przetwarzania dokumentów bez struktury w programie PowerShell
Dotyczy: √ Przetwarzanie dokumentów bez struktury
Ważna
Polecenia cmdlet programu PowerShell Microsoft Syntex i wszystkie inne składniki PnP są narzędziami typu open source wspieranymi przez aktywną społeczność zapewniającą im obsługę. Nie ma umowy SLA dla obsługi narzędzi typu open source z oficjalnych kanałów pomocy technicznej firmy Microsoft.
Niestandardowe szablony wyjaśnień są przechowywane na liście w centrum zawartości. Ponieważ te wyjaśnienia są przechowywane jako elementy listy, program PowerShell może służyć do interakcji z nimi.
Lista zapisanych wyjaśnień
W tym przykładzie pokazano, jak wyświetlić wszystkie niestandardowe szablony objaśnień, które zostały zapisane w określonym centrum zawartości.
$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
Tworzenie objaśnień listy fraz
W tym przykładzie pokazano, jak utworzyć niestandardowy szablon objaśnień listy fraz.
$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}
Tworzenie wyjaśnienia wyrażenia regularnego
W tym przykładzie pokazano, jak utworzyć niestandardowy szablon wyjaśnienia wyrażeń regularnych.
$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}
Tworzenie objaśnień listy fraz na podstawie zestawu terminów
W tym przykładzie pokazano, jak utworzyć niestandardowy szablon objaśnień listy fraz, pobierając wartości z zestawu terminów. Obejmuje to nazwy preferowanych terminów i wszelkie synonimy.
$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}