2014-10-29 4 views
0

java에서 xsd에 대해 xml의 유효성을 검사하려고합니다. XSD에서 필드 (tax_id) 중 하나가 manadatory 요소로 정의됩니다. 하지만 내 시나리오에서는 xml을 다른 구성 요소에 전달하고 해당 구성 요소는 manadatory 필드 (tax_id)를 채 웁니다. xml을 다음 구성 요소로 보내기 전에 xsd에 대해 xml의 유효성을 검사해야합니다. XSD 요소 tax_id가 필수 요소로 정의되어 있으므로 필수 요소 (tax_id)를 채우지 못하는 예외가 발생합니다. tax_id를 옵션 필드로 지정하여 새 xsd를 만들 수 있지만이 경우 xsds가 2 개가됩니다.자바에서 xsd에서 몇 가지 요소 유효성 검사를 건너 뛰는 방법

java에서 유효성을 검사하는 동안 몇 가지 요소를 건너 뛰거나 무시할 수있는 방법이 있습니까?

답변

1

일반적으로 아니오. XSD의 목적은 유효하기 위해 문서가 충족해야하는 규칙을 지정하는 것입니다. 이러한 규칙 중 일부는 무시하거나 건너 뛸 수 없습니다. 가능한 경우 다른 문제가있을 수 있습니다. 예를 들어, 필수 요소가 실제로 선택 사항 (또는 될 수있는 경우)이라면 기술적으로는 다른 요소가 포함될 것으로 예상되는 요소는 더 느슨한 유효성 검사에서 비어있을 수 있습니다. - 첫 번째 구성 요소가 빈 tax_id와 XML을 채 웁니다 확인

  1. 변경 워크 플로우 : 당신의 상황에서

    , 당신은 아마 두 가지 옵션이 있습니다. 그런 다음 유효성을 검사합니다.
  2. 두 번째 스키마 - 처리의 "파이프 라인"에 이전에 도입 한 것으로, tax_id이 필요하지 않습니다. 그런 다음에 대해 검증하십시오.
관련 문제