topical media & game development

talk show tell print

professional-xml-23-syntax-repeat.xml / xml



  <?xml version="1.0" encoding="UTF-8"?>
  <html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:xf="http://www.w3.org/2002/xforms"
    xmlns:ev="http://www.w3.org/2001/xml-events"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    xmlns:ex="someURI">
    <head>
      <title>Repeating sections</title>
      <xf:model>
        <xf:instance>
          <ex:employees>
            <ex:employee><ex:name>Foo deBar</ex:name><ex:title>Developer</ex:title></ex:employee>
            <ex:employee><ex:name>Ratvin Ratvor</ex:name><ex:title>Marketing Manager</ex:title></ex:employee>
            <ex:employee><ex:name>John Bull</ex:name><ex:title>Brewmaster</ex:title></ex:employee>
          </ex:employees>
        </xf:instance>
      </xf:model>
    </head>
    <body>
      <p>
        <xf:repeat id="empitem" nodeset="ex:employee">
          <xf:input ref="ex:name">
            <xf:label>Name: </xf:label>
          </xf:input>
          <xf:input ref="ex:title">
            <xf:label>Title: </xf:label>
          </xf:input>
        </xf:repeat>
        <xf:trigger>
          <xf:label>Add</xf:label>
          <xf:action ev:event="DOMActivate">
            <xf:insert nodeset="ex:employee" position="after" at="count(//ex:employee)" />
          </xf:action>
        </xf:trigger>
          <xf:trigger>
            <xf:label>Delete</xf:label>
            <xf:delete ev:event="DOMActivate" nodeset="ex:employee" at="index('empitem')" />
          </xf:trigger>
      </p>
    </body>
  </html>
  


(C) Æliens 20/2/2008

You may not copy or print any of this material without explicit permission of the author or the publisher. In case of other copyright issues, contact the author.