Istruzione REFERENCES OF
L'istruzione REFERENCES OF recupera tutte le istanze di associazione che fanno riferimento a una particolare istanza di origine. L'istruzione REFERENCES OF è simile all'istruzione ASSOCIATORS OF nella relativa sintassi. Tuttavia, invece di recuperare le istanze dell'endpoint, recupera le istanze di associazione intermedie.
La clausola REFERENCES OF WHERE può includere una o più delle parole chiave predefinite seguenti e i relativi valori:
REFERENCES OF {SourceObject} WHERE
ClassDefsOnly
RequiredQualifier = QualifierName
ResultClass = ClassName
Role = PropertyName
Per specificare un oggetto di origine, utilizzare qualsiasi percorso oggetto valido per SourceObject. Come per l'istruzione SELECT, la clausola WHERE è facoltativa e viene usata per definire ulteriormente la query. Ovvero, l'istruzione seguente è perfettamente valida:
REFERENCES OF {Adapter="AHA-294X"}
La parola chiave ClassDefsOnly indica che l'istruzione restituisce un set di risultati di oggetti definizione di classe anziché le istanze effettive delle classi di associazione. Questi oggetti contengono definizioni di classi a cui appartengono le istanze che fanno riferimento all'oggetto di origine. Ad esempio, l'istruzione seguente restituisce le definizioni per le classi AdapterDriver e AdapterProtocol :
REFERENCES OF {Adapter="AHA-294X"} WHERE ClassDefsOnly
La parola chiave RequiredQualifier indica che gli oggetti associazione restituiti devono includere il qualificatore specificato. La parola chiave RequiredQualifier può essere usata per includere istanze specifiche di associazioni nel set di risultati. Ad esempio, l'istruzione seguente restituisce istanze di associazione che includono un qualificatore denominato AdapterTag:
REFERENCES OF {Adapter="AHA-294X"} WHERE RequiredQualifier = AdapterTag
La parola chiave ResultClass indica che gli oggetti associazione restituiti devono appartenere o essere derivati dalla classe specificata. Ad esempio, l'istruzione seguente restituisce associazioni della classe AdapterDriver o delle sottoclassi di AdapterDriver:
REFERENCES OF {Adapter="AHA-294X"} WHERE ResultClass = AdapterDriver
Le parole chiave ClassDefsOnly e ResultClass si escludono a vicenda. L'uso di tali query causa un errore di query non valido.
La parola chiave Role indica che le associazioni restituite sono solo quelle in cui l'oggetto di origine svolge un ruolo specifico. Il ruolo è definito dalla proprietà specificata, una proprietà di riferimento di tipo ref. La parola chiave Role è utile nelle associazioni in cui un determinato oggetto può svolgere un ruolo in alcuni casi e un altro ruolo in altri, ad esempio nelle associazioni gerarchie. La parola chiave Role può essere usata per recuperare tutte le associazioni in cui l'oggetto di origine svolge il ruolo di padre, ad esempio. L'istruzione seguente illustra la sintassi per il recupero di associazioni con una proprietà padre che fa riferimento all'oggetto di origine come padre:
REFERENCES OF {Adapter="AHA-294X"} WHERE Role = parent
Nota
Le query complesse non possono usare "And" o "Or" per separare le parole chiave per le istruzioni ASSOCIATORS OF e REFERENCES OF. Inoltre, il segno di uguale è l'unico operatore valido che può essere usato con le parole chiave in queste query. Viene ad esempio considerata valida la query seguente:
"REFERENCES OF {Win32_NetworkAdapter.DeviceID="0"} " +
"WHERE resultclass = Win32_NetworkAdapterSetting " +
"requiredQualifier = Dynamic"
Nota
Gli esempi successivi non sono validi. Il primo esempio non usa il segno di uguale e il secondo esempio tenta erroneamente di usare la parola chiave AND :
"REFERENCES OF {Win32_NetworkAdapter.DeviceID="0"} " +
"WHERE resultclass = Win32_NetworkAdapterSetting " +
"requiredQualifier <> Dynamic"
"REFERENCES OF {Win32_NetworkAdapter.DeviceID="0"} " +
"WHERE resultclass = Win32_NetworkAdapterSetting " +
"AND requiredQualifier = Dynamic"