Mis on 'xmlns' ja 'xsi:schemaLocation' XML-failides?


Avaldamise kuupäev:18. jaanuar 2021.



INFOMARTION > Mis on 'xmlns' ja 'xsi:schemaLocation' XML-failides?

Ülevaade.

XML-failides näete 'xmlns', 'xsi:schemaLocation' jne ja ma tahaksin selgitada, mida need tähendavad.

Sisukord

  1. Mis on XML-fail?
  2. kokkuvõte

1. Mis on XML-fail?

XML tähendab Extensible Markup Language (laiendatav märgistuskeel) ja on määratletud World Wide Web Consortiumi (W3C) poolt. Üksikasjalikumad spetsifikatsioonid peale "xmlns" ja "xsi:schemaLocation" leiate järgmistelt veebilehtedelt.

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

1-1. Mis on "xmlns" ja "xsi:schemaLocation"?

Järgmine näide on näide XML-faili esimesest kirjeldusest, kui kasutatakse Springi raamistikku Java-rakenduste arendamiseks.

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">

Kokkuvõttes on 'xmlns' ja 'xsi:schemaLocation' XMLi kirjutamise viisi määratluste seaded. Java-rakenduse arendamisel teostab Springi raamistik töötlemist selles XML-failis sisalduvate andmete põhjal. Kui puudub definitsioon selle kohta, kuidas XML-i kirjutada, on raske teada, kuidas seda kirjutada. Nii näiteks määratlevad nad, et "id atribuuti saab defineerida bean tag'is" ja "konstruktori-arg tag'i saab defineerida bean tag'i sisemises tag'is".

1-2. Mis on xmlns?

xmlns viitab 'XML nimeruumile'. Lühidalt öeldes on nimeruum ID, st üheselt identifitseeriv väärtus.

Võttes eelneva näite "xmlns="http://www.springframework.org/schema/beans"" näiteks, on "http://www.springframework.org/schema/beans" nimeruum, st väärtus, mis üheselt identifitseerib Väärtus on.

See on URL, kuid kui programm seda töötleb, ei töödelda seda mitte URL-i, vaid ID-na. Seetõttu otsitakse XSD-faili (XML-määratlusfaili), milles on identifikaatorina määratletud "http://www.springframework.org/schema/beans", ja kontrollitakse, kas see on kirjeldatud XSD-failis määratletud viisil. Protsessi käigus otsitakse XSD-faili (XML-määratlusfaili), mille ID on määratletud "", ja kontrollitakse, kas see on kirjeldatud XSD-failis määratletud viisil. Springi puhul salvestatakse ka XSD-faili komplektina jar-faili.

1-3. Mis on "xmlns:xsi"?

'xmlns', 'xmlns:xsi' jne, et vältida topeltmääratlusi. Näiteks kui sama näidissilt on defineeritud "xmlns" ja "xmlns:xsi", ei ole võimalik kindlaks teha, kumma määratlusena seda kirjeldatakse. Seetõttu on võimalik eristada "xmlns" ja "xmlns:xsi" määratlusi "sample" ja "xsi:sample" määratlust "xmlns:xsi". Teisisõnu, need, millel on "xmlns="~"", on vaikimisi väärtused, samas kui need, millel on "xmlns:xxxx="~"", tuleb määratleda kui "xxxx:tag name".

2. kokkuvõte

'xmlns' ja 'xsi:schemaLocation' on XML-failide korrektseks kirjutamiseks vajalikud määrangud.

Aitäh, et vaatasite kuni lõpuni.