안녕하세요, 저는 XSD 및 XML에 초보자입니다. 스키마에 대해 유효성을 검사하는 다음 XML 메시지가 있습니다. 다른 온라인 편집기를 사용하고 있습니다. 예를 들어 editor입니다. XML 구조의 유효성을 검사하고 있지만 문제는 문자열에서 부동 요소의 유형을 변경하면 여전히 XML 구조의 유효성을 검사한다는 것입니다. 그래서 이것은 내 XSD가 정확하지 않다는 것을 혼란스럽게합니다.XSD로 XML 유효성 검사를 실패하는 방법
XML 파일 :
<?xml version="1.0" encoding="UTF-8"?>
<credentials xmlns:cdm="http://com.example/test/current">
<cdm:username>jawad</cdm:username>
<cdm:password>jawad123</cdm:password>
</credentials>
XSD 파일 :
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:cdm="http://com.example/test/current"
xmlns = "http://com.example/test/current"
elementFormDefault="qualified"
attributeFormDefault="unqualified">
<xs:element name="credentials"></xs:element>
<xs:complexType name="credentials">
<xs:sequence>
<xs:element name="username" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="password" type="xs:string" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:schema>
참고 :
난에 "부동" "이름"요소의 유형을 변경하는 경우, 편집기는 유효성 검사에 실패했음을 나타내는 오류를 표시해야하지만 아직 유효성을 검사하고 있으므로 내 xsd에 문제가있는 것입니다. 스키마 유효성 검사의 개념을 이해하지 못합니다.
감사합니다. targetNamespace를 놓고 위에서 말한 것처럼 요소의 유형을 정의하면 해결됩니다. 이제 제대로 검증됩니다. – user3141034
@ user3141034 문제가 해결 되었다면 이것을 답으로 표시해야합니다 – simonalexander2005