当我运行xmllint -schema c:\temp\CDASchemas\cda\Schemas\CDA.xsd testee_test_original.xml --noout
时,它会告诉我" testee_test_original.xml验证"。
好的,太棒了。
然而,我删除了整个<patient>
元素并再次运行它。 &#34; testee_test_original.xml验证&#34;
这是为什么?我认为这是XSD中的重点。如果没有,我还需要什么来实际验证CCD不仅格式良好,而且具有符合标准的所有必需数据?
答案 0 :(得分:1)
我猜你已经删除了patient元素,但没有删除了PatientRole的recordTarget(这是必需的)。在CDA,患者信息位于recordTarget(这是一个必需元素)内部,在PatientRole内部。
虽然如您所知,患者姓名应该是强制性的,但事实并非如此。我不是为什么,但可能是这样,因为在可以提供患者标识符(这是PatientRole的必需元素)但不是全名的情况下应该是有趣的。
希望有用。 塞马蒂