programing

xmlns, xmlns:xsi, xsi:schemaLocation 및 targetNamespace?

telebox 2023. 9. 24. 12:46
반응형

xmlns, xmlns:xsi, xsi:schemaLocation 및 targetNamespace?

다음 XML 조각의 경우:

<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
                             http://maven.apache.org/xsd/maven-4.0.0.xsd">

는 을 합니까?xmlns,xmlns:xsi,그리고.xsi:schemaLocation속성이 정확히 의미가 있습니까?그들은 어떻게 연관되어 있습니까?가가 :

2 의 .xsi:schemaLocation=

  1. http://maven.apache.org/POM/4.0.0 (우연히 다음과 같습니다.xmlns방문 시 404 오류가 발생합니다.)
  2. http://maven.apache.org/xsd/maven-4.0.0.xsd (실제 XSD 문서입니다.)

만약 1이 존재하지 않는다면, 왜 아직도 그것을 거기에 놓습니까?

XML 및 XML 스키마(XSD)의 네임스페이스 관련 특성

  • xmlnsXML 권장 사항에서 W3C 네임스페이스의 일부입니다.

    접두사 xmlns는 네임스페이스 바인딩을 선언하는 데만 사용되며 정의에 따라 네임스페이스 이름 http://www.w3.org/2000/xmlns/ 에 바인딩됩니다.

    예를 들어, 다음과 같이 선언합니다.http://maven.apache.org/POM/4.0.0는 메이븐 프로젝트의 요소에 대한 기본 네임스페이스입니다.

  • xmlns:xsi 표준 네임스페이스 접두사를 선언합니다(xsi ) XSD 에서:http://www.w3.org/2001/XMLSchema-instance

    XML 스키마: 구조는 XML 문서에 직접 사용하기 위한 여러 특성도 정의합니다.이러한 특성은 네임스페이스 이름이 http://www.w3.org/2001/XMLSchema-instance 인 다른 네임스페이스에 있습니다.간단히 설명하기 위해, 이 명세서의 텍스트와 예제는 접두사 xsi: 를 사용하여 이 뒤의 네임스페이스를 나타냅니다. 실제로는 어떤 접두사라도 사용할 수 있습니다.

    당신의 예에서, 그것은 전통적인 구속력을 선언합니다.xsi:ohttp://www.w3.org/2001/XMLSchema-instance이를 와 설정할 수 있습니다.

    • xsi:type 에서는 XML 인스턴스가 XSD를 통해서가 아니라 요소 유형 정보를 직접 연결할 수 있도록 합니다.XSD에서 xsi:type을 사용하여 XML 요소의 값을 제한하는 방법을 참조하십시오.

      예를 들어,xsi:type되지 않음;음에 됨;xsi.

    • xsi:nil 는 XSD에서 허용하지 않았을 수도 있는 빈 요소를 유효한 것으로 간주할 수 있도록 허용합니다.

      예를 들어,xsi:nil되지 않음;음에 됨;xsi.

    • xsi:schemaLocation XSD와 XML 문서를 연결하는 방법에 대한 힌트를 XML 프로세서에 제공합니다.xsi:schemaLocationxsi:noNamespaceSchemaLocation네임스페이스가 없는 경우.

      에서는 네임스페이스가 있으므로 적절하게 사용합니다.xsi:schemaLocation, 공간으로 구분된 네임스페이스 XSD-location-URI입니다. 예를 들어 네임스페이스를 사용합니다.http://maven.apache.org/POM/4.0.0, namespaces는 검색필요가 없는 어휘적 명명 구조체입니다.예에서도 XSD-location-URI를 사용하고 있습니다.http://maven.apache.org/xsd/maven-4.0.0.xsd, 원래대로 되짚어 볼 수 있는 거죠

      예제에서 네임스페이스를 사용하지 않은 경우 다음을 사용합니다.xsi:noNamespaceSchemaLocation, 이 값은 단일 XSD-location-URI로, 의도된 XSD의 위치를 암시하고 검색할 수 있어야 합니다.

  • targetNamespace 의 속성입니다.xs:schemaXSD에서 관리할 XML 문서 인스턴스의 루트 요소의 네임스페이스를 지정하는 XSD의 루트 요소입니다.XML 문서의 루트 요소의 기본 네임스페이스 또는 명시적 네임스페이스와 일치해야 합니다.

xmlns기본 네임스페이스를 정의합니다. 여기서 프로젝트 노드 내의 모든 노드와 네임스페이스가 없는 alias가 다음에 있을 것입니다.http://maven.apache.org/POM/4.0.0기본적으로 네임스페이스입니다.

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"네임스페이스를 정의합니다.http://www.w3.org/2001/XMLSchema-instance, 새로운 가명을 지어주는 거죠xsi

xsi:schemaLocation속성입니다.schemaLocation"http://www.w3.org/2001/XMLSchema-instance"네임스페이스.여기에는 네임스페이스 URI와 해당 네임스페이스의 xsd-schema 파일에 대한 스키마 위치 링크와 같은 값 쌍이 포함됩니다.정의된 네임스페이스 URI마다 하나의 xsd 파일을 포함하는 여러 쌍의 값을 포함할 수 있습니다.링크를 의미합니다.http://maven.apache.org/xsd/maven-4.0.0.xsd에는는 xsd합니다에 대한 스키마가 되어 있습니다.http://maven.apache.org/POM/4.0.0네임스페이스.

언급URL : https://stackoverflow.com/questions/34202967/xmlns-xmlnsxsi-xsischemalocation-and-targetnamespace

반응형