This is a clear example on the advantage of given.

The `given` context is equivalent to the previous
`rspec` block.

See the following failures (obtained running `bundle exec rspec spec/audience_range_spec.rb`):
```
  2) ONIX::AudienceRange should provide write access to first level attributes
     Failure/Error: aud.to_xml.to_s.include?("<AudienceRangeValue>999</AudienceRangeValue>").should be_true
       expected: truthy value
            got: false
     # ./spec/audience_range_spec.rb:41:in `block (2 levels) in <top (required)>'
```
Mmmhh, nothing really useful. Note the `expected: truthy value; got: false`. Thanks.
```
  3) ONIX::AudienceRange Given - should provide write access to first level attributes audience_range_values=       Then { aud.to_xml.to_s.include? "<AudienceRangeValue>999</AudienceRangeValue>" }
     Failure/Error: Then { aud.to_xml.to_s.include? "<AudienceRangeValue>999</AudienceRangeValue>" }
       Then expression failed at .../wasabi-git/onix/spec/audience_range_spec.rb:56
         "<AudienceRange>\n  <AudienceRangeValue>[999]</AudienceRangeValue>\n</AudienceRange>"
                      <- aud.to_xml.to_s
         #<Nokogiri::XML::Element:0x3fe3660af5a8 name="AudienceRange" children=[#<Nokogiri::XML::Element:0x3fe3660af0f8 name="AudienceRangeValue" children=[#<Nokogiri::XML::Text:0x3fe3660aebbc "[999]">]>]>
                      <- aud.to_xml
         #<ONIX::AudienceRange:0x007fc6cc185368 @audience_range_precisions=[], @audience_range_values=[999]>
                      <- aud
     # ./spec/audience_range_spec.rb:56:in `block in Then'
```

So we know exactly what's wrong. There is an array, and
it's printed as a single `[999]` literal representation
instead of giving rise to multiple elements.