Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用schema/XSD加载拼花地板数据以验证XML_Xml_Scala_Apache Spark_Xsd_Parquet - Fatal编程技术网

使用schema/XSD加载拼花地板数据以验证XML

使用schema/XSD加载拼花地板数据以验证XML,xml,scala,apache-spark,xsd,parquet,Xml,Scala,Apache Spark,Xsd,Parquet,我有一些XML文件需要存储在XSD文件中给定的结构中,格式为parquet/avro。XML/XSD文件包含重复的标记标题(可能出现两次),因此我选择使用Parquet,因为Avro不支持这一点 我想用XML检查它是否有效(针对XSD文件),如果存在XML中不存在的XSD元素,我只想将该值存储为NULL 在我看来,我有两个选择: 1) 使用scala对照xsd检查xml,如果有效,则(以某种方式)使用NULL填充任何差异并存储为拼花 2) 检查xml有效性,然后使用XSD文件拼花版本的模式插入x

我有一些XML文件需要存储在XSD文件中给定的结构中,格式为parquet/avro。XML/XSD文件包含重复的标记标题(可能出现两次),因此我选择使用Parquet,因为Avro不支持这一点

我想用XML检查它是否有效(针对XSD文件),如果存在XML中不存在的XSD元素,我只想将该值存储为NULL

在我看来,我有两个选择:

1) 使用scala对照xsd检查xml,如果有效,则(以某种方式)使用NULL填充任何差异并存储为拼花

2) 检查xml有效性,然后使用XSD文件拼花版本的模式插入xml文件的拼花数据


我也不完全确定该怎么做,因此我希望能有一个指针来确保我不会浪费时间走错方向。

我没有找到我想要的解决方案,但使用unix进行验证非常容易

xmllint -schema xsdfile xmlfile --noout