OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   RE: [xml-dev] Genericity and XML-Schema

[ Lists Home | Date Index | Thread Index ]

Hi,

I think this will make you happy. The key here is to indicate the type of
list being used by using the xsi:type="blah" attribute in the instance:

schema:

<?xml version="1.0" encoding="UTF-8"?>

<schema 
       xmlns="http://www.w3.org/2001/XMLSchema"; 
       xmlns:g="http://www.example.org";
       targetNamespace="http://www.example.org";
>

<complexType name="list.Type">
     <choice>
         <element name="item1" maxOccurs="unbounded" minOccurs="0"/>
         <element name="item2" maxOccurs="unbounded" minOccurs="0"/>
     </choice>
</complexType>

<complexType name="listEx.Type">
    <complexContent>
        <extension base="g:list.Type">
            <choice>
                <element name="item3" maxOccurs="unbounded" minOccurs="0"/>
            </choice>
        </extension>
    </complexContent>
</complexType>

<element name="list" type="g:list.Type"/>

<element name="lists">
    <complexType>
        <sequence>
            <element ref="g:list" maxOccurs="unbounded"/>
        </sequence>
    </complexType>
</element>

</schema>


document instance:

<?xml version="1.0" encoding="UTF-8"?>
<g:lists
   	xmlns:g="http://www.example.org"; 
   	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
   	xsi:schemaLocation="http://www.example.org ../schemas/generic.xs"
>
    <g:list>
        <item1/>
        <item1/>
    </g:list>

    <g:list xsi:type="g:listEx.Type">
        <item3/>
    </g:list>

</g:lists>






> -----Original Message-----
> From: Andrew Goodchild [mailto:andrewg@dstc.edu.au]
> Sent: Friday, March 08, 2002 3:53 AM
> To: xml-dev@lists.xml.org
> Subject: [xml-dev] Genericity and XML-Schema
> 
> 
> 
> Hi,
> 
> I know someone has probably asked this question before, but is
> genericity/polymorphism supported in XML-Schema?  For example 
> if I have a
> complex type for <list> and want to later on create a list of 
> addressess
> or a list of blood pressures.  Is genericity anything more than simply
> creating a complex type which extends the <item> in the <list> as an
> address or as a blood pressure?
> 
> thanks,  Andrew
> 
> 
> 
> -----------------------------------------------------------------
> The xml-dev list is sponsored by XML.org <http://www.xml.org>, an
> initiative of OASIS <http://www.oasis-open.org>
> 
> The list archives are at http://lists.xml.org/archives/xml-dev/
> 
> To subscribe or unsubscribe from this list use the subscription
> manager: <http://lists.xml.org/ob/adm.pl>
> 




 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS