【问题标题】:How to convert yang to xml如何将yang转换为xml
【发布时间】:2023-04-10 02:17:01
【问题描述】:

我想将 yang 转换为 xml 格式。 如果有任何工具可用,请告诉我。

我尝试使用 pyang yin 格式,它提供 xml 格式但不是所需的格式。

生成的xml: 例如:

<container name="password">
      <leaf name="enc-type">
        <type name="enumeration">
          <enum name="clear">

要求的格式:

<container>
   <enc-type>
    </en-type>
  </container>

【问题讨论】:

    标签: ietf-netmod-yang


    【解决方案1】:

    这里你在 github 上有一个项目可以将 yang 模型转换为 xml https://github.com/vhosakot/yang_to_xml 您还可以将 xml 转换为 yang 模型。

    【讨论】:

      【解决方案2】:

      YIN format 是 YANG 模型的标准 XML 表示,在与 YANG 本身相同的 RFC 中定义。您可能应该使用它而不是任何内部 XML 格式。

      您想要实现的是 YIN(带有 container 元素)和实例文档(对应于 leaf 名称的enc-type 元素)的奇怪混合。我怀疑您的定义是否足够完整,无法确定您的真正意思,我也怀疑是否有任何现成的工具可以开箱即用。

      我建议坚持使用 YIN,或者,如果绝对必要,为此创建自己的工具。

      【讨论】:

        【解决方案3】:

        您也可以使用 pyang。 [https://github.com/mbj4668/pyang][1]

        【讨论】:

          【解决方案4】:

          pyang你可以用,我也有这个要求,我用pyang就够了。

          pyang -f sample-xml-skeleton --sample-xml-skeleton-defaults -o output.xml input.yang
          

          以及pyang 格式帮助:

          $ pyang -h
          Usage: pyang [options] [<filename>...]
           
            -f FORMAT, --format=FORMAT
                                  Convert to FORMAT.  Supported formats are: yang, yin,
                                  dsdl, capability, depend, jsonxsl, jstree, jtox, name,
                                  omni, sample-xml-skeleton, tree, uml
           
            Sample-xml-skeleton output specific options:
              --sample-xml-skeleton-doctype=DOCTYPE
                                  Type of sample XML document (data or config).
              --sample-xml-skeleton-defaults
                                  Insert leafs with defaults values.
              --sample-xml-skeleton-annotations
                                  Add annotations as XML comments.
              --sample-xml-skeleton-path=SAMPLE_PATH
                                  Subtree to print
          

          【讨论】:

            猜你喜欢
            • 2019-01-29
            • 1970-01-01
            • 2015-08-10
            • 1970-01-01
            • 2019-12-13
            • 2011-01-20
            • 2020-11-14
            • 2015-01-13
            • 2018-03-28
            相关资源
            最近更新 更多