@prefix schema: <https://schema.org/> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ks: <https://comcomponent.com/vocab/> .

<https://comcomponent.com/blog/powershell-output-streams-logging/#article>
    schema:about <https://comcomponent.com/knowledge/powershell-output-stream/>, <https://comcomponent.com/knowledge/write-host/> ;
    schema:mentions <https://comcomponent.com/knowledge/powershell-success-stream/>, <https://comcomponent.com/knowledge/write-output/>, <https://comcomponent.com/knowledge/write-verbose/>, <https://comcomponent.com/knowledge/write-information/>, <https://comcomponent.com/knowledge/write-warning/>, <https://comcomponent.com/knowledge/write-debug/>, <https://comcomponent.com/knowledge/write-error/>, <https://comcomponent.com/knowledge/write-progress/>, <https://comcomponent.com/knowledge/cmdletbinding/>, <https://comcomponent.com/knowledge/common-parameters/>, <https://comcomponent.com/knowledge/structured-logging/>, <https://comcomponent.com/knowledge/start-transcript/>, <https://comcomponent.com/knowledge/function-output-leak/>, <https://comcomponent.com/knowledge/null-assignment-suppression/> .

<https://comcomponent.com/knowledge/powershell-output-stream/> a skos:Concept ;
    skos:prefLabel "PowerShellの出力ストリーム"@ja ;
    skos:definition "PowerShellが持つ成功・エラー・警告・詳細・デバッグ・情報の6種類の出力の通り道の総称で、それぞれ番号でリダイレクトできる。"@ja ;
    skos:altLabel "Output Streams" ;
    skos:altLabel "成功・エラー・警告・詳細・デバッグ・情報ストリーム"@ja .

<https://comcomponent.com/knowledge/write-host/> a skos:Concept ;
    skos:prefLabel "Write-Host"@ja ;
    skos:definition "PowerShell 5.0以降はWrite-Informationのラッパーとして情報ストリームへ出力するコマンドレットで、$InformationPreferenceや-InformationActionの影響を受けず(唯一の例外は-InformationAction Ignore)既定でも常に画面に表示される。"@ja ;
    skos:altLabel "ホストへの表示"@ja ;
    ks:notRecommendedFor <https://comcomponent.com/knowledge/powershell-success-stream/> .

<https://comcomponent.com/knowledge/write-output/> a skos:Concept ;
    skos:prefLabel "Write-Output"@ja ;
    skos:definition "オブジェクトを成功ストリーム(パイプライン)へ送るコマンドレットで、明示的に呼ばなくても式の結果は同じように出力される。"@ja ;
    skos:altLabel "裸の出力"@ja ;
    ks:uses <https://comcomponent.com/knowledge/powershell-success-stream/> .

<https://comcomponent.com/knowledge/powershell-success-stream/> a skos:Concept ;
    skos:prefLabel "成功ストリーム"@ja ;
    skos:definition "6つの出力ストリームのうち、後続のパイプラインや変数代入へ渡る唯一のストリーム(1番)で、Write-Outputまたは裸の出力がここに書き込む。"@ja ;
    skos:altLabel "Success Stream" ;
    skos:altLabel "ストリーム1"@ja ;
    skos:altLabel "パイプライン出力"@ja .

<https://comcomponent.com/knowledge/write-verbose/> a skos:Concept ;
    skos:prefLabel "Write-Verbose"@ja ;
    skos:definition "詳細(4番)ストリームへメッセージを書き込むコマンドレットで、既定では表示されず呼び出し側が-Verboseを指定したときだけ表示される。"@ja ;
    skos:altLabel "詳細ストリームへの書き込み"@ja ;
    ks:uses <https://comcomponent.com/knowledge/powershell-output-stream/> ;
    ks:configuredBy <https://comcomponent.com/knowledge/common-parameters/> .

<https://comcomponent.com/knowledge/write-debug/> a skos:Concept ;
    skos:prefLabel "Write-Debug"@ja ;
    skos:definition "デバッグ(5番)ストリームへメッセージを書き込むコマンドレットで、既定では表示されず呼び出し側が-Debugを指定したときだけ表示される。"@ja ;
    skos:altLabel "デバッグストリームへの書き込み"@ja ;
    ks:uses <https://comcomponent.com/knowledge/powershell-output-stream/> ;
    ks:configuredBy <https://comcomponent.com/knowledge/common-parameters/> .

