Senin, 21 September 2026
01:07 WIB
TERKINI
Cek Fakta Kiat Cerdas Deteksi Hoaks: Hindari Jebakan Berita Palsu di Media Sosial Cek Fakta Waspada! Penipuan Undian Berhadiah Catut Nama BNI Kembali Marak Climate BMKG Ungkap Potensi Hujan Lebat Landa Sejumlah Wilayah Indonesia Pekan Ini Moto Gp Veda Ega Peringkat 16 FP2 Moto3 Austria, Hakim Danish Tembus Empat Besar Moto Gp Drama Kualifikasi Moto3 Austria: Veda Ega ke-19, Uriarte Pecahkan Rekor Hukum Selebgram JP Terjerat Vape Narkoba: Stres Picu Konsumsi Etomidate Golongan II Arsip Mengenang Multatuli: Kisah 84 Hari yang Mengukir Sejarah Lebak Arsip Max Havelaar di Sekolah Belanda: Antara Pedoman dan Kebebasan Memilih Megapolitan Aroma Tak Sedap Ganggu Pejalan Kaki Dekat Halte IRTI Monas Tren Trump Larang CNN, MS NOW, Politico dari Gedung Putih: Konflik Media Memuncak Cek Fakta Kiat Cerdas Deteksi Hoaks: Hindari Jebakan Berita Palsu di Media Sosial Cek Fakta Waspada! Penipuan Undian Berhadiah Catut Nama BNI Kembali Marak Climate BMKG Ungkap Potensi Hujan Lebat Landa Sejumlah Wilayah Indonesia Pekan Ini Moto Gp Veda Ega Peringkat 16 FP2 Moto3 Austria, Hakim Danish Tembus Empat Besar Moto Gp Drama Kualifikasi Moto3 Austria: Veda Ega ke-19, Uriarte Pecahkan Rekor Hukum Selebgram JP Terjerat Vape Narkoba: Stres Picu Konsumsi Etomidate Golongan II Arsip Mengenang Multatuli: Kisah 84 Hari yang Mengukir Sejarah Lebak Arsip Max Havelaar di Sekolah Belanda: Antara Pedoman dan Kebebasan Memilih Megapolitan Aroma Tak Sedap Ganggu Pejalan Kaki Dekat Halte IRTI Monas Tren Trump Larang CNN, MS NOW, Politico dari Gedung Putih: Konflik Media Memuncak

Extensible Application Markup Language

40px-Text_document_with_red_question_mark.svg.png?utm_source=id.wikipedia.org&utm_campaign=parser&utm_content=thumbnail
Sumber referensi dari artikel ini belum dipastikan dan mungkin isinya tidak benar. Mohon periksa, kembangkan artikel ini, dan tambahkan sumber yang benar pada bagian yang diperlukan. (Pelajari cara dan kapan saatnya untuk menghapus pesan templat ini)
Extensible Application Markup Language
Ekstensi berkas.xaml
Jenis MIMEapplication/xaml+xml
Dikembangkan
oleh
Microsoft
Jenis formatUser interface markup language
Pengembangan dariXML

