Ce sunt 'xmlns' și 'xsi:schemaLocation' în fișierele XML?


Data publicării:18 ianuarie 2021.



INFOMARTION > Ce sunt 'xmlns' și 'xsi:schemaLocation' în fișierele XML?

Prezentare generală.

Veți vedea "xmlns", "xsi:schemaLocation", etc. în fișierele XML și aș dori să vă explic ce înseamnă acestea.

Cuprins

  1. Ce este un fișier XML?
  2. rezumat

1. Ce este un fișier XML?

XML înseamnă Extensible Markup Language (limbaj de marcare extensibil) și este specificat de World Wide Web Consortium (W3C). Pentru specificații mai detaliate, altele decât "xmlns" și "xsi:schemaLocation", vă rugăm să consultați următoarele site-uri.

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

1-1. Ce sunt "xmlns" și "xsi:schemaLocation"?

Următorul exemplu este un exemplu de primă descriere într-un fișier XML atunci când se utilizează cadrul Spring pentru dezvoltarea de aplicații 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">

În concluzie, "xmlns" și "xsi:schemaLocation" sunt setări pentru definiții privind modul în care este scris XML. În dezvoltarea aplicațiilor Java, cadrul Spring efectuează procesarea pe baza datelor conținute în acest fișier XML. Dacă nu există o definiție a modului de scriere a XML, este dificil să știi cum să îl scrii. Astfel, de exemplu, ei definesc că "puteți defini atributul id în tag-ul bean" și "puteți defini tag-ul constructor-arg în tag-ul interior al tag-ului bean".

1-2. Ce este xmlns?

xmlns se referă la "spațiul de nume XML". Pe scurt, un namespace este un ID, adică o valoare de identificare unică.

Dacă luăm exemplul anterior "xmlns="http://www.springframework.org/schema/beans"" ca exemplu, "http://www.springframework.org/schema/beans" este spațiul de nume, adică valoarea care identifică în mod unic Valoarea este.

Este un URL, dar când programul îl procesează, nu este procesat ca un URL, ci ca un ID. Prin urmare, procesul se realizează prin găsirea fișierului XSD (fișier de definiție XML) în care "http://www.springframework.org/schema/beans" este definit ca ID și prin verificarea dacă este descris așa cum este definit în fișierul XSD. Procesul se realizează prin căutarea unui fișier XSD (fișier de definiție XML) cu "" definit ca ID și verificarea dacă este descris așa cum este definit în fișierul XSD. În cazul Spring, fișierul XSD este, de asemenea, stocat ca un set în fișierul jar.

1-3. Ce este "xmlns:xsi"?

'xmlns', 'xmlns:xsi' etc., pentru a evita definițiile duplicate. De exemplu, în cazul în care aceeași etichetă de eșantionare este definită în "xmlns" și "xmlns:xsi", nu este posibil să se determine în ce definiție este descrisă. Prin urmare, este posibil să se facă distincția între definițiile "xmlns" și "xmlns:xsi" pentru "sample" și "xsi:sample" pentru "xmlns:xsi". Cu alte cuvinte, cele cu "xmlns="~"" sunt valorile implicite, în timp ce cele cu "xmlns:xxxx="~"" trebuie să fie definite ca "xxxx:tag name".

2. rezumat

'xmlns' și 'xsi:schemaLocation' sunt setări ale fișierului de definiție pentru scrierea corectă a fișierelor XML.

Vă mulțumim că ne-ați urmărit până la sfârșit.