Consider this XML –
<Root>
<Foo>
<UniqueValue>A100</UniqueValue>
</Foo>
<Foo>
<UniqueValue>A101</UniqueValue>
</Foo>
<Foo>
<UniqueValue>B102</UniqueValue>
</Foo>
<Foo>
<UniqueValue>A101</UniqueValue> <!-- This should be an error -->
</Foo>
<Foo>
<UniqueValue> A101 </UniqueValue> <!-- This should be an error but not critical for now -->
</Foo>
</Root>
How do I restrict the simple type element <UniqueValue> such that its values are unique?
Also not that I don’t want to restrict to numbers.
Try putting a uniqueness constraint on “Root”. Note that this needs to be ont he element definition, not a type definition:
Depending on the parser you are using, you may have to switch on additional options to get this validated (e.g. “full schema validation”, identity constraint validation, etc).