A More Flexible Schema

<?xml version="1.0"?>
<element name="SONG" xmlns="http://relaxng.org/ns/structure/1.0">
  <element name="TITLE">
    <text/>
  </element>
  <oneOrMore>
    <element name="COMPOSER">
      <text/>
    </element>
  </oneOrMore>
  <zeroOrMore>
    <element name="PRODUCER">
      <text/>
    </element>
  </zeroOrMore>
  <optional>
    <element name="PUBLISHER">
      <text/>
    </element>
  </optional>
  <optional>
    <element name="LENGTH">
      <text/>
    </element>
  </optional>
  <optional>
    <element name="YEAR">
      <text/>
    </element>
  </optional>
  <oneOrMore>
    <element name="ARTIST">
      <text/>
    </element>
  </oneOrMore>
</element>

element SONG {
  element TITLE     { text },
  element COMPOSER  { text }+,
  element PRODUCER  { text }*,
  element PUBLISHER { text }?,
  element LENGTH    { text }?,
  element YEAR      { text }?,
  element ARTIST    { text }+
}

Previous | Next | Top | Cafe con Leche

Copyright 2005, 2006 Elliotte Rusty Harold
elharo@metalab.unc.edu
Last Modified October 25, 2004