2012-11-06 38 views
4

我感兴趣的Python XML阅读符合这个模式输入文件结合: http://ddex.net/xml/ern/341/release-notification.xsd如何正确使用GenerateDS为DDEX XML绑定

这XSD取决于许多其他的。虽然,最重要的是: http://ddex.net/xml/20120404/ddexC.xsdhttp://ddex.net/xml/20120404/ddex.xsd

我的第一次尝试是通过使用generateDS。我能够成功地产生了释放notification.xsd结合,如果我使用--no-过程包括用:

./generateDS.py --no-process-includes -o release-notification.py release-notification.xsd 

然而,这给我留下了一个Python对象大多是无用的,因为大部分的复合类型的在ddexC.xsd中定义。

如果我尝试没有--no - 过程 - 包括我得到:

RuntimeError: Extension/restriction recursion detected. 
Suggest you check definitions of types ArtistRole and ArtistRole. 

定义中提到的是这个:

<xs:element name="ArtistRole" maxOccurs="unbounded" type="ddexC:ArtistRole"> 
.... 
<xs:complexType name="ArtistRole"> 
     <xs:simpleContent> 
     <xs:extension base="ddex:ArtistRole"> 
.... 

所以好像DDEX和ddexC以某种方式混淆命名空间并创建循环引用。

此处有任何建议吗?

回答

0

我已经为新版本消息创建了一个对象模型,作为DDEXUI的一部分我正在研究哪些可以帮助您,ddex模块应该为您提供可以使用的东西。我打算在某个时候将它剥离到一个单独的模块中。有关如何使用它的示例,请参阅测试目录。

相关问题