Private/Get-SchemaName.ps1

Function Get-SchemaName {
    param
    (
        [SolutionComponent]$Component,
        [hashtable]$Metadata
    )


    $schemaName = ($Metadata.Source.All[$component.ObjectId] | Select-Object SchemaName).SchemaName
        
    if (-Not $schemaName) {
        $schemaName = ($Metadata.Source.Attributes[$component.ObjectId] | Select-Object SchemaName).SchemaName
    }

    if (-Not $schemaName){
        if ($Component.ComponentType -eq 26){
            $schemaName = "savedquery"
        }
    }

    Write-Output $schemaName
}