Altova Mailing List Archives>Archive Index >xmlschema-dev Archive Home >Recent entries >Thread Prev - Re: Include multiple complex types into one element ... >Thread Next - using multiple namespaces in one element RE: Include multiple complex types into one element ...To: "'Andrew Welch'" <andrew.j.welch@-----.--->, "'Dragon Fly'" <dragon-fly999@-------.---> Date: 7/9/2008 2:50:00 PM > - the element can be reused (so LastName can be used (ref'd) > in multiple places) > > - the element is defined in one place (so changing the type > of LastName only needs to be done once, not everywhere that it's used) > > - the types are exposed to applications, so you can match on > type define variables as that type in schema-aware XSLT or XQuery > > - it follows a consistent style, and turns the upper part of > your schema into a data dictionary :) > And one more, if you consistently avoid using local element declarations, then it's easier to avoid the trap of writing <xs:element name="person"/> when you meant <xs:element ref="person"/> It's a really nasty mistake to make, because your schema document is valid and it validates all your valid instances, but it doesn't catch the validity errors that you intended to catch. That's because <xs:element name="person"/> defaults to <xs:element name="person" type="xs:anyType"/> I don't condemn local element declarations entirely, however. But I tend to apply the rule that if you use a local element declaration then it should refer to a global type definition. Michael Kay http://www.saxonica.com/ From dragon-fly999@h... Wed Jul 09 14:00:56 2008 Received: from maggie. | ||||||
| Company | Legal | Press | Partners | Careers | Sitemap | Contact Us | Altova Blog | Mobile | Full Site | |||
|
