<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<title>DatatypeConverterInterface</title>
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="DatatypeConverterInterface";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6,"i6":6,"i7":6,"i8":6,"i9":6,"i10":6,"i11":6,"i12":6,"i13":6,"i14":6,"i15":6,"i16":6,"i17":6,"i18":6,"i19":6,"i20":6,"i21":6,"i22":6,"i23":6,"i24":6,"i25":6,"i26":6,"i27":6,"i28":6,"i29":6,"i30":6,"i31":6,"i32":6,"i33":6,"i34":6,"i35":6,"i36":6,"i37":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../index-all.html">Index</a></li>
<li><a href="../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../javax/xml/bind/DatatypeConverter.html" title="class in javax.xml.bind"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../javax/xml/bind/Element.html" title="interface in javax.xml.bind"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?javax/xml/bind/DatatypeConverterInterface.html" target="_top">Frames</a></li>
<li><a href="DatatypeConverterInterface.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">javax.xml.bind</div>
<h2 title="Interface DatatypeConverterInterface" class="title">Interface DatatypeConverterInterface</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public interface <span class="typeNameLabel">DatatypeConverterInterface</span></pre>
<div class="block"><p>
 The DatatypeConverterInterface is for JAXB provider use only. A
 JAXB provider must supply a class that implements this interface.
 JAXB Providers are required to call the
 <a href="../../../javax/xml/bind/DatatypeConverter.html#setDatatypeConverter-javax.xml.bind.DatatypeConverterInterface-"><code>DatatypeConverter.setDatatypeConverter</code></a> api at
 some point before the first marshal or unmarshal operation (perhaps during
 the call to JAXBContext.newInstance).  This step is necessary to configure
 the converter that should be used to perform the print and parse
 functionality.  Calling this api repeatedly will have no effect - the
 DatatypeConverter instance passed into the first invocation is the one that
 will be used from then on.

 <p>
 This interface defines the parse and print methods. There is one
 parse and print method for each XML schema datatype specified in the
 the default binding Table 5-1 in the JAXB specification.

 <p>
 The parse and print methods defined here are invoked by the static parse
 and print methods defined in the <a href="../../../javax/xml/bind/DatatypeConverter.html" title="class in javax.xml.bind"><code>DatatypeConverter</code></a>
 class.

 <p>
 A parse method for a XML schema datatype must be capable of converting any
 lexical representation of the XML schema datatype ( specified by the
 <a href="http://www.w3.org/TR/xmlschema-2/"> XML Schema Part2: Datatypes
 specification</a> into a value in the value space of the XML schema datatype.
 If an error is encountered during conversion, then an IllegalArgumentException
 or a subclass of IllegalArgumentException must be thrown by the method.

 <p>
 A print method for a XML schema datatype can output any lexical
 representation that is valid with respect to the XML schema datatype.
 If an error is encountered during conversion, then an IllegalArgumentException,
 or a subclass of IllegalArgumentException must be thrown by the method.

 <p>
 The prefix xsd: is used to refer to XML schema datatypes
 <a href="http://www.w3.org/TR/xmlschema-2/"> XML Schema Part2: Datatypes
 specification.</a></div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.6, JAXB 1.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../javax/xml/bind/DatatypeConverter.html" title="class in javax.xml.bind"><code>DatatypeConverter</code></a>, 
<a href="../../../javax/xml/bind/ParseConversionEvent.html" title="interface in javax.xml.bind"><code>ParseConversionEvent</code></a>, 
<a href="../../../javax/xml/bind/PrintConversionEvent.html" title="interface in javax.xml.bind"><code>PrintConversionEvent</code></a></dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#parseAnySimpleType-java.lang.String-">parseAnySimpleType</a></span>(java.lang.String&nbsp;lexicalXSDAnySimpleType)</code>
<div class="block">Return a string containing the lexical representation of the
 simple type.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>byte[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#parseBase64Binary-java.lang.String-">parseBase64Binary</a></span>(java.lang.String&nbsp;lexicalXSDBase64Binary)</code>
<div class="block">Converts the string argument into an array of bytes.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#parseBoolean-java.lang.String-">parseBoolean</a></span>(java.lang.String&nbsp;lexicalXSDBoolean)</code>
<div class="block">Converts the string argument into a boolean value.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>byte</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#parseByte-java.lang.String-">parseByte</a></span>(java.lang.String&nbsp;lexicalXSDByte)</code>
<div class="block">Converts the string argument into a byte value.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>java.util.Calendar</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#parseDate-java.lang.String-">parseDate</a></span>(java.lang.String&nbsp;lexicalXSDDate)</code>
<div class="block">Converts the string argument into a Calendar value.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>java.util.Calendar</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#parseDateTime-java.lang.String-">parseDateTime</a></span>(java.lang.String&nbsp;lexicalXSDDateTime)</code>
<div class="block">Converts the string argument into a Calendar value.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>java.math.BigDecimal</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#parseDecimal-java.lang.String-">parseDecimal</a></span>(java.lang.String&nbsp;lexicalXSDDecimal)</code>
<div class="block">Converts the string argument into a BigDecimal value.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#parseDouble-java.lang.String-">parseDouble</a></span>(java.lang.String&nbsp;lexicalXSDDouble)</code>
<div class="block">Converts the string argument into a double value.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>float</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#parseFloat-java.lang.String-">parseFloat</a></span>(java.lang.String&nbsp;lexicalXSDFloat)</code>
<div class="block">Converts the string argument into a float value.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>byte[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#parseHexBinary-java.lang.String-">parseHexBinary</a></span>(java.lang.String&nbsp;lexicalXSDHexBinary)</code>
<div class="block">Converts the string argument into an array of bytes.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#parseInt-java.lang.String-">parseInt</a></span>(java.lang.String&nbsp;lexicalXSDInt)</code>
<div class="block">Convert the string argument into an int value.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>java.math.BigInteger</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#parseInteger-java.lang.String-">parseInteger</a></span>(java.lang.String&nbsp;lexicalXSDInteger)</code>
<div class="block">Convert the string argument into a BigInteger value.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#parseLong-java.lang.String-">parseLong</a></span>(java.lang.String&nbsp;lexicalXSDLong)</code>
<div class="block">Converts the string argument into a long value.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>javax.xml.namespace.QName</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#parseQName-java.lang.String-javax.xml.namespace.NamespaceContext-">parseQName</a></span>(java.lang.String&nbsp;lexicalXSDQName,
          javax.xml.namespace.NamespaceContext&nbsp;nsc)</code>
<div class="block">Converts the string argument into a QName value.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>short</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#parseShort-java.lang.String-">parseShort</a></span>(java.lang.String&nbsp;lexicalXSDShort)</code>
<div class="block">Converts the string argument into a short value.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#parseString-java.lang.String-">parseString</a></span>(java.lang.String&nbsp;lexicalXSDString)</code>
<div class="block">Convert the string argument into a string.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>java.util.Calendar</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#parseTime-java.lang.String-">parseTime</a></span>(java.lang.String&nbsp;lexicalXSDTime)</code>
<div class="block">Converts the string argument into a Calendar value.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#parseUnsignedInt-java.lang.String-">parseUnsignedInt</a></span>(java.lang.String&nbsp;lexicalXSDUnsignedInt)</code>
<div class="block">Converts the string argument into a long value.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#parseUnsignedShort-java.lang.String-">parseUnsignedShort</a></span>(java.lang.String&nbsp;lexicalXSDUnsignedShort)</code>
<div class="block">Converts the string argument into an int value.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#printAnySimpleType-java.lang.String-">printAnySimpleType</a></span>(java.lang.String&nbsp;val)</code>
<div class="block">Converts a string value into a string.</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#printBase64Binary-byte:A-">printBase64Binary</a></span>(byte[]&nbsp;val)</code>
<div class="block">Converts an array of bytes into a string.</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#printBoolean-boolean-">printBoolean</a></span>(boolean&nbsp;val)</code>
<div class="block">Converts a boolean value into a string.</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#printByte-byte-">printByte</a></span>(byte&nbsp;val)</code>
<div class="block">Converts a byte value into a string.</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#printDate-java.util.Calendar-">printDate</a></span>(java.util.Calendar&nbsp;val)</code>
<div class="block">Converts a Calendar value into a string.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#printDateTime-java.util.Calendar-">printDateTime</a></span>(java.util.Calendar&nbsp;val)</code>
<div class="block">Converts a Calendar value into a string.</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#printDecimal-java.math.BigDecimal-">printDecimal</a></span>(java.math.BigDecimal&nbsp;val)</code>
<div class="block">Converts a BigDecimal value into a string.</div>
</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#printDouble-double-">printDouble</a></span>(double&nbsp;val)</code>
<div class="block">Converts a double value into a string.</div>
</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#printFloat-float-">printFloat</a></span>(float&nbsp;val)</code>
<div class="block">Converts a float value into a string.</div>
</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#printHexBinary-byte:A-">printHexBinary</a></span>(byte[]&nbsp;val)</code>
<div class="block">Converts an array of bytes into a string.</div>
</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#printInt-int-">printInt</a></span>(int&nbsp;val)</code>
<div class="block">Converts an int value into a string.</div>
</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#printInteger-java.math.BigInteger-">printInteger</a></span>(java.math.BigInteger&nbsp;val)</code>
<div class="block">Converts a BigInteger value into a string.</div>
</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#printLong-long-">printLong</a></span>(long&nbsp;val)</code>
<div class="block">Converts a long value into a string.</div>
</td>
</tr>
<tr id="i32" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#printQName-javax.xml.namespace.QName-javax.xml.namespace.NamespaceContext-">printQName</a></span>(javax.xml.namespace.QName&nbsp;val,
          javax.xml.namespace.NamespaceContext&nbsp;nsc)</code>
<div class="block">Converts a QName instance into a string.</div>
</td>
</tr>
<tr id="i33" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#printShort-short-">printShort</a></span>(short&nbsp;val)</code>
<div class="block">Converts a short value into a string.</div>
</td>
</tr>
<tr id="i34" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#printString-java.lang.String-">printString</a></span>(java.lang.String&nbsp;val)</code>
<div class="block">Converts the string argument into a string.</div>
</td>
</tr>
<tr id="i35" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#printTime-java.util.Calendar-">printTime</a></span>(java.util.Calendar&nbsp;val)</code>
<div class="block">Converts a Calendar value into a string.</div>
</td>
</tr>
<tr id="i36" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#printUnsignedInt-long-">printUnsignedInt</a></span>(long&nbsp;val)</code>
<div class="block">Converts a long value into a string.</div>
</td>
</tr>
<tr id="i37" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/xml/bind/DatatypeConverterInterface.html#printUnsignedShort-int-">printUnsignedShort</a></span>(int&nbsp;val)</code>
<div class="block">Converts an int value into a string.</div>
</td>
</tr>
</table>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="parseString-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parseString</h4>
<pre>java.lang.String&nbsp;parseString(java.lang.String&nbsp;lexicalXSDString)</pre>
<div class="block">Convert the string argument into a string.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>lexicalXSDString</code> - A lexical representation of the XML Schema datatype xsd:string</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A string that is the same as the input string.</dd>
</dl>
</li>
</ul>
<a name="parseInteger-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parseInteger</h4>
<pre>java.math.BigInteger&nbsp;parseInteger(java.lang.String&nbsp;lexicalXSDInteger)</pre>
<div class="block">Convert the string argument into a BigInteger value.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>lexicalXSDInteger</code> - A string containing a lexical representation of
     xsd:integer.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A BigInteger value represented by the string argument.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.NumberFormatException</code> - <code>lexicalXSDInteger</code> is not a valid string representation of a <code>BigInteger</code> value.</dd>
</dl>
</li>
</ul>
<a name="parseInt-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parseInt</h4>
<pre>int&nbsp;parseInt(java.lang.String&nbsp;lexicalXSDInt)</pre>
<div class="block">Convert the string argument into an int value.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>lexicalXSDInt</code> - A string containing a lexical representation of
     xsd:int.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>An int value represented byte the string argument.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.NumberFormatException</code> - <code>lexicalXSDInt</code> is not a valid string representation of an <code>int</code> value.</dd>
</dl>
</li>
</ul>
<a name="parseLong-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parseLong</h4>
<pre>long&nbsp;parseLong(java.lang.String&nbsp;lexicalXSDLong)</pre>
<div class="block">Converts the string argument into a long value.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>lexicalXSDLong</code> - A string containing lexical representation of
     xsd:long.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A long value represented by the string argument.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.NumberFormatException</code> - <code>lexicalXSDLong</code> is not a valid string representation of a <code>long</code> value.</dd>
</dl>
</li>
</ul>
<a name="parseShort-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parseShort</h4>
<pre>short&nbsp;parseShort(java.lang.String&nbsp;lexicalXSDShort)</pre>
<div class="block">Converts the string argument into a short value.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>lexicalXSDShort</code> - A string containing lexical representation of
     xsd:short.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A short value represented by the string argument.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.NumberFormatException</code> - <code>lexicalXSDShort</code> is not a valid string representation of a <code>short</code> value.</dd>
</dl>
</li>
</ul>
<a name="parseDecimal-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parseDecimal</h4>
<pre>java.math.BigDecimal&nbsp;parseDecimal(java.lang.String&nbsp;lexicalXSDDecimal)</pre>
<div class="block">Converts the string argument into a BigDecimal value.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>lexicalXSDDecimal</code> - A string containing lexical representation of
     xsd:decimal.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A BigDecimal value represented by the string argument.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.NumberFormatException</code> - <code>lexicalXSDDecimal</code> is not a valid string representation of <code>BigDecimal</code>.</dd>
</dl>
</li>
</ul>
<a name="parseFloat-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parseFloat</h4>
<pre>float&nbsp;parseFloat(java.lang.String&nbsp;lexicalXSDFloat)</pre>
<div class="block">Converts the string argument into a float value.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>lexicalXSDFloat</code> - A string containing lexical representation of
     xsd:float.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A float value represented by the string argument.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.NumberFormatException</code> - <code>lexicalXSDFloat</code> is not a valid string representation of a <code>float</code> value.</dd>
</dl>
</li>
</ul>
<a name="parseDouble-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parseDouble</h4>
<pre>double&nbsp;parseDouble(java.lang.String&nbsp;lexicalXSDDouble)</pre>
<div class="block">Converts the string argument into a double value.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>lexicalXSDDouble</code> - A string containing lexical representation of
     xsd:double.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A double value represented by the string argument.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.NumberFormatException</code> - <code>lexicalXSDDouble</code> is not a valid string representation of a <code>double</code> value.</dd>
</dl>
</li>
</ul>
<a name="parseBoolean-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parseBoolean</h4>
<pre>boolean&nbsp;parseBoolean(java.lang.String&nbsp;lexicalXSDBoolean)</pre>
<div class="block">Converts the string argument into a boolean value.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>lexicalXSDBoolean</code> - A string containing lexical representation of
     xsd:boolean.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A boolean value represented by the string argument.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if string parameter does not conform to lexical value space defined in XML Schema Part 2: Datatypes for xsd:boolean.</dd>
</dl>
</li>
</ul>
<a name="parseByte-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parseByte</h4>
<pre>byte&nbsp;parseByte(java.lang.String&nbsp;lexicalXSDByte)</pre>
<div class="block">Converts the string argument into a byte value.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>lexicalXSDByte</code> - A string containing lexical representation of
     xsd:byte.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A byte value represented by the string argument.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.NumberFormatException</code> - <code>lexicalXSDByte</code> does not contain a parseable byte.</dd>
<dd><code>java.lang.IllegalArgumentException</code> - if string parameter does not conform to lexical value space defined in XML Schema Part 2: Datatypes for xsd:byte.</dd>
</dl>
</li>
</ul>
<a name="parseQName-java.lang.String-javax.xml.namespace.NamespaceContext-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parseQName</h4>
<pre>javax.xml.namespace.QName&nbsp;parseQName(java.lang.String&nbsp;lexicalXSDQName,
                                     javax.xml.namespace.NamespaceContext&nbsp;nsc)</pre>
<div class="block">Converts the string argument into a QName value.

 <p>
 String parameter <code>lexicalXSDQname</code> must conform to lexical value space specifed at
 <a href="http://www.w3.org/TR/xmlschema-2/#QName">XML Schema Part 2:Datatypes specification:QNames</a></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>lexicalXSDQName</code> - A string containing lexical representation of xsd:QName.</dd>
<dd><code>nsc</code> - A namespace context for interpreting a prefix within a QName.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A QName value represented by the string argument.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if string parameter does not conform to XML Schema Part 2 specification or
      if namespace prefix of <code>lexicalXSDQname</code> is not bound to a URI in NamespaceContext <code>nsc</code>.</dd>
</dl>
</li>
</ul>
<a name="parseDateTime-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parseDateTime</h4>
<pre>java.util.Calendar&nbsp;parseDateTime(java.lang.String&nbsp;lexicalXSDDateTime)</pre>
<div class="block">Converts the string argument into a Calendar value.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>lexicalXSDDateTime</code> - A string containing lexical representation of
     xsd:datetime.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A Calendar object represented by the string argument.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if string parameter does not conform to lexical value space defined in XML Schema Part 2: Datatypes for xsd:dateTime.</dd>
</dl>
</li>
</ul>
<a name="parseBase64Binary-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parseBase64Binary</h4>
<pre>byte[]&nbsp;parseBase64Binary(java.lang.String&nbsp;lexicalXSDBase64Binary)</pre>
<div class="block">Converts the string argument into an array of bytes.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>lexicalXSDBase64Binary</code> - A string containing lexical representation
     of xsd:base64Binary.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>An array of bytes represented by the string argument.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if string parameter does not conform to lexical value space defined in XML Schema Part 2: Datatypes for xsd:base64Binary</dd>
</dl>
</li>
</ul>
<a name="parseHexBinary-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parseHexBinary</h4>
<pre>byte[]&nbsp;parseHexBinary(java.lang.String&nbsp;lexicalXSDHexBinary)</pre>
<div class="block">Converts the string argument into an array of bytes.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>lexicalXSDHexBinary</code> - A string containing lexical representation of
     xsd:hexBinary.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>An array of bytes represented by the string argument.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if string parameter does not conform to lexical value space defined in XML Schema Part 2: Datatypes for xsd:hexBinary.</dd>
</dl>
</li>
</ul>
<a name="parseUnsignedInt-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parseUnsignedInt</h4>
<pre>long&nbsp;parseUnsignedInt(java.lang.String&nbsp;lexicalXSDUnsignedInt)</pre>
<div class="block">Converts the string argument into a long value.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>lexicalXSDUnsignedInt</code> - A string containing lexical representation
     of xsd:unsignedInt.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A long value represented by the string argument.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.NumberFormatException</code> - if string parameter can not be parsed into a <code>long</code> value.</dd>
</dl>
</li>
</ul>
<a name="parseUnsignedShort-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parseUnsignedShort</h4>
<pre>int&nbsp;parseUnsignedShort(java.lang.String&nbsp;lexicalXSDUnsignedShort)</pre>
<div class="block">Converts the string argument into an int value.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>lexicalXSDUnsignedShort</code> - A string containing lexical
     representation of xsd:unsignedShort.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>An int value represented by the string argument.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.NumberFormatException</code> - if string parameter can not be parsed into an <code>int</code> value.</dd>
</dl>
</li>
</ul>
<a name="parseTime-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parseTime</h4>
<pre>java.util.Calendar&nbsp;parseTime(java.lang.String&nbsp;lexicalXSDTime)</pre>
<div class="block">Converts the string argument into a Calendar value.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>lexicalXSDTime</code> - A string containing lexical representation of
     xsd:Time.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A Calendar value represented by the string argument.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if string parameter does not conform to lexical value space defined in XML Schema Part 2: Datatypes for xsd:Time.</dd>
</dl>
</li>
</ul>
<a name="parseDate-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parseDate</h4>
<pre>java.util.Calendar&nbsp;parseDate(java.lang.String&nbsp;lexicalXSDDate)</pre>
<div class="block">Converts the string argument into a Calendar value.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>lexicalXSDDate</code> - A string containing lexical representation of
     xsd:Date.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A Calendar value represented by the string argument.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if string parameter does not conform to lexical value space defined in XML Schema Part 2: Datatypes for xsd:Date.</dd>
</dl>
</li>
</ul>
<a name="parseAnySimpleType-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parseAnySimpleType</h4>
<pre>java.lang.String&nbsp;parseAnySimpleType(java.lang.String&nbsp;lexicalXSDAnySimpleType)</pre>
<div class="block">Return a string containing the lexical representation of the
 simple type.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>lexicalXSDAnySimpleType</code> - A string containing lexical
     representation of the simple type.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A string containing the lexical representation of the
     simple type.</dd>
</dl>
</li>
</ul>
<a name="printString-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>printString</h4>
<pre>java.lang.String&nbsp;printString(java.lang.String&nbsp;val)</pre>
<div class="block">Converts the string argument into a string.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>val</code> - A string value.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A string containing a lexical representation of xsd:string</dd>
</dl>
</li>
</ul>
<a name="printInteger-java.math.BigInteger-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>printInteger</h4>
<pre>java.lang.String&nbsp;printInteger(java.math.BigInteger&nbsp;val)</pre>
<div class="block">Converts a BigInteger value into a string.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>val</code> - A BigInteger value</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A string containing a lexical representation of xsd:integer</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - <code>val</code> is null.</dd>
</dl>
</li>
</ul>
<a name="printInt-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>printInt</h4>
<pre>java.lang.String&nbsp;printInt(int&nbsp;val)</pre>
<div class="block">Converts an int value into a string.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>val</code> - An int value</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A string containing a lexical representation of xsd:int</dd>
</dl>
</li>
</ul>
<a name="printLong-long-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>printLong</h4>
<pre>java.lang.String&nbsp;printLong(long&nbsp;val)</pre>
<div class="block">Converts a long value into a string.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>val</code> - A long value</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A string containing a lexical representation of xsd:long</dd>
</dl>
</li>
</ul>
<a name="printShort-short-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>printShort</h4>
<pre>java.lang.String&nbsp;printShort(short&nbsp;val)</pre>
<div class="block">Converts a short value into a string.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>val</code> - A short value</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A string containing a lexical representation of xsd:short</dd>
</dl>
</li>
</ul>
<a name="printDecimal-java.math.BigDecimal-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>printDecimal</h4>
<pre>java.lang.String&nbsp;printDecimal(java.math.BigDecimal&nbsp;val)</pre>
<div class="block">Converts a BigDecimal value into a string.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>val</code> - A BigDecimal value</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A string containing a lexical representation of xsd:decimal</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - <code>val</code> is null.</dd>
</dl>
</li>
</ul>
<a name="printFloat-float-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>printFloat</h4>
<pre>java.lang.String&nbsp;printFloat(float&nbsp;val)</pre>
<div class="block">Converts a float value into a string.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>val</code> - A float value</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A string containing a lexical representation of xsd:float</dd>
</dl>
</li>
</ul>
<a name="printDouble-double-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>printDouble</h4>
<pre>java.lang.String&nbsp;printDouble(double&nbsp;val)</pre>
<div class="block">Converts a double value into a string.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>val</code> - A double value</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A string containing a lexical representation of xsd:double</dd>
</dl>
</li>
</ul>
<a name="printBoolean-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>printBoolean</h4>
<pre>java.lang.String&nbsp;printBoolean(boolean&nbsp;val)</pre>
<div class="block">Converts a boolean value into a string.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>val</code> - A boolean value</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A string containing a lexical representation of xsd:boolean</dd>
</dl>
</li>
</ul>
<a name="printByte-byte-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>printByte</h4>
<pre>java.lang.String&nbsp;printByte(byte&nbsp;val)</pre>
<div class="block">Converts a byte value into a string.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>val</code> - A byte value</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A string containing a lexical representation of xsd:byte</dd>
</dl>
</li>
</ul>
<a name="printQName-javax.xml.namespace.QName-javax.xml.namespace.NamespaceContext-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>printQName</h4>
<pre>java.lang.String&nbsp;printQName(javax.xml.namespace.QName&nbsp;val,
                            javax.xml.namespace.NamespaceContext&nbsp;nsc)</pre>
<div class="block">Converts a QName instance into a string.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>val</code> - A QName value</dd>
<dd><code>nsc</code> - A namespace context for interpreting a prefix within a QName.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A string containing a lexical representation of QName</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if <code>val</code> is null or
 if <code>nsc</code> is non-null or <code>nsc.getPrefix(nsprefixFromVal)</code> is null.</dd>
</dl>
</li>
</ul>
<a name="printDateTime-java.util.Calendar-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>printDateTime</h4>
<pre>java.lang.String&nbsp;printDateTime(java.util.Calendar&nbsp;val)</pre>
<div class="block">Converts a Calendar value into a string.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>val</code> - A Calendar value</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A string containing a lexical representation of xsd:dateTime</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if <code>val</code> is null.</dd>
</dl>
</li>
</ul>
<a name="printBase64Binary-byte:A-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>printBase64Binary</h4>
<pre>java.lang.String&nbsp;printBase64Binary(byte[]&nbsp;val)</pre>
<div class="block">Converts an array of bytes into a string.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>val</code> - an array of bytes</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A string containing a lexical representation of xsd:base64Binary</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if <code>val</code> is null.</dd>
</dl>
</li>
</ul>
<a name="printHexBinary-byte:A-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>printHexBinary</h4>
<pre>java.lang.String&nbsp;printHexBinary(byte[]&nbsp;val)</pre>
<div class="block">Converts an array of bytes into a string.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>val</code> - an array of bytes</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A string containing a lexical representation of xsd:hexBinary</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if <code>val</code> is null.</dd>
</dl>
</li>
</ul>
<a name="printUnsignedInt-long-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>printUnsignedInt</h4>
<pre>java.lang.String&nbsp;printUnsignedInt(long&nbsp;val)</pre>
<div class="block">Converts a long value into a string.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>val</code> - A long value</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A string containing a lexical representation of xsd:unsignedInt</dd>
</dl>
</li>
</ul>
<a name="printUnsignedShort-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>printUnsignedShort</h4>
<pre>java.lang.String&nbsp;printUnsignedShort(int&nbsp;val)</pre>
<div class="block">Converts an int value into a string.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>val</code> - An int value</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A string containing a lexical representation of xsd:unsignedShort</dd>
</dl>
</li>
</ul>
<a name="printTime-java.util.Calendar-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>printTime</h4>
<pre>java.lang.String&nbsp;printTime(java.util.Calendar&nbsp;val)</pre>
<div class="block">Converts a Calendar value into a string.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>val</code> - A Calendar value</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A string containing a lexical representation of xsd:time</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if <code>val</code> is null.</dd>
</dl>
</li>
</ul>
<a name="printDate-java.util.Calendar-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>printDate</h4>
<pre>java.lang.String&nbsp;printDate(java.util.Calendar&nbsp;val)</pre>
<div class="block">Converts a Calendar value into a string.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>val</code> - A Calendar value</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A string containing a lexical representation of xsd:date</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if <code>val</code> is null.</dd>
</dl>
</li>
</ul>
<a name="printAnySimpleType-java.lang.String-">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>printAnySimpleType</h4>
<pre>java.lang.String&nbsp;printAnySimpleType(java.lang.String&nbsp;val)</pre>
<div class="block">Converts a string value into a string.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>val</code> - A string value</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A string containing a lexical representation of xsd:AnySimpleType</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../index-all.html">Index</a></li>
<li><a href="../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../javax/xml/bind/DatatypeConverter.html" title="class in javax.xml.bind"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../javax/xml/bind/Element.html" title="interface in javax.xml.bind"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?javax/xml/bind/DatatypeConverterInterface.html" target="_top">Frames</a></li>
<li><a href="DatatypeConverterInterface.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>
