Jadi apa yang terjadi dengan XHTML5?
Halaman itu adalah konsep untuk xhtml5 dan html5? Jadi tidak ada perbedaan di antara kedua tipe ini?
Jadi apa yang terjadi dengan XHTML5?
Halaman itu adalah konsep untuk xhtml5 dan html5? Jadi tidak ada perbedaan di antara kedua tipe ini?
Jawaban:
Pada 2012 saat penulisan, jelas bahwa W3C memutuskan untuk meninggalkan XHTML untuk HTML 5. Keputusan ini dimotivasi oleh beberapa alasan:
Hanya sedikit orang yang benar-benar tertarik pada XHTML. Sebagian besar situs web ditulis dalam HTML biasa.
Bahkan lebih sedikit yang benar-benar mengerti tentang XHTML dan bagaimana menggunakannya. Terlalu banyak situs web yang berpura-pura melayani XHTML menggunakan header yang salah, alih-alih
Content-Type: application/xhtml+xml
.Bahkan ketika Anda sepenuhnya memahami apa XHTML itu dan apa yang harus menjadi header, masalahnya benar-benar rumit dengan beberapa browser jelek yang tidak menerima / mendukung
application/xhtml+xml
tipe konten. Ini berarti Anda harus mengubah tajuk sesuai dengan peramban.Bagian XML dari XHTML juga menyebabkan beberapa situasi aneh yang harus diselesaikan oleh pengembang. Salah satunya adalah
INVALID_STATE_ERR: DOM Exception 11
pesan yang muncul ketika Anda menetapkan teks yang berisi karakter HTML (sepertié
) ke elemen dalam halaman XHTML. Ketika Anda menemukan kesalahan ini dengan pesan yang sangat membantu dalam aplikasi web besar setelah melakukan permintaan AJAX, Anda benar-benar tidak tahu apakah itu kesalahan JQuery, AJAX, atau yang lainnya.Menulis kode HTML 5 tidak berarti mencampur tag di sekitar. Jika Anda bersemangat tentang XML dan XHTML, Anda masih dapat menulis kode HTML 5 yang akan terlihat sangat dekat dengan XML.
Pada masa awal ponsel, XHTML menarik untuk perangkat seluler yang tidak terlalu kuat. Parsing XML jauh lebih mudah daripada HTML. Sekarang, dengan perangkat mobile dual-core, itu benar-benar tidak masalah jika mereka harus mengurai XML yang valid bersih atau HTML kotor penuh dengan hacks dan tag campuran.
Spesifikasi Oktober 2014 menyebutkan sintaks XHTML . Untuk saat ini, tidak jelas apakah ada yang namanya bahasa XHTML baru (bukan sintaksis ), dan jika ada, apa yang akan menjadi posisi XHTML, atau adopsi standar XHTML baru oleh browser utama.
sumber
XHTML5 adalah sinonim untuk "HTML5 serialized sebagai XML".
Juga, ada dokumen yang bagus untuk menulis polyglots HTML5 (halaman, yang dapat diserialisasi baik sebagai HTML5 dan XML biasa) di sini:
http://dev.w3.org/html5/html-polyglot/html-polyglot.html#bib-HTML5
Dan bahkan validator!
http://html5.validator.nu/
Ini jarang disebut XHTML5 saat ini (dan mungkin bahkan lebih jarang digunakan), karena pada dasarnya masih HTML5, tetapi masih ada di sana.
Sederhananya: setiap perubahan ke spesifikasi HTML5 juga merupakan perubahan yang terkait dan tersirat ke XHTML5.
sumber
HTML5 adalah standar de facto dan de jure ! XHTML ada di sana, sebagai standar juga.
HTML5 - Kosa kata dan API terkait untuk HTML dan XHTML
Rekomendasi W3C 28 Oktober 2014
Judul standar berisi string "dan XHTML" , jadi, kita berbicara tentang keputusan akhir W3C untuk menggabungkan HTML dan XHTML menjadi satu standar tunggal ; dan standar ini menunjukkan cara membuat serial file HTML ke dalam file XHTML dan sebaliknya.
XHTML
bagian dan catatan penting:application/xhtml+xml
Memahami dan menggunakan
Seperti yang dirangkum oleh LF Sikos
Jadi, secara tegas (dan ditekankan oleh @vaxquis) "XHTML hanyalah sintaks untuk serialisasi XML", tidak ada DTD atau jenis skema XML lainnya .
Beberapa orang tidak suka mengatakan "XHTML5 is XHTML". Pertanyaan harus dibagi menjadi mini-FAQ tentang "kapan saya bisa menggunakannya sebagai XHTML". Ini adalah WIKI, mohon koreksi jika ada beberapa "kesalahpahaman" ...
Faq
Bisakah saya menggunakan XHTML5 sebagai "versi standar XHTML 2014"?
Ada beberapa masalah dalam "konversi HTML5-ke-XHTML5 / XHTML5-ke-HTML5 yang umum dan generik", Anda harus melakukan "pilihan pribadi" dan kehilangan informasi. Karena konteksnya akan menjadi jawaban yang berbeda:
Longgar berbicara : YA. Ada banyak contoh (sederhana) di mana pemetaannya sempurna dan dapat dibalik.
Sebenarnya : TIDAK. Lihat juga @vaxquis komentar di bawah dan jawaban lama di halaman ini. Beberapa masalah khas:
Dapatkah saya menggunakan serialisasi (tak kenal takut!) XHTML5 dengan XSLT, XPath, dll.?
Ya kamu bisa. Bahkan serialisasi fragmen.
Bisakah saya memvalidasi XHTML5?
Ya, tetapi tidak begitu cepat dan mudah daripada DTD yang lama ... Lihat validator kompleks, sebagai validator.nu
Bisakah saya menggunakan XHTML5 sebagai output non-terminal dalam rantai XSLT?
Ya kamu bisa. Mari kita jelaskan apa yang Anda bisa.
Beberapa kerangka kerja, seperti Cocoon , menggunakan " rantai XSLT ". Output HTML5 dan XHTML5 dapat digunakan sebagai "output terakhir dalam rantai" ... Tentu saja, dalam langkah perantara, HTML5 tidak dapat digunakan karena non-XML, tetapi XHTML5 dapat digunakan.
Masalah validasi di atas muncul kembali di sini: tidak ada konvensi yang kuat, sehingga, kadang-kadang, kurang jelasnya "struktur standar XHTML" muncul. Dalam situasi itu Anda harus memperhatikan "konvensi diri sendiri", dan konsisten.
Saat menggunakan DOMDocument halaman HTML5, dapatkah saya menggunakan
saveXML()
metode?Iya. Ini adalah situasi khas di mana rekomendasi serialisasi digunakan. XML akan valid, kode XHTML5 dipetakan dari keadaan HTML5 dan DOM yang asli ... Tetapi, dalam beberapa struktur, beberapa informasi dapat hilang, seperti yang dikomentari di atas.
sumber
Ya sayangnya XHTML hilang.
Menambahkan 1 alasan lagi untuk jawaban hebat MainMa:
Ketika XHTML dibuat, itu dimaksudkan untuk digunakan oleh WebApps untuk menyajikan konten terstruktur yang akan dipahami oleh perangkat lunak non-browser, yang tidak akan memiliki parser HTML tag-soup. Untuk ScreenReaders XHTML masih bagus, tetapi untuk semua jenis perangkat lunak lain, WebServices cocok dengan kebutuhan itu, dan mereka kebanyakan menggunakan XML atau JSON. SOAP sendiri memiliki Skema XML sendiri, lebih sederhana dari XHTML dan berorientasi operasi.
Sejauh yang saya tahu, tidak ada 1 WebApp di dunia yang menyajikan pesan HTTP yang sama untuk browser dan klien lainnya. Bahkan arsitektur REST, yang dimaksudkan untuk melayani representasi konten yang sama dalam beberapa tipe konten berdasarkan preferensi klien, tidak digunakan untuk melayani browser XHTML / feed.
Di Java EE misalnya, menggunakan Eclipse kita dapat menggunakan file perang unik yang menahan Servlets + JSPs untuk melayani HTML, bersama dengan Axis2 untuk melayani WebService. Lebih mudah untuk mengembangkan perangkat lunak terpisah yang ditujukan untuk browser dan WebService daripada memiliki perangkat lunak unik dan kompleks yang melayani semuanya.
Alasan utama penolakan REST adalah kerumitan (dan itu dimaksudkan untuk menjadi sederhana!) Untuk mengembangkan server yang menyajikan konten yang sama untuk semua jenis klien tanpa mengetahui apa pun tentangnya. Dan juga sulit untuk menangani kebutuhan Web yang berevolusi cepat, bersama dengan menjaga definisi stabil yang tidak akan memaksa klien non-browser diperbarui setiap kali XHTML berubah, katakan itu untuk menjaga XHTML valid ketika dibangun oleh banyak modul yang berbeda.
Dengan cara yang sama, sangat sulit untuk mengembangkan klien non-browser yang mem-parsing dokumen XHTML, meskipun valid, karena semua elemen XML yang dimaksudkan untuk menyusun tata letak yang dibuat oleh browser, dan tidak dimaksudkan untuk menyimpan konten.
Jika pengadopsi REST sudah mengeluh tentang kompleksitas XML SOAP, yang WAY lebih sederhana daripada XHTML yang dimaksudkan untuk browser, bayangkan betapa sulitnya menangani XHTML untuk beberapa jenis klien, server dan sisi klien.
Dalam praktiknya: gunakan HTML, seperti XML jika Anda mau, untuk membangun WebSites untuk browser, dan segala jenis solusi WebService untuk klien non-browser.
NAMUN, saya juga berpikir bahwa XHTML5 harus dibuat. XHTML 1.1 (ok, 1.0, 1.1 tidak dapat digunakan) akan menjadi usang dengan HTML5, dan kami masih membutuhkan validator yang menerima elemen HTML5 dan memvalidasi XML wellformedness.
sumber