<https://comcomponent.com/knowledge/write-warning/> a skos:Concept ;
    skos:prefLabel "Write-Warning"@ja ;
    skos:definition "警告(3番)ストリームへメッセージを書き込むコマンドレットで、既定で表示され、-WarningActionや-WarningVariableで呼び出し側から制御・捕捉できる。"@ja ;
    skos:altLabel "警告ストリームへの書き込み"@ja ;
    ks:uses <https://comcomponent.com/knowledge/powershell-output-stream/> ;
    ks:configuredBy <https://comcomponent.com/knowledge/common-parameters/> .

<https://comcomponent.com/knowledge/write-information/> a skos:Concept ;
    skos:prefLabel "Write-Information"@ja ;
    skos:definition "情報(6番)ストリームへ明示的に書き込むコマンドレットで、-Tagsによる分類ができ、既定では表示されないが-InformationVariableなどで捕捉できる。"@ja ;
    skos:altLabel "情報ストリームへの明示的な書き込み"@ja ;
    ks:uses <https://comcomponent.com/knowledge/powershell-output-stream/> ;
    ks:configuredBy <https://comcomponent.com/knowledge/common-parameters/> ;
    ks:recommendedFor <https://comcomponent.com/knowledge/structured-logging/> .

<https://comcomponent.com/knowledge/write-error/> a skos:Concept ;
    skos:prefLabel "Write-Error"@ja ;
    skos:definition "エラー(2番)ストリームへErrorRecordを書き込むコマンドレットで、-ErrorActionや-ErrorVariableで呼び出し側から制御・捕捉できる。"@ja ;
    skos:altLabel "エラーストリームへの書き込み"@ja ;
    ks:uses <https://comcomponent.com/knowledge/powershell-output-stream/> ;
    ks:configuredBy <https://comcomponent.com/knowledge/common-parameters/> .

<https://comcomponent.com/knowledge/cmdletbinding/> a skos:Concept ;
    skos:prefLabel "[CmdletBinding()]属性"@ja ;
    skos:definition "関数やスクリプトに付けることで、コンパイル済みコマンドレットと同様の「高度な関数」として動作させ、共通パラメーターや$PSCmdletを自動的に使えるようにするPowerShellの属性。"@ja ;
    skos:altLabel "CmdletBindingAttribute" ;
    skos:altLabel "高度な関数"@ja ;
    ks:implements <https://comcomponent.com/knowledge/common-parameters/> .

<https://comcomponent.com/knowledge/common-parameters/> a skos:Concept ;
    skos:prefLabel "共通パラメーター"@ja ;
    skos:definition "[CmdletBinding()]を付けた高度な関数に自動的に追加される、-Verbose・-Debug・-WarningAction・-InformationAction・-ErrorActionなどのパラメーター群。"@ja ;
    skos:altLabel "Common Parameters" .

<https://comcomponent.com/knowledge/function-output-leak/> a skos:Concept ;
    skos:prefLabel "関数の戻り値の汚染"@ja ;
    skos:definition "PowerShellの関数はreturnの有無にかかわらず内部で出力されたすべてのオブジェクトを返すため、戻り値のあるコマンドやメソッドを呼び捨てにするとその値が関数の戻り値に混ざってしまう現象。"@ja ;
    skos:altLabel "戻り値への意図しない出力の混入"@ja .

<https://comcomponent.com/knowledge/null-assignment-suppression/> a skos:Concept ;
    skos:prefLabel "$null=…による出力の抑止"@ja ;
    skos:definition "不要な戻り値を$null = ...への代入で捨てる書き方で、Out-Nullへのパイプや[void]キャストより軽量な抑止手段とされる。"@ja ;
    skos:altLabel "Null Assignment Suppression" ;
    skos:altLabel "Out-Nullによる抑止"@ja ;
    ks:mitigates <https://comcomponent.com/knowledge/function-output-leak/> .

<https://comcomponent.com/knowledge/structured-logging/> a skos:Concept ;
    skos:prefLabel "構造化ログ(structured log)"@ja ;
    skos:definition "文章ではなくkey=valueのように項目を決めて出力し、あとで機械的に集計できるログの形式。"@ja ;
    skos:altLabel "Structured Logging" .

<https://comcomponent.com/knowledge/write-progress/> a skos:Concept ;
    skos:prefLabel "Write-Progress"@ja ;
    skos:definition "コマンドの進行状況をホストの進捗表示として出すコマンドレットで、リダイレクト可能なデータストリームではなく、ログには残せない。"@ja ;
    skos:altLabel "進捗表示"@ja ;
    ks:notRecommendedFor <https://comcomponent.com/knowledge/structured-logging/> .

