Pablo Gomes Ludermir wrote:
> I have the following case that I am trying to put in XML Schema.
> I have the classes HelpItem, Document and Message that work as follows:
>
> One HelpItem contains several Document and Message instances.
> Thus, in XML Document and Message are child elements of HelpItem.
>
> However, a Message may have a reference to one or several existing
> Docuemnt instances, and also may have a reference to one or several
> Message instances (its replies) and another Message that it is the
> parent Message (the Message that I am replying to).
>
> How can I make the references to the documents and other messages (I
> hope that the reference to the messages is correct in the example bellow)?
>
> The following information is to keep it more clear:
>
> class Message
> - referencedDocuments List
> - conversation List //messages that reply the current one (optional)
> - parentMessage Message //the message that I am replying to
> end class
>
> <xs:element name="Document" minOccurs="0" maxOccurs="unbounded">
> <xs:complexType>
> <xs:attribute name="id" type="xs:ID" use="required"/>
> ... other attributes here
> </xs:complexType>
> </xs:element>
>
>
> <xs:element name="Message" minOccurs="0" maxOccurs="unbounded">
> <xs:complexType>
> <xs:attribute name="id" type="xs:ID" use="required"/>
> <xs:attribute name="parentMessage" type="xs:IDREF" use="optional"/>
> <xs:attribute name="conversation" type="xs:IDREFS" use="optional"/>
> ... other attributes here
> </xs:complexType>
> </xs:element>
On a first look your use of xs:ID and xs:IDREF and xs:IDREFS seems fine
to me. Or are you getting any error messages from a schema processor?
--
Martin Honnen
http://JavaScript.FAQTs.com/