Save This Page
Home » xml-commons-external-1.4.01-src » javax » xml » datatype » [javadoc | source]
javax.xml.datatype
abstract public class: DatatypeFactory [javadoc | source]
java.lang.Object
   javax.xml.datatype.DatatypeFactory

Factory that creates new javax.xml.datatype Objects that map XML to/from Java Objects.

#newInstance() is used to create a new DatatypeFactory. The following implementation resolution mechanisms are used in the following order:

  1. If the system property specified by #DATATYPEFACTORY_PROPERTY , "javax.xml.datatype.DatatypeFactory", exists, a class with the name of the property's value is instantiated. Any Exception thrown during the instantiation process is wrapped as a DatatypeConfigurationException .
  2. If the file ${JAVA_HOME}/lib/jaxp.properties exists, it is loaded in a java.util.Properties Object. The Properties Object is then queried for the property as documented in the prior step and processed as documented in the prior step.
  3. The services resolution mechanism is used, e.g. META-INF/services/java.xml.datatype.DatatypeFactory. Any Exception thrown during the instantiation process is wrapped as a DatatypeConfigurationException .
  4. The final mechanism is to attempt to instantiate the Class specified by #DATATYPEFACTORY_IMPLEMENTATION_CLASS , "javax.xml.datatype.DatatypeFactoryImpl". Any Exception thrown during the instantiation process is wrapped as a DatatypeConfigurationException .
Field Summary
public static final  String DATATYPEFACTORY_PROPERTY   

Default property name as defined in JSR 206: Java(TM) API for XML Processing (JAXP) 1.3.

Default value is javax.xml.datatype.DatatypeFactory.

 
public static final  String DATATYPEFACTORY_IMPLEMENTATION_CLASS   

Default implementation class name as defined in JSR 206: Java(TM) API for XML Processing (JAXP) 1.3.

Default value is org.apache.xerces.jaxp.datatype.DatatypeFactoryImpl.

 
Constructor:
 protected DatatypeFactory() 
