【问题标题】:What Python accessible tools can you use to generate XSD from an XML document?您可以使用哪些 Python 可访问工具从 XML 文档生成 XSD?
【发布时间】:2011-12-09 20:26:00
【问题描述】:

我正在寻找一种可以很好地与 Python 配合使用的工具。 除了我对Python的要求,我的问题和这个one一样:

“我正在寻找一种工具,它可以获取 XML 实例文档并输出相应的 XSD 模式。”

【问题讨论】:

    标签: python xml xsd reverse-engineering


    【解决方案1】:

    根据PyCharm docs 的说法,PyCharm 对此提供了便利。这不能完全由程序作为 API 访问。您最好将XML Schema Learner 用作单独的程序,因为它是一个命令行程序(子进程友好!)。

    【讨论】:

    【解决方案2】:

    您是否正在寻找类似pyxsd 的内容? (主要用于验证模式)或者PyXB? (可以生成基于 xml 的类)否则,我认为 [尚未] 有一个工具可以从 Python 中生成模式。您可以使用 xsd.exe 之类的东西按需执行吗?它必须是可编程的/可重复的吗?

    【讨论】:

    • 应该可以做我想做的事并从 Python 程序中访问 xsd.exe 等工具。我更喜欢使用 Python 模块之类的东西,因为它更易于使用且解决方案更优雅。 pyxsd/PyXB 似乎不能满足我的要求(据我所知,他们没有能力在给定 XML 文档的情况下生成模式)。
    【解决方案3】:

    目前,没有任何模块可以在您的 python 程序中运行并执行此转换。但是我认为从 XML 创建 XSD 模式的问题是一个工具问题。这是我将使用一次的功能,用于启动模式,但之后我将自己维护模式。通过读取单个 XML 文件,XSD 生成器将为真实模式创建一个起点,它无法推断 XSD 提供的所有功能和选项。 基本上,我认为不需要将此转换作为我的代码中的一个模块运行,每次 XML 更改时都会生成新的 XSD。毕竟,是模式定义了 XML,而不是相反。

    正如最终用户指出的那样,您可以使用 xsd.exe,但您可能还想查看其他工具,例如用于 Java 的trang(有点旧)和stylusstudio(XML 工具)。

    【讨论】:

      猜你喜欢
      • 2010-09-09
      • 1970-01-01
      • 2011-08-30
      • 2011-06-03
      • 1970-01-01
      • 2012-03-26
      • 2010-11-26
      • 1970-01-01
      • 2012-03-16
      相关资源
      最近更新 更多