Как добавить атрибут к элементу в XSD - PullRequest
0 голосов
/ 08 декабря 2011

Я использую jibx для создания XML.у меня есть требование получить Xml, как показано ниже

<report>
  <info>
   <meta name="acntNo">11111111</meta> 
   <meta name="location">USA</meta> 
   <meta name="Id">2222222222</meta> 
  </info>
</report>

Мой вопрос заключается в том, как добавить атрибут name в мета complexElement Я получу значения атрибута имени и метатекста из кода Java.

Я пытался использовать

<xsd:complexType name="CareInfoType">
    <xsd:sequence>
        <!--  root of the meta -->
        <xsd:element name="meta" type="qdx:CareMetaInfo" minOccurs="1" maxOccurs="3">
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="CareMetaInfo">
    <xsd:attribute name="name" type="xsd:string" ></xsd:attribute>
</xsd:complexType>

Заранее спасибо

1 Ответ

1 голос
/ 08 декабря 2011

Вы должны использовать механизм xsd: simpleContent , чтобы добавить атрибут к элементу, который может содержать значения простых типов.Вы можете прочитать учебник здесь .Ниже приведен еще один пример

Схема

<xsd:complexType name="SizeType">
  <xsd:simpleContent>
    <xsd:extension base="xsd:integer">
      <xsd:attribute name="system" type="xsd:token"/>
    </xsd:extension>
  </xsd:simpleContent>
</xsd:complexType>

Пример

<size system="US-DRESS">10</size>
...