@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-ast-script-analysis-tool/#article>
    schema:about <https://comcomponent.com/knowledge/powershell-ast/>, <https://comcomponent.com/knowledge/powershell-command-inventory/> ;
    schema:mentions <https://comcomponent.com/knowledge/powershell-language-parser/>, <https://comcomponent.com/knowledge/powershell-command-ast/>, <https://comcomponent.com/knowledge/powershell-ast-findall/>, <https://comcomponent.com/knowledge/powershell-getcommandname/>, <https://comcomponent.com/knowledge/powershell-script-extent/> .

<https://comcomponent.com/knowledge/powershell-ast/> a skos:Concept ;
    skos:prefLabel "PowerShellのAST"@ja ;
    skos:definition "PowerShellのコードを代入・関数定義・コマンド呼び出しなどの構文ノードで表した抽象構文木。実行履歴ではない。"@ja .

<https://comcomponent.com/knowledge/powershell-command-inventory/> a skos:Concept ;
    skos:prefLabel "構文上の呼び出し一覧"@ja ;
    skos:definition "PowerShellスクリプトの構文からコマンド呼び出しを抽出し、静的に取得できる名前とソース位置をまとめた一覧。静的に名前を決定できない呼び出しも未確定として扱い、実行時の呼び出し履歴とは区別する。"@ja ;
    ks:uses <https://comcomponent.com/knowledge/powershell-language-parser/> ;
    ks:uses <https://comcomponent.com/knowledge/powershell-command-ast/> ;
    ks:uses <https://comcomponent.com/knowledge/powershell-ast-findall/> ;
    ks:uses <https://comcomponent.com/knowledge/powershell-getcommandname/> ;
    ks:uses <https://comcomponent.com/knowledge/powershell-script-extent/> .

<https://comcomponent.com/knowledge/powershell-language-parser/> a skos:Concept ;
    skos:prefLabel "PowerShellのParser"@ja ;
    skos:definition "ParseInputで文字列、ParseFileでファイルを解析し、AST・トークン・構文エラーを取得する標準パーサー。"@ja .

<https://comcomponent.com/knowledge/powershell-command-ast/> a skos:Concept ;
    skos:prefLabel "CommandAst"@ja ;
    skos:definition "PowerShellの構文木でコマンド呼び出しを表すノード。関数定義そのものや.NETのメソッド呼び出しとは区別する。"@ja .

<https://comcomponent.com/knowledge/powershell-ast-findall/> a skos:Concept ;
    skos:prefLabel "Ast.FindAll"@ja ;
    skos:definition "述語に合う構文ノードを探すAPI。入れ子のスクリプトブロックや関数の検索を指定できる。"@ja .

<https://comcomponent.com/knowledge/powershell-getcommandname/> a skos:Concept ;
    skos:prefLabel "GetCommandName"@ja ;
    skos:definition "CommandAstから静的に取得できる呼び出し名を返すAPI。名前を決定できない場合はnullを返す。"@ja .

<https://comcomponent.com/knowledge/powershell-script-extent/> a skos:Concept ;
    skos:prefLabel "IScriptExtent"@ja ;
    skos:definition "構文ノードに対応するソース範囲。元の文字列、1始まりの開始行・開始列などを提供する。"@ja .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/powershell-command-inventory/> ;
    rdf:predicate ks:uses ;
    rdf:object <https://comcomponent.com/knowledge/powershell-language-parser/> ;
    schema:description "本記事の道具はParseFileで対象を構文解析し、構文エラーを確認してから一覧を返す。"@ja ;
    ks:evidence <https://learn.microsoft.com/en-us/dotnet/api/system.management.automation.language.parser.parsefile?view=powershellsdk-7.6.0> ;
    ks:verifiedAt "2026-09-13" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/powershell-command-inventory/> ;
    rdf:predicate ks:uses ;
    rdf:object <https://comcomponent.com/knowledge/powershell-command-ast/> ;
    schema:description "本記事の道具はCommandAstを呼び出しの単位として扱い、.NETメソッド呼び出しは含めない。"@ja ;
    ks:evidence <https://learn.microsoft.com/en-us/dotnet/api/system.management.automation.language.commandast.getcommandname?view=powershellsdk-7.6.0> ;
    ks:verifiedAt "2026-09-13" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/powershell-command-inventory/> ;
    rdf:predicate ks:uses ;
    rdf:object <https://comcomponent.com/knowledge/powershell-ast-findall/> ;
    schema:description "本記事の道具は入れ子も検索するFindAllでCommandAstを列挙する。"@ja ;
    ks:evidence <https://learn.microsoft.com/en-us/dotnet/api/system.management.automation.language.ast.findall?view=powershellsdk-7.6.0> ;
    ks:verifiedAt "2026-09-13" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/powershell-command-inventory/> ;
    rdf:predicate ks:uses ;
    rdf:object <https://comcomponent.com/knowledge/powershell-getcommandname/> ;
    schema:description "呼び出し名の取得にGetCommandNameを利用し、nullの場合も位置を残す。"@ja ;
    ks:evidence <https://learn.microsoft.com/en-us/dotnet/api/system.management.automation.language.commandast.getcommandname?view=powershellsdk-7.6.0> ;
    ks:verifiedAt "2026-09-13" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/powershell-command-inventory/> ;
    rdf:predicate ks:uses ;
    rdf:object <https://comcomponent.com/knowledge/powershell-script-extent/> ;
    schema:description "呼び出しの行と列を、各ノードのExtentから取り出す。"@ja ;
    ks:evidence <https://learn.microsoft.com/en-us/dotnet/api/system.management.automation.language.iscriptextent?view=powershellsdk-7.4.0> ;
    ks:verifiedAt "2026-09-13" ;
    ks:certainty "established" .
