加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

xml – 从XSD创建Golang结构

发布时间:2020-12-16 07:48:44 所属栏目:百科 来源:网络整理
导读:我想从XSD(Structure XSD)创建一个Golang结构. 我已经阅读了推荐使用go-xsd的generate Go structs from XSD帖子,但是我已经下载了go-xsd并安装了xsd-makepkg而且我无法生成我的结构. 我在做什么? xsd-makepkg -basepath =“/ Users / XSD_Access /” – goi
我想从XSD(Structure XSD)创建一个Golang结构.

我已经阅读了推荐使用go-xsd的generate Go structs from XSD帖子,但是我已经下载了go-xsd并安装了xsd-makepkg而且我无法生成我的结构.

我在做什么?

xsd-makepkg -basepath =“/ Users / XSD_Access /” – goinst = false

-xsd-makepkg:它是从go-xsd-pkg开始创建的二进制文件
-basepath:包含我想要转换为struct的Structure XSD的路由.
-goinst:我没有安装go-buildrun,我认为它不是必要的,因为这个原因是ser false

命令的结果是什么?

包含所有关注者XML包装器的其他文件夹的文件夹($GOPATH /usr/Users / XSD_Access /)

> docbook.org
> docs.oasis-open.org
> kbcafe.com
> khronos.org
> schemas.opengis.net
> thearchitect.co.uk
>用户
> www.w3.org

结构XSD

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
   <xs:element name="Request" type="Request"/>
   <xs:complexType name="Request">
      <xs:annotation>
         <xs:documentation xml:lang="sp"><![CDATA[
        Comment xxxxx
     ]]></xs:documentation>
  </xs:annotation>
  <xs:sequence>
     <xs:element name="idOne" type="xs:string" minOccurs="0" maxOccurs="1">
      <xs:annotation>
     <xs:documentation xml:lang="sp"><![CDATA[Comment xxxxx
     ]]></xs:documentation>
      </xs:annotation>
    </xs:element>
         <xs:element name="idTwo" type="xs:string" minOccurs="0" maxOccurs="1">
  <xs:annotation>
     <xs:documentation xml:lang="sp"><![CDATA[Comment xxxxxx
     ]]></xs:documentation>
  </xs:annotation>
</xs:element>
  </xs:sequence>
   </xs:complexType>
</xs:schema>

任何人都可以告诉我我做错了什么或我错过了哪一步它不让我从我的Structure XSD创建一个结构?

提前致谢

xsd-makepkg希望从某种网络服务器下载xsd文件.

起初我也对此感到困惑,因为文档提到了从本地文件构建,但只有在指定的文件已经下载时才有效.

-basepath =“”确定将这些文件下载到的位置,以及生成的.go文件的放置位置

你要找的是-uri =“”的论点. -uri =“”确定要下载和处理的文件.该参数采用以空格分隔的uris列表,http://是可选的.

使其与本地文件一起使用的快速而肮脏的方法是从本地Apache实例提供文件,然后将程序指向localhost.当然,假设您正好运行Web服务器.

例如:

mv *.xsd /var/www/html
cd /var/www/html
for xsd in *; do xsd-makepkg -uri="127.0.0.1/$xsd"; done

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读