Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.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
Python rdflib和NCName错误_Python_Xml_Neo4j_Rdf_Rdflib - Fatal编程技术网

Python rdflib和NCName错误

Python rdflib和NCName错误,python,xml,neo4j,rdf,rdflib,Python,Xml,Neo4j,Rdf,Rdflib,由于RDF/XML文件中未遵守NCName约定,因此遇到错误。很明显,它没有受到尊重,而且在很多地方都有。有没有办法解决这个问题,因为我对输出文件没有任何控制权 基本代码如下所示: 从rdflib.graph导入图形 g=图() g、 解析(“extract.xml”) 错误如下所示: 回溯(最近一次呼叫最后一次): 令人不快的是麋鹿名字中的冒号。文档中还有很多其他类似的例子,还有其他问题,比如用数字引导 <cim:Name rdf:ID="ELK_05-09-14_10:39:59_

由于RDF/XML文件中未遵守NCName约定,因此遇到错误。很明显,它没有受到尊重,而且在很多地方都有。有没有办法解决这个问题,因为我对输出文件没有任何控制权


基本代码如下所示:

从rdflib.graph导入图形
g=图()
g、 解析(“extract.xml”)
错误如下所示:

回溯(最近一次呼叫最后一次):

令人不快的是麋鹿名字中的冒号。文档中还有很多其他类似的例子,还有其他问题,比如用数字引导

<cim:Name rdf:ID="ELK_05-09-14_10:39:59_NAME">
        <cim:Name.IdentifiedObject rdf:resource="#ELK_05-09-14_10:39:59"/>
        <cim:Name.name>SecondaryCircuit__</cim:Name.name>
</cim:Name>

二次电路__

代码将开发成我可以导入neo4j的东西,因此,如果我在这方面完全错了,我欢迎任何其他方法。

您的源数据似乎无效(当然会认为它无效)。您需要修复生成数据的任何内容以生成有效的
rdf:ID
值,或者向数据提供程序报告错误并修复原始数据。是的,很明显,某些详细信息无效。我没有太多的选择,它是如何格式化,并必须采取它是。我已经按照建议和Etree查看了xmltodict。在Etree方面取得了良好的成功,没有关于NCName验证问题的窥视。他很乐意使用rdflib,因为它很适合这个问题,但不是今天。
<cim:Name rdf:ID="ELK_05-09-14_10:39:59_NAME">
        <cim:Name.IdentifiedObject rdf:resource="#ELK_05-09-14_10:39:59"/>
        <cim:Name.name>SecondaryCircuit__</cim:Name.name>
</cim:Name>