]>


  
    ]]>]]>
      elements) below, is not normative, but rather highlights important
      aspects of the W3C Recommendation of which this is a part
    
  
  
    
      First the built-in primitive datatypes.  These definitions are for
      information only, the real built-in definitions are magic.  ]]>
    
      For each built-in datatype in this schema (both primitive and
      derived) can be uniquely addressed via a URI constructed
      as follows:
        1) the base URI is the URI of the XML Schema namespace
        2) the fragment identifier is the name of the datatype

      For example, to address the int datatype, the URI is:

        http://www.w3.org/2001/XMLSchema#int

      Additionally, each facet definition element can be uniquely
      addressed via a URI constructed as follows:
        1) the base URI is the URI of the XML Schema namespace
        2) the fragment identifier is the name of the facet

      For example, to address the maxInclusive facet, the URI is:

        http://www.w3.org/2001/XMLSchema#maxInclusive

      Additionally, each facet usage in a built-in datatype definition
      can be uniquely addressed via a URI constructed as follows:
        1) the base URI is the URI of the XML Schema namespace
        2) the fragment identifier is the name of the datatype, followed
           by a period (".") followed by the name of the facet

      For example, to address the usage of the maxInclusive facet in
      the definition of int, the URI is:

        http://www.w3.org/2001/XMLSchema#int.maxInclusive

    
  
  
    
      
        
        
        
        
        
        
        
        
        
        
      
      
    
    
      
    
  
  
    
      
        
        
        
        
        
        
      
      
    
    
      
    
  
  
    
      
        
        
        
        
        
        
        
        
        
        
        
      
      
    
    
      
    
  
  
    
      
        
        
        
        
        
        
        
        
        
        
        
      
      
    
    
      
    
  
  
    
      
        
        
        
        
        
        
        
        
        
        
        
        
        
      
      
    
    
      
    
  
  
    
      
        
        
        
        
        
        
        
        
        
        
        
      
      
    
    
      
    
  
  
    
      
        
        
        
        
        
        
        
        
        
        
        
      
      
    
    
      
    
  
  
    
      
        
        
        
        
        
        
        
        
        
        
        
      
      
    
    
      
    
  
  
    
      
        
        
        
        
        
        
        
        
        
        
        
      
      
    
    
      
    
  
  
    
      
        
        
        
        
        
        
        
        
        
        
        
      
      
    
    
      
    
  
  
    
      
        
        
        
        
        
        
        
        
        
        
        
      
      
    
    
      
    
  
  
    
      
        
        
        
        
        
        
        
        
        
        
        
      
      
    
    
      
    
  
  
    
      
        
        
        
        
        
        
        
        
        
        
        
      
      
    
    
      
    
  
  
    
      
        
        
        
        
        
        
        
        
        
        
        
      
      
    
    
      
    
  
  
    
      
        
        
        
        
        
        
        
        
        
        
      
      
    
    
      
    
  
  
    
      
        
        
        
        
        
        
        
        
        
        
      
      
    
    
      
    
  
  
    
      
        
        
        
        
        
        
        
        
        
        
      
      
    
    
      
    
  
  
    
      
        
        
        
        
        
        
        
        
        
        
      
      
    
    
      
    
  
  
    
      
        
        
        
        
        
        
        
        
        
        
      
      
      
        NOTATION cannot be used directly in a schema; rather a type
        must be derived from it by specifying at least one enumeration
        facet whose value is the name of a NOTATION declared in the
        schema.
      
    
    
      
    
  
  
    
      Now the derived primitive types
    
  
  
    
      
    
    
      
    
  
  
    
      
    
    
      
    
  
  
    
      
    
    
      
        
          ]]>]]>
        
      
    
  
  
    
      
        
        
        
        
        
        ]]>]]>
        
        
        
      
      
    
    
      
        
      
      
    
  
  
    
      
        
        
        
        
        
        ]]>]]>
        
        
        
      
      
    
    
      
        
      
      
    
  
  
    
      
    
    
      
        
          
            pattern matches production 7 from the XML spec
          
        
      
    
  
  
    
      
        
        
        
        
        
        ]]>]]>
        
        
        
      
      
    
    
      
        
      
      
    
  
  
    
      
    
    
      
        
          
            pattern matches production 5 from the XML spec
          
        
      
    
  
  
    
      
    
    
      
        
          
            pattern matches production 4 from the Namespaces in XML spec
          
        
      
    
  
  
    
      
    
    
  
  
    
      
    
    
  
  
    
      
    
    
  
  
    
      
    
    
      
      ]]>]]>
  
  
    
      
    
    
      
    
  
  
    
      
    
    
      
    
  
  
    
      
        
        
      
      
    
    
      
      
    
  
  
    
      
    
    
      
      
    
  
  
    
      
    
    
      
      
    
  
  
    
      
    
    
      
      
    
  
  
    
      
    
    
      
    
  
  
    
      
        
        
      
      
    
    
      
    
  
  
    
      
    
    
      
    
  
  
    
      
    
    
      
    
  
  ]]>]]>
      
    
    
      
    
  
  
    
      
    
    
      
    
  
  
    
      
   A utility type, not for public use
    
    
      
      
      
      
      
    
  
  
    
      
      
      
    
  
  
    
      
   #all or (possibly empty) subset of {restriction, union, list}
   
      
   A utility type, not for public use
    
    
      
        
          
        
      
      
        ]]>
          ]]>
              
              
              
            
          
        ]]>
      ]]>
  
  
    
      
        
        
        
          
            
              Can be restricted to required or forbidden
            
          
        
      
    
  
  
    
      
        
          
          
        
        
          
            
              Required at the top level
            
          
        
        ]]>]]>
    
  
  
    
      
        
          
          
        
        
          
            
              Forbidden when nested
            
          
        
        
        ]]>]]>
    
  
  
    
      
    
  
  
    
      
       We should use a substitution group for facets, but
       that's ruled out because it would allow users to
       add their own, which we're not ready for yet.
    
    
    
      
      
      
      
      
      
      
      
      
      
      
      
    
  
  
    
      
      
    
  
  
    
      
        
          base attribute and simpleType child are mutually
          exclusive, but one or other is required
        
      
      
        
          
          
        
      
    
  
  
    
      
        
          itemType attribute and simpleType child are mutually
          exclusive, but one or other is required
        
      
      
        
          
            
          
          
        
      
    
  
  
    
      
        
          memberTypes attribute must be non-empty or there must be
          at least one simpleType child
        
      
      
        
          
            
          
          
            
              
            
          
        
      
    
  
  
    
      
        
        
      
    
  
  
    
      
        
          
        
        
        ]]>]]>
    
  
  
    
      
    
  
  
    
      
    
  
  
    
      
    
  
  
    
      
    
  
  
    
      
        
          
        
        
        ]]>]]>
    
  
  
    
      
    
    
      
        
          
            
          
          
          ]]>]]>
      
    
  
  
    
      
    
  
  
    
      
    
  
  
    
      
    
  
  
    
      
    
  
  
    
      
    
  
  
    
      
    
    
      
        
          
            
          
          
            
              
                
                
                
              
            
          
          ]]>]]>
      
    
  
  
    
      
    
    ]]>
      
        
          
            
          
          
          
        
      
    ]]>

]]>