<https://comcomponent.com/knowledge/start-transcript/> a skos:Concept ;
    skos:prefLabel "Start-Transcript"@ja ;
    skos:definition "セッションのコマンドとコンソール出力をまるごとテキストファイルに記録するコマンドレットで、Stop-Transcriptで停止する。"@ja ;
    skos:altLabel "トランスクリプト記録"@ja ;
    ks:uses <https://comcomponent.com/knowledge/powershell-output-stream/> .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/write-output/> ;
    rdf:predicate ks:uses ;
    rdf:object <https://comcomponent.com/knowledge/powershell-success-stream/> ;
    schema:description "Write-Output(または裸の出力)は成功ストリームへオブジェクトを送り込み、これだけが後続のパイプラインや変数代入へ渡る"@ja ;
    ks:evidence <https://learn.microsoft.com/powershell/module/microsoft.powershell.utility/write-output> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/write-host/> ;
    rdf:predicate ks:notRecommendedFor ;
    rdf:object <https://comcomponent.com/knowledge/powershell-success-stream/> ;
    schema:description "Write-Hostは情報ストリームへの表示専用で、成功ストリーム経由で値をパイプラインへ渡す用途には使えない"@ja ;
    ks:evidence <https://learn.microsoft.com/powershell/module/microsoft.powershell.utility/write-host> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/write-host/> ;
    rdf:predicate ks:uses ;
    rdf:object <https://comcomponent.com/knowledge/powershell-output-stream/> ;
    schema:description "PowerShell 5.0以降のWrite-HostはWrite-Informationのラッパーとして情報ストリーム(6番)への書き込みで実装されており、6>や-InformationVariableで捕捉できる"@ja ;
    ks:evidence <https://learn.microsoft.com/powershell/module/microsoft.powershell.utility/write-host> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "context-dependent" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/write-verbose/> ;
    rdf:predicate ks:uses ;
    rdf:object <https://comcomponent.com/knowledge/powershell-output-stream/> ;
    schema:description "Write-Verboseは詳細(4番)ストリームへ書き込む"@ja ;
    ks:evidence <https://learn.microsoft.com/powershell/module/microsoft.powershell.utility/write-verbose> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/write-debug/> ;
    rdf:predicate ks:uses ;
    rdf:object <https://comcomponent.com/knowledge/powershell-output-stream/> ;
    schema:description "Write-Debugはデバッグ(5番)ストリームへ書き込む"@ja ;
    ks:evidence <https://learn.microsoft.com/powershell/module/microsoft.powershell.utility/write-debug> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/write-warning/> ;
    rdf:predicate ks:uses ;
    rdf:object <https://comcomponent.com/knowledge/powershell-output-stream/> ;
    schema:description "Write-Warningは警告(3番)ストリームへ書き込む"@ja ;
    ks:evidence <https://learn.microsoft.com/powershell/module/microsoft.powershell.utility/write-warning> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/write-information/> ;
    rdf:predicate ks:uses ;
    rdf:object <https://comcomponent.com/knowledge/powershell-output-stream/> ;
    schema:description "Write-Informationは情報(6番)ストリームへ書き込む"@ja ;
    ks:evidence <https://learn.microsoft.com/powershell/module/microsoft.powershell.utility/write-information> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/write-error/> ;
    rdf:predicate ks:uses ;
    rdf:object <https://comcomponent.com/knowledge/powershell-output-stream/> ;
    schema:description "Write-Errorはエラー(2番)ストリームへ書き込む"@ja ;
    ks:evidence <https://learn.microsoft.com/powershell/module/microsoft.powershell.utility/write-error> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/write-verbose/> ;
    rdf:predicate ks:requires ;
    rdf:object <https://comcomponent.com/knowledge/cmdletbinding/> ;
    schema:description "Write-Verboseの表示を呼び出し側が-Verboseで切り替えられるようにするには、それを使う関数に[CmdletBinding()]を付ける必要がある"@ja ;
    ks:evidence <https://learn.microsoft.com/powershell/module/microsoft.powershell.core/about/about_functions_cmdletbindingattribute> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "context-dependent" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/cmdletbinding/> ;
    rdf:predicate ks:implements ;
    rdf:object <https://comcomponent.com/knowledge/common-parameters/> ;
    schema:description "[CmdletBinding()]を付けた関数は共通パラメーターの実装を担い、-Verboseなどが自動的に使えるようになる"@ja ;
    ks:evidence <https://learn.microsoft.com/powershell/module/microsoft.powershell.core/about/about_commonparameters> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/write-warning/> ;
    rdf:predicate ks:configuredBy ;
    rdf:object <https://comcomponent.com/knowledge/common-parameters/> ;
    schema:description "Write-Warningの表示可否は共通パラメーターの-WarningActionで呼び出し側から構成できる"@ja ;
    ks:evidence <https://learn.microsoft.com/powershell/module/microsoft.powershell.core/about/about_commonparameters> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/write-verbose/> ;
    rdf:predicate ks:configuredBy ;
    rdf:object <https://comcomponent.com/knowledge/common-parameters/> ;
    schema:description "Write-Verboseの表示可否は共通パラメーターの-Verboseで呼び出し側から構成できる"@ja ;
    ks:evidence <https://learn.microsoft.com/powershell/module/microsoft.powershell.core/about/about_commonparameters> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/write-debug/> ;
    rdf:predicate ks:configuredBy ;
    rdf:object <https://comcomponent.com/knowledge/common-parameters/> ;
    schema:description "Write-Debugの表示可否は共通パラメーターの-Debugで呼び出し側から構成できる"@ja ;
    ks:evidence <https://learn.microsoft.com/powershell/module/microsoft.powershell.core/about/about_commonparameters> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/write-information/> ;
    rdf:predicate ks:configuredBy ;
    rdf:object <https://comcomponent.com/knowledge/common-parameters/> ;
    schema:description "Write-Informationは共通パラメーターの-InformationActionや-InformationVariableで制御・捕捉できる"@ja ;
    ks:evidence <https://learn.microsoft.com/powershell/module/microsoft.powershell.core/about/about_commonparameters> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/write-error/> ;
    rdf:predicate ks:configuredBy ;
    rdf:object <https://comcomponent.com/knowledge/common-parameters/> ;
    schema:description "Write-Errorは共通パラメーターの-ErrorActionや-ErrorVariableで制御・捕捉できる"@ja ;
    ks:evidence <https://learn.microsoft.com/powershell/module/microsoft.powershell.core/about/about_commonparameters> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/powershell-success-stream/> ;
    rdf:predicate ks:mayCause ;
    rdf:object <https://comcomponent.com/knowledge/function-output-leak/> ;
    schema:description "New-Itemなど戻り値を持つコマンドを呼び捨てにすると、その戻り値が成功ストリームに流れ込み関数の戻り値に混ざる"@ja ;
    ks:evidence <https://learn.microsoft.com/powershell/module/microsoft.powershell.core/about/about_return> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "context-dependent" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/null-assignment-suppression/> ;
    rdf:predicate ks:mitigates ;
    rdf:object <https://comcomponent.com/knowledge/function-output-leak/> ;
    schema:description "不要な出力を$null = ...で捨てることで、関数の戻り値への意図しない混入を防げる"@ja ;
    ks:evidence <https://learn.microsoft.com/powershell/module/microsoft.powershell.core/about/about_return> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/write-information/> ;
    rdf:predicate ks:recommendedFor ;
    rdf:object <https://comcomponent.com/knowledge/structured-logging/> ;
    schema:description "運用として記録したい出来事は、Write-Informationで捕捉できる情報を構造化ログ(1行1JSON)として残すことが本記事の推奨である"@ja ;
    ks:evidence <https://learn.microsoft.com/powershell/module/microsoft.powershell.utility/write-information> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/write-progress/> ;
    rdf:predicate ks:notRecommendedFor ;
    rdf:object <https://comcomponent.com/knowledge/structured-logging/> ;
    schema:description "Write-Progressの進捗表示はホストの表示機能でありリダイレクト可能なデータストリームではないため、構造化ログの記録手段には向かない。1つのスクリプトが対話的な進捗表示にWrite-Progressを使いながら、別途Write-Informationなどで構造化ログを書くことは問題なくできる。"@ja ;
    ks:evidence <https://learn.microsoft.com/powershell/module/microsoft.powershell.utility/write-progress> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/start-transcript/> ;
    rdf:predicate ks:uses ;
    rdf:object <https://comcomponent.com/knowledge/powershell-output-stream/> ;
    schema:description "Start-Transcriptはセッションのコマンドと画面出力(ストリームの表示結果)をまるごとテキストに記録する"@ja ;
    ks:evidence <https://learn.microsoft.com/powershell/module/microsoft.powershell.host/start-transcript> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .
