1

How to define type inside the element in XML Schema rather than referencing in the element?

 <xs:element name="Payment" type="my:Payment"/>

But I want to do something like below...

<xs:element name="Payment">
  <type="my:Payment"/>
</element>

But getting syntax error.

kjhughes
  • 106,133
  • 27
  • 181
  • 240

1 Answers1

0

In XSD, you can reference a globally-defined1 type as you show in your first example,

<xs:element name="Payment" type="my:Payment"/>

or use a locally-defined, anonymous type, not like you show,

<xs:element name="Payment">
  <type="my:Payment"/>
</element>

but rather, for example,

<xs:element name="Payment">
  <xs:complexType>
    <xs:sequence>
      <xs:element name="Amount"/>
      <xs:element name="Date"/>
    </xs:sequence>
  </xs:complexType>
</element>

Note that such locally defined types are anonymous and cannot be reused.

See also


1 See How to reference global types in XSD? for a detailed example using namespaces.

kjhughes
  • 106,133
  • 27
  • 181
  • 240