UTASÍTÁSOK HIVATKOZÁSAI
A HIVATKOZÁSOK utasítás lekéri az összes olyan társításpéldányt, amely egy adott forráspéldányra hivatkozik. Az UTASÍTÁSHIVATKOZÁSOK hasonlóak a szintaxisban szereplő ASSOCIATORS OF utasításhoz. A végpontpéldányok beolvasása helyett azonban lekéri a beavatkozó társítási példányokat.
A WHERE záradék hivatkozásai tartalmazhatnak egy vagy több előre definiált kulcsszót és azok értékeit:
REFERENCES OF {SourceObject} WHERE
ClassDefsOnly
RequiredQualifier = QualifierName
ResultClass = ClassName
Role = PropertyName
Forrásobjektum megadásához használja a SourceObject bármely érvényes objektumútvonalát. A SELECT utasításhoz hasonlóan a WHERE záradék nem kötelező, és a lekérdezés további meghatározására szolgál. Ez azt, hogy a következő állítás tökéletesen érvényes:
REFERENCES OF {Adapter="AHA-294X"}
A ClassDefsOnly kulcsszó azt jelzi, hogy az utasítás az osztálydefiníciós objektumok eredményhalmazát adja vissza a társításosztályok tényleges példányai helyett. Ezek az objektumok azon osztályok definícióit tartalmazzák, amelyekhez a forrásobjektumra hivatkozó példányok tartoznak. Az alábbi utasítás például a AdapterDriver és AdapterProtocol osztály definícióit adja vissza:
REFERENCES OF {Adapter="AHA-294X"} WHERE ClassDefsOnly
A RequiredQualifier kulcsszó azt jelzi, hogy a visszaadott társításobjektumoknak tartalmazniuk kell a megadott minősítőt. A RequiredQualifier kulcsszóval bizonyos társítások példányait is belefoglalhatja az eredményhalmazba. Az alábbi utasítás például olyan társításpéldányokat ad vissza, amelyek AdapterTagnevű minősítőt tartalmaznak:
REFERENCES OF {Adapter="AHA-294X"} WHERE RequiredQualifier = AdapterTag
A ResultClass kulcsszó azt jelzi, hogy a visszaadott társításobjektumoknak a megadott osztályhoz kell tartozniük vagy származtatva kell lenniük. Az alábbi utasítás például a AdapterDriverAdapterDriverosztályának vagy alosztályainak társítását adja vissza:
REFERENCES OF {Adapter="AHA-294X"} WHERE ResultClass = AdapterDriver
A ClassDefsOnly és ResultClass kulcsszavak kölcsönösen kizárják egymást. Az együttes használat érvénytelen lekérdezési hibát okoz.
A szerepkör kulcsszó azt jelzi, hogy a visszaadott társítások csak azok, amelyekben a forrásobjektum egy adott szerepet játszik. A szerepkört a megadott tulajdonság határozza meg, amely egy reftípusú referenciatulajdonság. A szerepkör kulcsszó olyan társításokban hasznos, amelyekben egy adott objektum bizonyos esetekben egy, másokban pedig egy másik szerepkört játszhat, például hierarchikus társításokban. A szerepkör kulcsszóval lekérheti például az összes olyan társítást, amelyben a forrásobjektum szülőszerepkört játszik. Az alábbi utasítás a forrásobjektumot szülőként hivatkozó szülő- tulajdonságú társítások lekérésének szintaxisát mutatja be:
REFERENCES OF {Adapter="AHA-294X"} WHERE Role = parent
Jegyzet
Az összetett lekérdezések nem használhatják az "And" vagy az "Or" függvényt a kulcsszavak elválasztására az ASSOCIATORS OF és a REFERENCES OF utasítások esetében. Ezenkívül az egyenlőségjel az egyetlen érvényes operátor, amely a lekérdezésekben szereplő kulcsszavakkal használható. Például a következő lekérdezés érvényes:
"REFERENCES OF {Win32_NetworkAdapter.DeviceID="0"} " +
"WHERE resultclass = Win32_NetworkAdapterSetting " +
"requiredQualifier = Dynamic"
Jegyzet
A következő példák érvénytelenek. Az első példa nem használja az egyenlőségjelet, a második példa pedig hibásan próbálja meg használni a ÉS kulcsszót:
"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"