After searching into the spell a bit, I found the following script which seems to "rule" all the transmutation process... transmuteMineralScript.
The code is like this:
"Scriptname transmuteMineralScript extends ActiveMagicEffect
{script for spell to allow transmutation of ores}
import game
MiscObject Property Ore01 Auto
{Lowest value ore}
MiscObject Property Ore02 Auto
{Middle value ore}
MiscObject Property Ore03 Auto
{Highest value ore}
Sound Property FailureSFX Auto
float property skillAdvancement = 15.0 auto
{How much to advance the skill? Only works when spell actually transmutes something}
message property failureMSG auto
EVENT OnEffectStart(Actor akTarget, Actor akCaster)
objectReference caster = akCaster
if caster.getItemCount(Ore02) >= 1
; favor the more valuable ore first
caster.removeItem(Ore02, 1, TRUE)
caster.addItem(Ore03, 1, FALSE)
advanceSkill("alteration",skillAdvancement)
elseif caster.getItemCount(Ore01) >= 1
; if none of that, look for the base ore to upgrade
caster.removeItem(Ore01, 1, TRUE)
caster.addItem(Ore02, 1, FALSE)
advanceSkill("alteration",skillAdvancement)
else
; caster must have had no valid ore
FailureSFX.play(caster)
failureMSG.show()
endif
endEVENT"
Now...Ore01, Ore02 and Ore03 are quite generic as reference so I'd have thought one of the following options:
a) Iron Ingot, Silver Ingot and Gold Ingots are marked as such somewhere.

For the option "a", I don't see any ground for that. Ingot item descriptions are quite simple and even the keywords have nothing to do with Ore01, Ore02, etc...!
For the option "b", the problem is that Ebony is the most expensive (highest value) item with "Ore" descriptor, so, if it worked as I supposed above, we'd have Iron -> Gold -> Ebony
instead of Iron -> Silver -> Gold as it is!
Now...I've checked for Global Variables...none...
...I've checked for quests...none...
...so, given that I know that the computer is non-intelligent, so it's not going to make up which ore is Ore01 all by himself (basic computer science concept)...
...how Papyrus get that Ore01 is Iron, Ore02 is Silver and Ore03 is Gold? Where the critical passage of telling the game which reference to check is gone (because the script above seems to me like a phrase with no verb or noun...the problem is that probably is hidden somewhere else)?
Anyone has any idea?
Thanks,
Guido