Molte risorse vengono create nel corso di conversioni, compilazioni, copie o altri tipi di operazioni eseguite sui file generati e modificati dall'utente. Le risorse derivate sono risorse che non rappresentano dati originali e possono essere ricreate dai propri file di origine. È frequente che i file derivati vengano esclusi da determinati tipi di elaborazione.
Ad esempio, le risorse derivate non vengono generalmente conservate in un repository di team, poiché creano confusione all'interno del repository, cambiano regolarmente e possono essere ricreate dai relativi file di origine. Non è molto pratico per i fornitori di team individuare i file derivati. L'API delle risorse fornisce un meccanismo comune che consente ai plugin di indicare quali, tra le risorse create, sono derivate.
I plugin possono utilizzare IResource.setDerived(boolean) per indicare che una data risorsa deriva da altre risorse. Le risorse appena create non sono derivate per impostazione predefinita, per cui questo metodo deve essere utilizzato per contrassegnare in maniera esplicita la risorsa come derivata. Un uso frequente consiste nel contrassegnare una sottocartella del progetto come derivata quando una cartella di "output" (ad esempio, la cartella "bin" nei progetti Java) viene creata dal plugin.
Altri plugin, in genere i fornitori di team, possono utilizzare IResource.isDerived per stabilire se una particolare risorsa deve essere gestita dal repository. I tentativi di contrassegnare i progetti o la directory principale dello spazio di lavoro come risorse derivate verranno ignorati.
Nota: il concetto di risorse derivate viene fornito ad altri plug- in (non di team) per indicare quali risorse sono inadeguate per la gestione del repository. File speciali creati da implementazioni di team per la gestione dei dati non devono essere contrassegnati come risorse derivate. Per informazioni su una tecnica per contrassegnare come nascoste le risorse di implementazione correlate ai team, vedere Risorse private di team.