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] abstract types

[ Lists Home | Date Index | Thread Index ]

"Maciejewski, Thomas" <Thomas.Maciejewski@lehman.com> writes:

> Is there a way to enforce abstract types.  For example lets say I have an
> interface : printable  
> 
> but then I have a concrete "class" wordDocument that derives from printable
> with some additional information.  Lets say I would like to serialize these
> objects to XML.  Lets say I also have a class queue that can have many
> "printable" objects ... 
> 
> so in my xml I would like to have :
> 
> <foo>
> 	<wordDocument name="toms document" />
> 	<excelDocument name="toms spreadsheet" />
> </foo>
> 
> but not allow:
> <foo>
> 	<printable />
> </foo>

There are serveral ways to do this.  Most straightforward is

1) Declare printable as an abstract element at the top-level with a
type which covers all the possibilities for your concrete classes;

2) Declare foo to have printable* as its content;

3) Declare wordDocument and excelDocument at the top level with
substitutionGroup='printable' and types derived from the type of
printable.

You're done.

ht
-- 
  Henry S. Thompson, HCRC Language Technology Group, University of Edinburgh
          W3C Fellow 1999--2002, part-time member of W3C Team
     2 Buccleuch Place, Edinburgh EH8 9LW, SCOTLAND -- (44) 131 650-4440
	    Fax: (44) 131 650-4587, e-mail: ht@cogsci.ed.ac.uk
		     URL: http://www.ltg.ed.ac.uk/~ht/
 [mail really from me _always_ has this .sig -- mail without it is forged spam]

  • References:
    • abstract types
      • From: "Maciejewski, Thomas" <Thomas.Maciejewski@lehman.com>



 

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

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