Project

PSWriteOffice

PowerShell document automation across OfficeIMO's document, spreadsheet, presentation, PDF, Project, Access, EPUB, invoicing, and conversion engines.

Stars 654
Forks 82
Open issues 1
Total downloads 4,320,051
Release OfficeIMO-v3.5.3
Language: C# Updated: 2026-11-03
Cmdlet

Get-OfficeMarkdownNode

Module
PSWriteOffice
Inputs
OfficeIMO.Markdown.MarkdownDoc
Outputs
System.Management.Automation.PSObject OfficeIMO.Markdown.MarkdownObject

Gets the OfficeIMO.Markdown object tree from Markdown content.

Syntax

Get-OfficeMarkdownNode
[-AllowDataUrls <Boolean>]
[-AllowedUrlScheme <String[]>]
[-AllowMailtoUrls <Boolean>]
[-AllowProtocolRelativeUrls <Boolean>]
[-BaseUri <String>]
[-CaseSensitive]
[-DisallowFileUrls <Boolean>]
[-MaxDepth <Int32>]
[-MaxInputCharacters <Int32>]
[-NodeType <String>]
[-NormalizeInput <IntelligenceXTranscript|IntelligenceXTranscriptStrict|DocsLoose>]
[-Options <MarkdownReaderOptions>]
[-Path] <String>
[-Profile <OfficeIMO|CommonMark|GitHubFlavoredMarkdown|Portable>]
[-Raw]
[-RestrictUrlSchemes <Boolean>]
[<CommonParameters>]
#
Parameter set: Path
Get-OfficeMarkdownNode
[-AllowDataUrls <Boolean>]
[-AllowedUrlScheme <String[]>]
[-AllowMailtoUrls <Boolean>]
[-AllowProtocolRelativeUrls <Boolean>]
[-BaseUri <String>]
[-CaseSensitive]
[-DisallowFileUrls <Boolean>]
-Document <MarkdownDoc>
[-MaxDepth <Int32>]
[-MaxInputCharacters <Int32>]
[-NodeType <String>]
[-NormalizeInput <IntelligenceXTranscript|IntelligenceXTranscriptStrict|DocsLoose>]
[-Options <MarkdownReaderOptions>]
[-Profile <OfficeIMO|CommonMark|GitHubFlavoredMarkdown|Portable>]
[-Raw]
[-RestrictUrlSchemes <Boolean>]
[<CommonParameters>]
#
Parameter set: Document
Get-OfficeMarkdownNode
[-AllowDataUrls <Boolean>]
[-AllowedUrlScheme <String[]>]
[-AllowMailtoUrls <Boolean>]
[-AllowProtocolRelativeUrls <Boolean>]
[-BaseUri <String>]
[-CaseSensitive]
[-DisallowFileUrls <Boolean>]
[-MaxDepth <Int32>]
[-MaxInputCharacters <Int32>]
[-NodeType <String>]
[-NormalizeInput <IntelligenceXTranscript|IntelligenceXTranscriptStrict|DocsLoose>]
[-Options <MarkdownReaderOptions>]
[-Profile <OfficeIMO|CommonMark|GitHubFlavoredMarkdown|Portable>]
[-Raw]
[-RestrictUrlSchemes <Boolean>]
-Text <String>
[<CommonParameters>]
#
Parameter set: Text

Description

Returns PowerShell-friendly node records by default. Use -Raw to emit the underlying OfficeIMO nodes.

Examples

Inspect the Markdown object tree.

Get-OfficeMarkdownNode -Text "# Report`n`n## Summary"

Parses Markdown text and returns the document, block, and inline object tree.

Inspect a parsed document.

Get-OfficeMarkdown -Path .\README.md | Get-OfficeMarkdownNode -NodeType '*Table*'

Returns matching nodes from an existing Markdown document.

Parameters

-AllowDataUrls Boolean optional
Allow data URLs while parsing Markdown links and images.
-AllowedUrlScheme String[] optional
Allowed URL schemes when URL scheme restriction is enabled.
-AllowMailtoUrls Boolean optional
Allow mailto URLs while parsing Markdown links.
-AllowProtocolRelativeUrls Boolean optional
Allow protocol-relative URLs while parsing Markdown links and images.
-BaseUri String optional
Base URI used to resolve and restrict relative Markdown links and images.
-CaseSensitive SwitchParameter optional
Use case-sensitive matching for node type filters.
-DisallowFileUrls Boolean optional
Block file URLs while parsing Markdown links and images.
-MaxDepth Int32 optional
Maximum traversal depth. Zero returns only the document root.
-MaxInputCharacters Int32 optional
Maximum Markdown input length accepted by the reader.
-NodeType String optional
Optional wildcard pattern matched against node type names.
-NormalizeInput MarkdownInputNormalizationPreset optional
Applies a built-in Markdown input normalization preset before parsing.
Possible values: IntelligenceXTranscript, IntelligenceXTranscriptStrict, DocsLoose
-Options MarkdownReaderOptions optionalaliases: ReaderOptions
Optional reader options used when parsing path or text input.
-Path String requiredposition: 0aliases: FilePath, InputPathsets: Path
Path to the Markdown file.
-Profile MarkdownDialectProfile optional
Named reader profile used when Options is not supplied.
Possible values: OfficeIMO, CommonMark, GitHubFlavoredMarkdown, Portable
-Raw SwitchParameter optional
Emit raw OfficeIMO.Markdown node objects instead of PowerShell-friendly records.
-RestrictUrlSchemes Boolean optional
Restrict parsed URL schemes to the allow-list.
-Document MarkdownDoc requiredpipeline: True (ByValue)sets: Document
Markdown document to inspect.
-Text String requiredsets: Text
Markdown text to parse.

Common Parameters

This command supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable.

For more information, see about_CommonParameters.