W3Schools

home HOME

Schema Tutorial
XSD HOME
XSD Intro
XSD Why Use
XSD How To
XSD <schema>

Simple Types
XSD Elements
XSD Attributes
XSD Restrictions

Complex Types
XSD Elements
XSD Empty
XSD Elements Only
XSD Text Only
XSD Mixed
XSD Indicators
XSD <any>
XSD <anyAttribute>
XSD Substitution
XSD Example

Data Types
XSD String
XSD Date
XSD Numeric
XSD Misc

XSD Summary

References
XSD Reference
XSD Validator

Selected Reading
Web Statistics
Web Glossary
Web Hosting
Web Quality

W3Schools Forum

Helping W3Schools

XSD String Data Types

prev next

String data types are used for values that contains character strings.


String Data Type

The string data type can contain characters, line feeds, carriage returns, and tab characters.

The following is an example of a string declaration in a schema:

<xs:element name="customer" type="xs:string"/>

An element in your document might look like this:

<customer>John Smith</customer>

Or it might look like this:

<customer>	John Smith	</customer>

Note: The XML processor will not modify the value if you use the string data type.


NormalizedString Data Type

The normalizedString data type is derived from the String data type.

The normalizedString data type also contains characters, but the XML processor will remove line feeds, carriage returns, and tab characters.

The following is an example of a normalizedString declaration in a schema:

<xs:element name="customer" type="xs:normalizedString"/>

An element in your document might look like this:

<customer>John Smith</customer>

Or it might look like this:

<customer>	John Smith	</customer>

Note: In the example above the XML processor will replace the tabs with spaces.


Token Data Type

The token data type is also derived from the String data type.

The token data type also contains characters, but the XML processor will remove line feeds, carriage returns, tabs, leading and trailing spaces, and multiple spaces.

The following is an example of a token declaration in a schema:

<xs:element name="customer" type="xs:token"/>

An element in your document might look like this:

<customer>John Smith</customer>

Or it might look like this:

<customer>	John Smith	</customer>

Note: In the example above the XML processor will remove the tabs.


String Data Types

Note that all of the data types below derive from the String data type (except for string itself)!

Name Description
ENTITIES  
ENTITY  
ID A string that represents the ID attribute in XML (only used with schema attributes)
IDREF A string that represents the IDREF attribute in XML (only used with schema attributes)
IDREFS  
language A string that contains a valid language id
Name A string that contains a valid XML name
NCName  
NMTOKEN A string that represents the NMTOKEN attribute in XML (only used with schema attributes)
NMTOKENS  
normalizedString A string that does not contain line feeds, carriage returns, or tabs
QName  
string A string
token A string that does not contain line feeds, carriage returns, tabs, leading or trailing spaces, or multiple spaces


Restrictions on String Data Types

Restrictions that can be used with String data types:

  • enumeration
  • length
  • maxLength
  • minLength
  • pattern (NMTOKENS, IDREFS, and ENTITIES cannot use this constraint)
  • whiteSpace

prev next


Learn XML with Stylus Studio XML Editor – Free Download

Stylus Studio provides tools for editing and debugging XML, XSLT, XML Schema, DTD, XQuery, Web Services,and more!

Using Stylus Studio XML Tools You Can:

See why millions use Stylus Studio as their preferred XML tool. Download a FREE TRIAL or watch an online VIDEO DEMO today!




Jump to: Top of Page or HOME or Printer Friendly Printer friendly page

W3Schools provides material for training only. We do not warrant the correctness of its contents. The risk from using it lies entirely with the user. While using this site, you agree to have read and accepted our terms of use and privacy policy.

Copyright 1999-2008 by Refsnes Data. All Rights Reserved.

Validate Validate W3C-WAI level A conformance icon W3Schools was converted to XHTML in December 1999