Extensible Application Markup Language (XAML, dieja zammel ['zæm?̩]) adalah sebuah bahasa berbasis XML deklaratif yang diciptakan oleh Microsoft yang digunakan untuk menginisialisasi nilai dan objek terstruktur. XAML tersedia di bawah Open Specification Promise Microsoft.[1] Akronim ini pada mulanya merupakan singkatan dari Extensible Avalon Markup Language - Avalon, yaitu sebuah nama kode untuk Windows Presentation Foundation (WPF).[2]

Tinjauan

XAML digunakan secara ekstensif di dalam teknologi .NET Framework 3.0, khususnya Windows Presentation Foundation (WPF) dan Windows Workflow Foundation (WF). Di dalam WPF, XAML digunakan sebagai sebuah bahasa markup antarmuka pengguna untuk mendefinisikan elemen antarmuka pengguna, data binding, eventing, dan fitur-fitur lain. Dalam WF, workflow dapat didefinisikan dengan menggunakan XAML.

Elemen XAML memetakan langsung ke instance objek Common Language Runtime, sementara atribut XAML memetakan ke properti dan event Common Language Runtime di atas objek-objek tersebut. File XAML dapat diciptakan dan disunting dengan alat desain visual semacam Microsoft Expression Blend, Microsoft Visual Studio, dan desainer visual Windows Workflow Foundation yang dapat di-host-kan. XAML juga dapat diciptakan dan disunting dengan penyunting teks standar, penyunting kode semacam XAMLPad dan Kaxaml, atau dengan penyunting grafis semacam Vectropy.

Teknologi

File XAML dapat dikompilasi ke dalam file .baml (Binary XAML) yang dapat dimasukkan sebagai sumber daya ke dalam assembly .NET Framework. Pada saat run-time, mesin framework mengekstrak file .baml dari assembly tersebut, mem-parse, dan menciptakan sebuah pohon visual WPF atau workflow.

Bila digunakan dalam Windows Presentation Foundation, XAML digunakan untuk menjelaskan visual antarmuka pengguna. WPF memungkinkan definisi dari kedua objek 2D dan 3D, rotasi, translasi, animasi, dan berbagai efek dan fitur lainnya.

Bila digunakan pada konteks-konteks Windows Workflow Foundation, XAML digunakan untuk menjelaskan logika deklaratif yang berpotensial berjalan lama, seperti yang dibuat oleh alat pemodelan proses dan sistem aturan. Format serialisasi untuk workflow sebelumnya disebut 'XOML', untuk membedakan dari penggunaan XAML sebagai markup antarmuka pengguna, tetapi sekarang tidak dibedakan lagi. Bagaimanapun, file ekstensi untuk file yang berisi markup workflow masih berupa "XOML".[3][4]

Templat

XAML menggunakan sebuah cara spesifik untuk mendefinisikan Look and Feel yang disebut Templat, berbeda dari sintaks Cascading Style Sheets, tetapi mirip dengan XBL.[5]

Contoh

Contoh di bawah ini memperlihatkan sebuah teks "Hello World!" di dalam container XAML top-level yang disebut Canvas.

<Canvasxmlns="http://schemas.microsoft.com/client/2007"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<TextBlock>HelloWorld!</TextBlock>
</Canvas>

Skema (bagian xmlns="http://schemas.microsoft.com Diarsipkan 2017-07-05 di Wayback Machine....") bisa saja berbeda di komputer Anda. Dengan menggunakan skema yang disarankan Microsoft, contoh di atas menjadi [6]

<Canvasxmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<TextBlock>HelloWorld!</TextBlock>
</Canvas>

Teknologi ini dapat diintegrasikan ke dalam halaman web jika WPF diinstal menggunakan XBAP yang merupakan aplikasi terkompilasi yang berjalan di dalam sebuah lingkungan bak-pasir yang di-host dalam browser. Cara lain adalah dengan menggunakan plugin Silverlight. Kode tidak bisa dimasukkan langsung dalam halaman HTML, tetapi harus dimuat ke dalam halaman melalui JavaScript. Jika .NET 3.0 atau lebih tinggi diinstal, file Loose XAML juga dapat dilihat di browser yang kompatibel (termasuk Internet Explorer dan Firefox) sehubungan dengan. NET Framework 3.0, tanpa perlu plugin untuk Silverlight.[7] File Loose XAML adalah file yang berisi markup saja yang terbatas hanya untuk mendefinisikan isi visual yang akan di-render. File ini tidak dikompilasi dengan sebuah applikasi.

<htmlxmlns="http://www.w3.org/1999/xhtml">
<head>
<title>XAMLExample</title>
<scripttype="text/javascript"src="MySilverlight.js"/>
<scripttype="text/javascript"src="Silver.js"/>
</head>
<body>
<divid="MySilverlight">
</div>
<scripttype="text/javascript">
createMySilverlight();
</script>
</body>
</html>

File MySilverlight.js mesti berisi kode yang memuat kode XAML di atas (sebagai sebuah file XML) di bawah elemen html MySilverlight.

Kritik

European Committee for Interoperable Systems[8] berpendapat bahwa penggunaan XAML oleh Microsoft di dalam Silverlight bertujuan untuk memperkenalkan konten di dalam world wide web yang hanya dapat dilayani dari platform Windows.

Namun XAML juga dapat dilihat di browser non-Microsoft pada Windows dan Mac. Microsoft juga menyediakan dukungan langsung untuk pengembangan Silverlight Viewer untuk GNU/Linux bernama Moonlight.[9]

Catatan kaki

  1. "Microsoft adds XAML to 'Open Specification' list - Software Development Times On The Web". Diarsipkan dari asli tanggal 2008-12-11. Diakses tanggal 2009-01-12.
  2. "Rob Relyea: January 2004 - Posts". Diarsipkan dari versi aslinya tanggal 2007-10-11. Diakses tanggal 2009-01-12.
  3. "MSDN forum post by the WF product manager". Diarsipkan dari asli tanggal 2007-12-27. Diakses tanggal 2009-01-12.
  4. RuleML and BPEL are other examples of XML-based declarative logic languages
  5. Guthrie, Scott (2008-02-22). "Silverlight Tutorial Part 7: Using Control Templates to Customize a Control's Look and Feel". Diarsipkan dari versi aslinya tanggal 2013-09-27. Diakses tanggal 2008-03-08.
  6. Microsoft XAML Overview page at XAML Overview (Root element and xmlns) Diarsipkan 2017-01-27 di Wayback Machine.
  7. "Windows Presentation Foundation on the Web: Web Browser Applications - MSDN". Diarsipkan dari versi aslinya tanggal 2018-09-07. Diakses tanggal 2009-01-12.
  8. "Microsoft runs into EU Vista charges". itwire.com. 2007-01-28. Diarsipkan dari asli tanggal 2008-09-13. Diakses tanggal 2008-04-16.
  9. Foley, Mary Jo (2007-09-25). "Microsoft officially 'extends support' for Novell's Silverlight Linux port". zdnet.com. Diarsipkan dari asli tanggal 2012-03-02. Diakses tanggal 2007-10-13.

Pranala luar

Arsitektur
Common Language
Infrastructure (CLI)
Bahasa CLI
Common1
Lainnya2
Komponen
Implementasi lain
Perbandingan
  • 1 Bahasa yang telah didukung, sedang didukung, atau akan didukung di Visual Studio atau .NET Framework.
  • 2 Bahasa non-akademik atau penelitian dengan basis pengguna yang relatif besar.
Konten disalin dari Wikipedia Bahasa Indonesia (lisensi CC BY-SA) Lihat versi asli di Wikipedia

Rekomendasi Pilihan