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] Problems restricting UBL's AddressType complexType

[ Lists Home | Date Index | Thread Index ]

You might find the Saxon error message slightly more informative:

>java com.saxonica.Validate -t -s

Error on line 8 of
  The content model of the complex type UCBAddressType is not a valid
restriction of the
  content model of the type AddressType. Restricted type allows element ID
where the base
  type does not

This is a namespace problem. In the base type, the ID element is in the UBL
namespace. In the derived type, it's in no namespace.

I've never found a satisfactory answer to this problem. Basically, if you're
trying to define a restriction of a type containing local element
declarations, then your derived type has to be in the same namespace as the
original - which means in this case that you have to define a new type in a
namespace that you don't own.

Of course it would have been more helpful if the authors of the UBL base
schema had made the element declarations global.

Michael Kay


> -----Original Message-----
> From: Allison Bloodworth [mailto:abloodworth@berkeley.edu] 
> Sent: 10 January 2006 03:26
> To: xml-dev@lists.xml.org
> Subject: [xml-dev] Problems restricting UBL's AddressType complexType
> Hi, 
> I've spent several hours trying to figure out why I can't 
> restrict UBL's
> AddressType
> (http://docs.oasis-open.org/ubl/cd-UBL-1.0/xsd/common/UBL-Comm
> onAggregateCom
> ponents-1.0.xsd) to remove certain elements. My (currently 
> invalid) schema
> attempting to do this is here:
> http://groups.sims.berkeley.edu/EventCalendar/UCBAddress.xsd. 
> I am only
> trying use restriction to remove elements that are 
> minOccurs="0", and many I
> was successfully able to remove. However, when trying to 
> remove elements
> that are part of AddressType which look like this:
> <xs:element name="ID" type="udt:IdentifierType" minOccurs="0" 
> maxOccurs="1">
> I'm told by Oxygen that: 
> Description: E derivation-ok-restriction.5.4.2: Error for type
> 'UCBAddressType'.  The particle of the type is not a valid 
> restriction of
> the particle of the base.
> URL: http://www.w3.org/TR/xmlschema-1/#derivation-ok-restriction
> Description: E rcase-Recurse.2: There is not a complete 
> functional mapping
> between the particles.
> URL: http://www.w3.org/TR/xmlschema-1/#rcase-Recurse 
> I read the spec and it *seems* that I've met all the 
> requirements, but the
> spec is a bit hard to read. I simply copied AddressType from 
> the UBL schema
> to begin building my restriction so I'm not sure what I could 
> be missing.
> Any help would be much appreciated!
> Allison Bloodworth
> Principal Administrative Analyst
> e-Berkeley Program Office
> University of California, Berkeley
> (415) 377-8243
> abloodworth@berkeley.edu
> -----------------------------------------------------------------
> 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://www.oasis-open.org/mlmanage/index.php>


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

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