Apa yang dimaksud dengan 'xmlns' dan 'xsi:schemaLocation' dalam file XML?


Tanggal Publikasi:18 Januari 2021.



INFOMARTION > Apa yang dimaksud dengan 'xmlns' dan 'xsi:schemaLocation' dalam file XML?

Ikhtisar.

Anda akan melihat 'xmlns', 'xsi:schemaLocation', dll. dalam file XML, dan saya ingin menjelaskan apa artinya.

Daftar Isi

  1. Apa itu file XML?
  2. ringkasan

1. Apa itu file XML?

XML adalah singkatan dari Extensible Markup Language dan ditentukan oleh World Wide Web Consortium (W3C). Untuk spesifikasi yang lebih rinci selain "xmlns" dan "xsi:schemaLocation", silakan merujuk ke situs-situs berikut ini.

https://www.w3.org/TR/xml/

1-1. Apakah "xmlns" dan "xsi:schemaLocation"?

Contoh berikut adalah contoh deskripsi pertama dalam file XML ketika menggunakan kerangka kerja Spring untuk pengembangan aplikasi Java.

applicationContext.xml


<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:util="http://www.springframework.org/schema/util"
    xmlns:aop="http://www.springframework.org/schema/aop"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
        http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-2.0.xsd
        http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.1.xsd">

Kesimpulannya, 'xmlns' dan 'xsi:schemaLocation' adalah pengaturan untuk definisi tentang bagaimana XML ditulis. Dalam pengembangan aplikasi Java, kerangka kerja Spring melakukan pemrosesan berdasarkan data yang terkandung dalam file XML ini. Jika tidak ada definisi tentang bagaimana menulis XML, sulit untuk mengetahui bagaimana menulisnya. Jadi, misalnya, mereka mendefinisikan bahwa "Anda dapat mendefinisikan atribut id dalam tag bean" dan "Anda dapat mendefinisikan tag konstruktor-arg dalam tag bagian dalam tag bean".

1-2. Apa itu xmlns?

xmlns mengacu pada 'namespace XML'. Secara singkat, namespace adalah ID, yaitu nilai pengidentifikasian yang unik.

Mengambil contoh sebelumnya dari "xmlns="http://www.springframework.org/schema/beans"" sebagai contoh, "http://www.springframework.org/schema/beans" adalah namespace, yaitu nilai yang secara unik mengidentifikasi Nilainya adalah.

Ini adalah URL, tetapi ketika program memprosesnya, ini tidak diproses sebagai URL, tetapi sebagai ID. Oleh karena itu, proses dilakukan dengan menemukan file XSD (file definisi XML) di mana "http://www.springframework.org/schema/beans" didefinisikan sebagai ID dan memeriksa apakah itu dijelaskan seperti yang didefinisikan dalam file XSD. Proses ini dilakukan dengan mencari file XSD (file definisi XML) dengan "" yang didefinisikan sebagai ID dan memeriksa apakah itu dideskripsikan seperti yang didefinisikan dalam file XSD. Dalam kasus Spring, file XSD juga disimpan sebagai satu set dalam file jar.

1-3. Apa yang dimaksud dengan "xmlns:xsi"?

'xmlns', 'xmlns:xsi', dll. untuk menghindari definisi duplikat. Misalnya, jika tag sampel yang sama didefinisikan dalam "xmlns" dan "xmlns:xsi", tidak mungkin untuk menentukan definisi mana yang dijelaskan. Oleh karena itu, dimungkinkan untuk membedakan antara definisi "xmlns" dan "xmlns:xsi" untuk "sample" dan "xsi:sample" untuk "xmlns:xsi". Dengan kata lain, mereka yang memiliki "xmlns="~"" adalah nilai default, sementara mereka yang memiliki "xmlns:xxxx="~"" harus didefinisikan sebagai "xxxx:nama tag".

2. ringkasan

'xmlns' dan 'xsi:schemaLocation' adalah pengaturan file definisi untuk menulis file XML dengan benar.

Terima kasih telah menonton sampai akhir.