Re: What is ur-definition ?

>> Hi:

>> Could some of the members of the mailing list share views
>> on what is a ur-definition ? what is the rationale behind it
>> and why it is called so ?

>> Thanks in advance.

>> best regards
>> Dev.


Dear Mr. or Ms. Dev, 

From [1] in the specification:

"[Definition:]  A distinguished ur-type definition is present in each XML 
Schema, serving as the root of the type definition hierarchy for that 
schema. The ur-type definition, whose name is anyType, has the unique 
characteristic that it can function as a complex or a simple type 
definition, according to context. Specifically, restrictions of the 
ur-type definition can themselves be either simple or complex type 
definitions."

I think that says it, the ur-type is the root of the type hierarchy in 
each schema.  It's like "object" in Java, everything derives from it.  As 
to the name, I don't speak German, but I believe ur is an abbreviation for 
über", which I believe translates as "above" or upper, and is commonly 
used as a prefix adjective.  So, ur-type is approximately supertype or 
root type.  I personally would not have gone for such an obscure name, 
but....  Anyway, the actual string name you use for it in a schema 
document is "anyType".  e.g.

        <xs:element name="envelope"  type="xs:anyType"/>

The manifestation of the urType that admits only simple types is 
anySimpleType:

        <xs:attribute name="thisAttrCanHoldAnyString" 
type="xs:anySimpleType"/>

The term urType shows up only when you read the specification itself 
(historically we called it the urType, then added the convenience name, 
and decided not to change the whole rest of the spec.  Users see "anyType" 
and "anySimpleType".)  There are some subtleties in the type hierarchy, 
but the above should get you through 99%+ of what you need to do.  Hope 
this helps.


[1] http://www.w3.org/TR/xmlschema-1/#key-urType


------------------------------------------------------------------------
Noah Mendelsohn                                    Voice: 1-617-693-4036
Lotus Development Corp.                            Fax: 1-617-693-8676
One Rogers Street
Cambridge, MA 02142
------------------------------------------------------------------------

Received on Wednesday, 14 February 2001 00:27:49 UTC