After reading through this:
http://stackoverflow.com/questions/2290360/xsd-how-to-allow-elements-in-any-order-any-number-of-times
I guess
<xs:element name='storage'>
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element ref='conference'/>
<xs:element ref='url'/>
</xs:choice>
</xs:complexType>
</xs:element>
would be correct.
I assume it is allowed to have
<storage>
<url/>
<conference/>
<url/>
</storage>
-- Christian
Am 29.01.2014 um 20:50 schrieb Kim Alvefur:
> On 2014-01-29 20:31, Christian Schudt wrote:
>> I just found an error in the XML Schema for XEP-0048: Bookmarks:
>>
>> Otherwise only one element would be allowed per <storage/>. The document
>> however states otherwise.
>>
>> It is also not very clear (from the document), if you can mix <url/> and
>> <conference/> elements in the same storage.
>>
>> <xs:choice> suggests, you cannot (!) mix them, though I believe from a
>> "user" or developer perspective it should be possible. Or how would
>> otherwise only retrieve the "conference" bookmarks?
>>
>> Should <xs:choice> therefore be <xs:sequence> ??
>
> I'd guess that having the whole complexType + choice block be unbounded
> would be better and more closely reflect current implementations.
>
> --
> Regards,
> Kim "Zash" Alvefur
>