Как сделать атрибут пространства имен с помощью Groovy XML Builder - PullRequest
2 голосов
/ 28 августа 2009

Как я могу создать атрибут с пространством имен? Чтобы получить следующий вывод?

<tns:catalogItem xsi:type="specialItem" />

Вот как я это делаю:

catalogItem( type:"specialItem");

Но при этом создается атрибут без пространства имен, поэтому он недействителен

<tns:catalogItem type="tns:specialItem" />

поэтому я ищу что-то вроде этого (с инициализированным xsi для ns):

catalogItem( xsi.type:"specialItem");

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

chrsk

1 Ответ

3 голосов
/ 28 августа 2009

Этот Groovy код:

def xml = new MarkupBuilder(writer)
xml.'rec:records'('xmlns:rec': 'http://groovy.codehaus.org') {
  car(name:'HSV Maloo', make:'Holden', year:2006) {
    country('Australia')
    record(type:'speed', ' Truck with speed of 271kph')
  }
}

результатов в этом XML:

<rec:records xmlns:rec='http://groovy.codehaus.org'>
  <car name='HSV Maloo' make='Holden' year='2006'>
    <country>Australia</country>
    <record type='speed'> Truck with speed of 271kph</record>
  </car>
</rec:records>

Подробнее здесь .

...