【问题标题】:XML schema: Oxygen: Cannot resolve ... 'type definition' componentXML 架构:氧气:无法解析 ...“类型定义”组件
【发布时间】:2014-11-14 23:32:55
【问题描述】:

我是 xml 新手,我尝试创建一些复杂的类型。我试图在 Oxygen 中验证我的 .xsd,但我得到“无法将名称‘状态’解析为 (n)‘类型定义’组件。10:70” 我真的不明白为什么。甚至在http://www.w3schools.com/schema/schema_complex.asp 中的最后一个示例之类的教程代码中也会发生这种情况。

我试图在此处包含我的代码,但它一直告诉我“您的帖子似乎包含格式不正确的代码”。我尝试了所有能找到的方法来包含我的代码,但没有任何效果。无论如何,就像我说的那样,上面的例子也会发生这种情况(包围: <xs:schema version="1.0" xmlns="http://www.w3schools.com" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> ...这里是示例... </xs:schema>

[编辑]

好的。逐行包含代码后,它就可以工作了。这里是:

<xs:schema version="1.0" 
           xmlns="http://www.w3schools.com" 
           xmlns:xs="http://www.w3.org/2001/XMLSchema" 
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <xs:complexType name="state_machine">
    <xs:sequence>
      <xs:element name="state" type="state"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="state">
    <xs:sequence>
      <xs:element name="Superclass" type="xs:string"/>
      <xs:element name="transition" type="transition"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="transition">
    <xs:sequence>
      <xs:element name="from" type="xs:string"/>
      <xs:element name="to" type="xs:string"/>
    </xs:sequence>
  </xs:complexType>
</xs:schema>

请帮忙!!

【问题讨论】:

  • 抱歉,您做错了什么,但从信息中无法判断可能是什么。
  • 我终于设法包含了我的代码。不知何故,我只能逐行包含它。任何的想法?在“state_machine”类型中,它看不到状态,而在状态下,它看不到转换。我定义类型的顺序似乎对此没有任何影响

标签: xml xsd xsd-validation oxygenxml


【解决方案1】:

删除命名空间声明

xmlns="http://www.w3schools.com"

定义默认命名空间会影响引用名称的属性(如 type="state"),但不会影响声明名称的属性(如 name="state")。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-06-20
    • 1970-01-01
    • 1970-01-01
    • 2015-02-26
    • 1970-01-01
    • 2020-08-29
    • 1970-01-01
    相关资源
    最近更新 更多