Method from javax.xml.datatype.DatatypeFactory Summary:
newDuration,   newDuration,   newDuration,   newDuration,   newDurationDayTime,   newDurationDayTime,   newDurationDayTime,   newDurationDayTime,   newDurationYearMonth,   newDurationYearMonth,   newDurationYearMonth,   newDurationYearMonth,   newInstance,   newInstance,   newXMLGregorianCalendar,   newXMLGregorianCalendar,   newXMLGregorianCalendar,   newXMLGregorianCalendar,   newXMLGregorianCalendar,   newXMLGregorianCalendarDate,   newXMLGregorianCalendarTime,   newXMLGregorianCalendarTime,   newXMLGregorianCalendarTime
Methods from java.lang.Object:
clone,   equals,   finalize,   getClass,   hashCode,   notify,   notifyAll,   toString,   wait,   wait,   wait
Method from javax.xml.datatype.DatatypeFactory Detail:
 abstract public Duration newDuration(String lexicalRepresentation)

    Obtain a new instance of a Duration specifying the Duration as its string representation, "PnYnMnDTnHnMnS", as defined in XML Schema 1.0 section 3.2.6.1.

    XML Schema Part 2: Datatypes, 3.2.6 duration, defines duration as:

    duration represents a duration of time. The value space of duration is a six-dimensional space where the coordinates designate the Gregorian year, month, day, hour, minute, and second components defined in Section 5.5.3.2 of [ISO 8601], respectively. These components are ordered in their significance by their order of appearance i.e. as year, month, day, hour, minute, and second.

    All six values are set and available from the created Duration

    The XML Schema specification states that values can be of an arbitrary size. Implementations may chose not to or be incapable of supporting arbitrarily large and/or small values. An UnsupportedOperationException will be thrown with a message indicating implementation limits if implementation capacities are exceeded.

 abstract public Duration newDuration(long durationInMilliSeconds)

    Obtain a new instance of a Duration specifying the Duration as milliseconds.

    XML Schema Part 2: Datatypes, 3.2.6 duration, defines duration as:

    duration represents a duration of time. The value space of duration is a six-dimensional space where the coordinates designate the Gregorian year, month, day, hour, minute, and second components defined in Section 5.5.3.2 of [ISO 8601], respectively. These components are ordered in their significance by their order of appearance i.e. as year, month, day, hour, minute, and second.

    All six values are set by computing their values from the specified milliseconds and are available using the get methods of the created Duration . The values conform to and are defined by:

    The default start instance is defined by GregorianCalendar 's use of the start of the epoch: i.e., java.util.Calendar#YEAR = 1970, java.util.Calendar#MONTH = java.util.Calendar#JANUARY , java.util.Calendar#DATE = 1, etc. This is important as there are variations in the Gregorian Calendar, e.g. leap years have different days in the month = java.util.Calendar#FEBRUARY so the result of Duration#getMonths() and Duration#getDays() can be influenced.

 abstract public Duration newDuration(boolean isPositive,
    BigInteger years,
    BigInteger months,
    BigInteger days,
    BigInteger hours,
    BigInteger minutes,
    BigDecimal seconds)

    Obtain a new instance of a Duration specifying the Duration as isPositive, years, months, days, hours, minutes, seconds.

    The XML Schema specification states that values can be of an arbitrary size. Implementations may chose not to or be incapable of supporting arbitrarily large and/or small values. An UnsupportedOperationException will be thrown with a message indicating implementation limits if implementation capacities are exceeded.

    A null value indicates that field is not set.

 public Duration newDuration(boolean isPositive,
    int years,
    int months,
    int days,
    int hours,
    int minutes,
    int seconds) 

    Obtain a new instance of a Duration specifying the Duration as isPositive, years, months, days, hours, minutes, seconds.

    A DatatypeConstants#FIELD_UNDEFINED value indicates that field is not set.

 public Duration newDurationDayTime(String lexicalRepresentation) 

    Create a Duration of type xdt:dayTimeDuration by parsing its String representation, "PnDTnHnMnS", XQuery 1.0 and XPath 2.0 Data Model, xdt:dayTimeDuration.

    The datatype xdt:dayTimeDuration is a subtype of xs:duration whose lexical representation contains only day, hour, minute, and second components. This datatype resides in the namespace http://www.w3.org/2003/11/xpath-datatypes.

    All four values are set and available from the created Duration

    The XML Schema specification states that values can be of an arbitrary size. Implementations may chose not to or be incapable of supporting arbitrarily large and/or small values. An UnsupportedOperationException will be thrown with a message indicating implementation limits if implementation capacities are exceeded.

 public Duration newDurationDayTime(long durationInMilliseconds) 
 public Duration newDurationDayTime(boolean isPositive,
    BigInteger day,
    BigInteger hour,
    BigInteger minute,
    BigInteger second) 

    Create a Duration of type xdt:dayTimeDuration using the specified day, hour, minute and second as defined in XQuery 1.0 and XPath 2.0 Data Model, xdt:dayTimeDuration.

    The datatype xdt:dayTimeDuration is a subtype of xs:duration whose lexical representation contains only day, hour, minute, and second components. This datatype resides in the namespace http://www.w3.org/2003/11/xpath-datatypes.

    The XML Schema specification states that values can be of an arbitrary size. Implementations may chose not to or be incapable of supporting arbitrarily large and/or small values. An UnsupportedOperationException will be thrown with a message indicating implementation limits if implementation capacities are exceeded.

    A null value indicates that field is not set.

 public Duration newDurationDayTime(boolean isPositive,
    int day,
    int hour,
    int minute,
    int second) 

    Create a Duration of type xdt:dayTimeDuration using the specified day, hour, minute and second as defined in XQuery 1.0 and XPath 2.0 Data Model, xdt:dayTimeDuration.

    The datatype xdt:dayTimeDuration is a subtype of xs:duration whose lexical representation contains only day, hour, minute, and second components. This datatype resides in the namespace http://www.w3.org/2003/11/xpath-datatypes.

    A DatatypeConstants#FIELD_UNDEFINED value indicates that field is not set.

 public Duration newDurationYearMonth(String lexicalRepresentation) 

    Create a Duration of type xdt:yearMonthDuration by parsing its String representation, "PnYnM", XQuery 1.0 and XPath 2.0 Data Model, xdt:yearMonthDuration.

    The datatype xdt:yearMonthDuration is a subtype of xs:duration whose lexical representation contains only year and month components. This datatype resides in the namespace javax.xml.XMLConstants#W3C_XPATH_DATATYPE_NS_URI .

    Both values are set and available from the created Duration

    The XML Schema specification states that values can be of an arbitrary size. Implementations may chose not to or be incapable of supporting arbitrarily large and/or small values. An UnsupportedOperationException will be thrown with a message indicating implementation limits if implementation capacities are exceeded.

 public Duration newDurationYearMonth(long durationInMilliseconds) 
 public Duration newDurationYearMonth(boolean isPositive,
    BigInteger year,
    BigInteger month) 

    Create a Duration of type xdt:yearMonthDuration using the specified year and month as defined in XQuery 1.0 and XPath 2.0 Data Model, xdt:yearMonthDuration.

    The XML Schema specification states that values can be of an arbitrary size. Implementations may chose not to or be incapable of supporting arbitrarily large and/or small values. An UnsupportedOperationException will be thrown with a message indicating implementation limits if implementation capacities are exceeded.

    A null value indicates that field is not set.

 public Duration newDurationYearMonth(boolean isPositive,
    int year,
    int month) 
 public static DatatypeFactory newInstance() throws DatatypeConfigurationException 

    Obtain a new instance of a DatatypeFactory.

    The implementation resolution mechanisms are defined in this Class's documentation.

 public static DatatypeFactory newInstance(String factoryClassName,
    ClassLoader classLoader) throws DatatypeConfigurationException 
 abstract public XMLGregorianCalendar newXMLGregorianCalendar()
 abstract public XMLGregorianCalendar newXMLGregorianCalendar(String lexicalRepresentation)

    Create a new XMLGregorianCalendar by parsing the String as a lexical representation.

    Parsing the lexical string representation is defined in XML Schema 1.0 Part 2, Section 3.2.[7-14].1, Lexical Representation.

    The string representation may not have any leading and trailing whitespaces.

    The parsing is done field by field so that the following holds for any lexically correct String x:

    newXMLGregorianCalendar(x).toXMLFormat().equals(x)
    

    Except for the noted lexical/canonical representation mismatches listed in XML Schema 1.0 errata, Section 3.2.7.2.

 abstract public XMLGregorianCalendar newXMLGregorianCalendar(GregorianCalendar cal)
 abstract public XMLGregorianCalendar newXMLGregorianCalendar(BigInteger year,
    int month,
    int day,
    int hour,
    int minute,
    int second,
    BigDecimal fractionalSecond,
    int timezone)

    Constructor allowing for complete value spaces allowed by W3C XML Schema 1.0 recommendation for xsd:dateTime and related builtin datatypes. Note that year parameter supports arbitrarily large numbers and fractionalSecond has infinite precision.

    A null value indicates that field is not set.

 public XMLGregorianCalendar newXMLGregorianCalendar(int year,
    int month,
    int day,
    int hour,
    int minute,
    int second,
    int millisecond,
    int timezone) 

    Constructor of value spaces that a java.util.GregorianCalendar instance would need to convert to an XMLGregorianCalendar instance.

    XMLGregorianCalendar eon and fractionalSecond are set to null

    A DatatypeConstants#FIELD_UNDEFINED value indicates that field is not set.

 public XMLGregorianCalendar newXMLGregorianCalendarDate(int year,
    int month,
    int day,
    int timezone) 
 public XMLGregorianCalendar newXMLGregorianCalendarTime(int hours,
    int minutes,
    int seconds,
    int timezone) 
 public XMLGregorianCalendar newXMLGregorianCalendarTime(int hours,
    int minutes,
    int seconds,
    BigDecimal fractionalSecond,
    int timezone) 

    Create a Java instance of XML Schema builtin datatype time.

    A null value indicates that field is not set.

    A DatatypeConstants#FIELD_UNDEFINED value indicates that field is not set.

 public XMLGregorianCalendar newXMLGregorianCalendarTime(int hours,
    int minutes,
    int seconds,
    int milliseconds,
    int timezone)