XML 파일의 유효성을 검사하기 위해 Relax NG 스키마를 사용하고 싶습니다. 유효성 검사의 일환으로, 노드 집합에 공백이 없는지 확인하고 싶습니다. 처음 두 <emptyCheck>
노드를 확인하기 위해 예를 들어, 내가 좋아하는 것,하지만 세 번째와 네 번째 사람이 예에서 실패 :Relax NG를 사용하여 XML 노드가 비어 있고 공백이 없음을 확인하십시오.
<?xml version="1.0" encoding="UTF-8"?>
<testRoot>
<emptyCheck/>
<emptyCheck></emptyCheck>
<emptyCheck> </emptyCheck>
<emptyCheck>x</emptyCheck>
</testRoot>
다음은 NG 스키마가 거의 작동 휴식을 취하십시오. 위 예제 XML은 <emptyCheck>
의 네 번째 인스턴스에서는 실패하지만 세 번째 인스턴스에서는 실패합니다.
<?xml version="1.0" encoding="UTF-8"?>
<grammar ns="" xmlns="http://relaxng.org/ns/structure/1.0">
<start>
<element name="testRoot">
<oneOrMore>
<element name="emptyCheck">
<empty/>
</element>
</oneOrMore>
</element>
</start>
</grammar>
대부분의 XML 처리에서 공백 만있는 노드는 실제로 중요하지 않습니다. 여전히 코딩 스타일 가이드를 적용 할 수 있도록이 문제를 해결하고 싶습니다. 그렇다면 Relax NG 스키마를 설정하여 노드가 완전히 비어 있어야 할 때 노드에 공백이있을 경우 문서의 유효성을 검사하지 않도록 할 수 있습니까?
내가 사용하는 유효성 검사기는 산소 XML 편집기 (v13)와 함께 제공되는 것입니다. 이 솔루션은 예상대로 작동합니다. 감사. –