Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:SQL Server
Azure SQL Database
Az XPath lekérdezések kifejezés formájában vannak megadva. Számos kifejezés létezik. A helymeghatározási út egy olyan kifejezés, amely a kontextuscsomóponthoz viszonyított csomópontokat választ ki. A helymeghatározási útvonal értékelésének eredménye egy csomóponthalmaz.
A helymeghatározó útvonalak típusai
Egy helymeghatározási útvonal az alábbi formák egyikét öltheti:
Abszolút helymeghatározási útvonal
Az abszolút helymeghatározási út a dokumentum gyökércsomópontjánál kezdődik. Ez egy lecsapásból (/) áll, amelyet opcionálisan egy relatív helybeli útvonal követ. A képjel (/) kiválasztja a dokumentum gyökércsomópontját.
Relatív helymeghatározási útvonal
Egy relatív hely útja a dokumentum kontextuscsomópontjánál kezdődik. A helymeghatározási út egy vagy több helylépésből álló sorozatból áll, amelyeket egy lecsapás (/) választ el egymástól. Minden lépés kiválaszt egy halmazt a kontextuscsomóponthoz viszonyítva. A kezdeti lépéssorozat egy ponthalmazt választ ki egy kontextuscsomóponthoz viszonyítva. Az adott halmazban minden csomópontot kontextuscsomópontként használják a következő lépéshez. Az adott lépéssel azonosított csomópontok össze vannak kötve. Például a child::Order/child::OrderDetail kiválasztja a <OrderDetail> elem gyermekeit a <kontextuscsomópont Order> elem gyermekeiből.
Megjegyzés:
Az XPath SQLXML 4.0 implementációjában minden XPath lekérdezés a gyökérkontextusban kezdődik, még akkor is, ha az XPath nem kifejezetten abszolút. Például egy "Customer" (Ügyfél) jelzéssel kezdődő XPath lekérdezés "/Customer" jelzéssel jelenik meg. Az XPath Customer[Order] lekérdezésben az Ügyfél a gyökérkontextusban kezdődik, de a Rendelés az Ügyfél kontextusban kezdődik. További információért lásd: Bevezetés az XPath lekérdezések használatába (SQLXML 4.0).
Helyszíni lépések
A helymeghatározási út (abszolút vagy relatív út) három részből álló helylépésekből áll:
Tengely
A tengely meghatározza a fa kapcsolatot a helylépés által kiválasztott csomópontok és a kontextus csomópont között. A szülő, gyermek, attribútum és az önmag tengelye támogatott. Ha a helymeghatározási útban egy gyermektengely van megadva, akkor a lekérdezés által kiválasztott csomópontok közül az összes kontextuscsomópont gyermeke. Ha egy szülőtengelyt jelölnek, a kiválasztott csomópont a kontextuscsomópont szülőcsomópontja. Ha egy attribútumtengelyt jelölnek, a kiválasztott csomópontok a kontextuscsomópont attribútumai.
Csomópontteszt
A csomópontteszt meghatározza a helymeghatározási lépés által kiválasztott csomóponttípust. Minden tengelynek (gyermek, szülő, attribútum és én) van egy fő csomóponttípusa. Az attribútumtengely esetében a fő csomópont típus az< attribútum>. A szülő, gyermek és önálló tengelyek esetében a fő csomóponttípus az< elem>.
Például, ha a helyút megadja a child::Customer-et, akkor a <kontextuscsomópont Ügyfélelem> gyermekei kerülnek kiválasztva. Mivel a gyermektengely<fő csomóponttípusa elem>, a csomópont teszt, a Customer, TRUE, ha a Customer elemcsomópont<>.
Szelekciós predikátumok (nulla vagy annál több)
Egy predikátum egy csomóponthalmazt szűr egy tengely tekintetében. A kiválasztási predikátumok meghatározása egy XPath kifejezésben hasonló ahhoz, mint egy WHERE klauzulát megadni egy SELECT állításban. A predikátum zárójelek között van megadva. A kiválasztási predikátumban megadott teszt alkalmazása szűri a csomópont teszt által visszaadott csomópontokat. Minden csomópont esetén a szűrendő csomópontban a predikátum kifejezést úgy értékelik, hogy az adott csomópont kontextuscsomópont, a csomópontok száma pedig kontextusméret. Ha a predikátum kifejezés TRUE-ra értékeli az adott csomópont esetén, akkor a csomópont bekerül a kapott csomóponthalmazba.
Egy helylépés szintaxisa a tengelynév és a csomópont teszt két kolonddal (::)) választva el, majd nulla vagy több kifejezéssel, mindegyik négyzetzárójelben. Például az XPath kifejezés (helyút) gyermek::Customer[@CustomerID='ALFKI'] kiválasztja a kontextuscsomópont összes <Ügyfél> elem gyermekét. Ezután a predikátumban lévő tesztet alkalmazzák a csomóponthalmazra, amely csak az <Ügyfélelem> csomópontokat adja vissza, amelyek attribútumértéke 'ALFKI' a CustomerID attribútumjához.
Ebben a részben
Tengely meghatározása (SQLXML 4.0)
Példákat ad egy tengely meghatározására.
Node teszt meghatározása a helymeghatározási útban (SQLXML 4.0)
Példákat ad a csomópont teszt meghatározására.
Kiválasztási predikátumok meghatározása a helymeghatározási útban (SQLXML 4.0)
Példákat ad a kiválasztási predikátumok meghatározására.