Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Langkah-langkah dalam panduan ini menunjukkan cara menggunakan debugger XSLT. Langkah-langkahnya termasuk melihat variabel, mengatur titik henti, dan menelusuri kode. Debugger memungkinkan Anda menjalankan kode satu baris pada satu waktu.
Untuk mempersiapkan panduan ini, pertama-tama salin dua file sampel ke komputer lokal. Salah satunya adalah lembar gaya, dan satunya adalah file XML yang akan digunakan sebagai input ke lembar gaya. Dalam panduan ini, lembar gaya yang digunakan menemukan semua buku yang biayanya di bawah harga buku rata-rata.
Catatan
Debugger XSLT hanya tersedia di Visual Studio edisi Professional dan Enterprise.
Mulai penelusuran kesalahan
Dari menu File, pilih Buka>File.
Temukan file below-average.xsl dan pilih Buka.
Lembar gaya terbuka di editor XML.
Klik tombol telusuri (...) pada bidang Input jendela properti dokumen. (Jika jendela Properti tidak terlihat, klik kanan di mana saja pada file yang terbuka di editor, lalu pilih Properti.)
Temukan file books.xml, lalu pilih Buka.
Ini mengatur file dokumen sumber yang digunakan untuk transformasi XSLT.
Atur titik henti pada baris 12 dari di bawah rata-rata.xsl. Anda dapat melakukannya dengan salah satu dari beberapa cara:
Klik di margin editor pada baris 12.
Klik di mana saja pada baris 12, lalu tekan F9.
Klik kanan tag mulai
xsl:if, lalu pilih Titik Henti>Sisipkan Titik Henti.
Di bilah menu, pilih XML>Mulai Penelusuran Kesalahan XSLT (atau, tekan Alt+F5).
Proses penelusuran kesalahan dimulai.
Di editor, debugger diposisikan pada elemen
xsl:iflembar gaya. File lain bernama below-average.xml terbuka di editor; ini adalah file output yang akan diisi sebagai setiap node dalam file input books.xml diproses.Jendela Otomatis, Lokal, dan Pengawas 1 muncul di bagian bawah jendela Visual Studio. Jendela Lokal menampilkan semua variabel lokal dan nilainya saat ini. Ini termasuk variabel yang ditentukan dalam lembar gaya dan juga variabel yang digunakan debugger untuk melacak node yang saat ini dalam konteks.
Jendela Pengawas
Kita akan menambahkan dua variabel ke jendela Pengawas 1 sehingga dapat memeriksa nilainya saat file input diproses. (Anda juga dapat menggunakan jendela Lokal untuk memeriksa nilai jika variabel yang ingin ditonton sudah ada.)
Dari menu Debug, pilih Windows>Pengawas>Pengawas 1.
Jendela Pengawas 1 menjadi terlihat.
Ketik
$bookAveragedi bidang Nama, lalu tekan Enter.Nilai variabel
$bookAverageditampilkan di bidang Nilai.Pada baris berikutnya, ketik
self::node()di bidang Nama, lalu tekan Enter.self::node()adalah ekspresi JalurX yang mengevaluasi ke node konteks saat ini. Nilai ekspresi JalurXself::node()adalah node buku pertama. Ini berubah seiring kemajuan kami melalui transformasi.Perluas node
self::node(), lalu perluas node yang nilainya adalahprice.
Anda dapat melihat nilai harga buku untuk node buku saat ini dan membandingkannya dengan nilai
$bookAverage. Karena harga buku di bawah rata-rata, kondisixsl:ifakan berhasil saat Anda melanjutkan proses penelusuran kesalahan.
Telusuri kode tersebut
Tekan F5 untuk melanjutkan.
Karena node buku pertama memenuhi kondisi
xsl:if, node buku ditambahkan ke file output below-average.xml. Debugger terus dijalankan sampai diposisikan lagi pada elemenxsl:ifdalam lembar gaya. Debugger sekarang diposisikan pada node buku kedua dalam file books.xml.Di jendela Pengawas 1, nilai
self::node()berubah menjadi node buku kedua. Dengan memeriksa nilai elemen harga, Anda dapat menentukan bahwa harga berada di atas rata-rata, sehingga kondisixsl:ifakan gagal.Tekan F5 untuk melanjutkan.
Karena node buku kedua tidak memenuhi kondisi
xsl:if, node buku tidak ditambahkan ke file output below-average.xml. Debugger terus dijalankan sampai diposisikan lagi pada elemenxsl:ifdalam lembar gaya. Debugger sekarang diposisikan pada nodebookketiga dalam file books.xml.Di jendela Pengawas 1, nilai
self::node()berubah menjadi node buku ketiga. Dengan memeriksa nilai elemenprice, Anda dapat menentukan bahwa harga di bawah rata-rata. Kondisixsl:ifakan berhasil.Tekan F5 untuk melanjutkan.
Karena kondisi
xsl:ifterpenuhi, buku ketiga ditambahkan ke file output below-average.xml. Semua buku dalam dokumen XML telah diproses dan debugger berhenti.
file sampel
Dua file berikut digunakan oleh panduan.
below-average.xsl
<?xml version='1.0'?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" encoding="utf-8"/>
<xsl:template match="/">
<xsl:variable name="bookCount" select="count(/bookstore/book)"/>
<xsl:variable name="bookTotal" select="sum(/bookstore/book/price)"/>
<xsl:variable name="bookAverage" select="$bookTotal div $bookCount"/>
<books>
<!--Books That Cost Below Average-->
<xsl:for-each select="/bookstore/book">
<xsl:if test="price < $bookAverage">
<xsl:copy-of select="."/>
</xsl:if>
</xsl:for-each>
</books>
</xsl:template>
</xsl:stylesheet>
books.xml
<?xml version='1.0'?>
<!-- This file represents a fragment of a book store inventory database -->
<bookstore>
<book genre="autobiography" publicationdate="1981" ISBN="1-861003-11-0">
<title>The Autobiography of Benjamin Franklin</title>
<author>
<first-name>Benjamin</first-name>
<last-name>Franklin</last-name>
</author>
<price>8.99</price>
</book>
<book genre="novel" publicationdate="1967" ISBN="0-201-63361-2">
<title>The Confidence Man</title>
<author>
<first-name>Herman</first-name>
<last-name>Melville</last-name>
</author>
<price>11.99</price>
</book>
<book genre="philosophy" publicationdate="1991" ISBN="1-861001-57-6">
<title>The Gorgias</title>
<author>
<name>Plato</name>
</author>
<price>9.99</price>
</book>
</bookstore>