当前位置: 首页 > 知识库问答 >
问题:

定义一个XML元素,该元素必须为空且没有属性

沈飞翔
2023-03-14

我需要定义一个XML元素,它没有子元素或任何内容,也没有属性。

这就是我正在做的:

<xs:element name="myEmptyElement" type="_Empty"/>
<xs:complexType name="_Empty">
</xs:complexType>

这看起来很好,但我想知道是否有一种方法可以做到这一点,而不必声明复杂类型。另外,如果我的东西有什么问题,请告诉我。

预料到有人可能会好奇我为什么需要这样一个元素:它用于不需要任何参数值的SOAP操作。

共有2个答案

印宏阔
2023-03-14

另一个例子是:

<xs:complexType name="empty">
    <xs:sequence/>
</xs:complexType>
<xs:element name="myEmptyElement" type="empty>

<xs:element name="myEmptyElement">
    <xs:simpleType>
        <xs:restriction base="xs:string">
            <xs:enumeration value=""/>
        </xs:restriction>
    </xs:simpleType>
</xs:element>

或者

<xs:element name="myEmptyElement">
    <xs:complexType>
        <xs:complexContent>
            <xs:restriction base="xs:anyType"/>
        </xs:complexContent>
    </xs:complexType>
</xs:element>
徐鑫鹏
2023-03-14

(1)可以避免定义一个名为的xs:复杂类型

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="myEmptyElement">
    <xs:complexType/>
  </xs:element>
</xs:schema>

(2) 您可以使用xs:simpleType而不是xs:complexType

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="myEmptyElement">
    <xs:simpleType>
      <xs:restriction base="xs:string">
        <xs:maxLength value="0"/>
      </xs:restriction>
    </xs:simpleType>
  </xs:element>
</xs:schema>

(3) 您可以使用fixed=“”[信用证:@Nemo]

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="myEmptyElement" type="xs:string" fixed=""/>
</xs:schema>

(4) 但请注意,如果您避免提及内容模型:

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="myEmptyElement"/>
</xs:schema>

您将允许任何属性和任何内容在myemptyElement

 类似资料:
  • 问题内容: 我是React的新手,我想知道这里的标准是什么。 想象一下,我有一个像这样的反应路由器: 现在我想删除如果设置为的两条路线,因此一种理智的做法如下所示: 但是有两条路线,React返回错误: 表达式必须具有一个父元素。 我不想在这里使用多个ifs。React首选的处理方式是什么? 问题答案: 将它们放在一个数组中(也分配键): 使用最新的React版本,您也可以这样尝试 :

  • 我用一个形状元素作为视图的背景,做这个SO问题。我在用Android Studio,它告诉我... 解决了:原因是它不在文件夹中。 编辑:是的,我知道笔划部分不正确。

  • 问题内容: 我是angularJs的新手。我正在尝试创建包含输入元素和按钮的新指令。我想使用此指令在单击按钮时清除输入文本。 当我在html中使用指令时,出现以下错误: 的HTML: clearable_input.js: 我无法弄清楚如何实现这一目标。 问题答案: 好吧,这个错误是不言自明的。您的模板需要具有一个根,而您的必须具有两个根。解决此问题的最简单方法是将整个内容包装在a 或a中: 之前

  • 错误详细信息 生成环境 Android Studio 3.1.4 minSDKversion=21 目标SDKVersion=28 CompilesDKVersion=28 BuildToolsVersion=“28.0.2”

  • 如果你有一个列表=1,3,5,7,9,... 如果你试图找到列表中的前一个元素(即[t-1],第三个元素是3,即5之前的那个元素),那么这个符号与得到比该元素少一个l(即5-1=4)有什么不同 我有一个增长率的列表,我想要昨天的数据,但我得到的数据总是比今天的少 我认为最后一行的x-1才是问题所在。有什么想法吗?谢谢

  • 我正在使用Xerces库在文档中编写XML。为此,我使用OutputFormat类在XMLSerializer中传递OutputFormat的对象。但我所有的空xml元素都转换为自动关闭的xml元素。 我想要这个: 但它的到来就像 我尝试了以下代码: 有人能帮我解决这个问题吗。 谢谢