Bibliotecas contenedoras de esquemas (Java)

www.altova.com Imprimir este apartado Página anterior Subir un nivel Página siguiente

Inicio >  Guía y referencia del usuario > Generador de código > Generar código fuente a partir de esquemas o DTD >

Bibliotecas contenedoras de esquemas (Java)

Esta es la correspondencia predeterminada de tipos XML Schema con tipos de datos Java:

 

XML Schema

Java

Observaciones

xs:string

String


xs:boolean

boolean


xs:decimal

java.math.BigDecimal


xs:float, xs:double

double


xs:integer

java.math.BigInteger


xs:long

long


xs:unsignedLong

java.math.BigInteger

Java no tiene tipos sin firmar.

xs:int

int


xs:unsignedInt

long

Java no tiene tipos sin firmar.

xs:dateTime, date, time, gYearMonth, gYear, gMonthDay, gDay, gMonth

com.altova.types.DateTime


xs:duration

com.altova.types.Duration


xs:hexBinary and xs:base64Binary

byte[]

La codificación y decodificación de datos binarios se realiza automáticamente.

xs:anySimpleType

string


 

Los tipos XML Schema que faltan en la lista son tipos derivados y corresponde al mismo tipo Java que su correspondiente tipo base.

 

Clases generadas

 

Por cada tipo del esquema se genera una clase que contiene un miembro por cada atributo y elemento del tipo. Los miembros se llaman igual que los atributos o elementos del esquema original (en caso de conflicto se anexa un número). Para los tipos simples se generan operadores de asignación y conversión. Para los tipos simples con facetas enumeration, se pueden usar los métodos GetEnumerationValue() y SetEnumerationValue(int) junto con las constantes generadas para cada valor de enumeración. Además, el método StaticInfo() permite acceder a la información del esquema como uno de estos tipos:

 

com.altova.xml.meta.SimpleType

com.altova.xml.meta.ComplexType

 

Las clases generadas a partir de tipos complejos incluyen el método SetXsiType(), que permite configurar el atributo xsi:type del tipo. Este método puede ser muy útil a la hora de crear elementos de instancia XML de un tipo derivado.

 

Además de las clases para los tipos declarados en el esquema XML, se genera también una clase de documento ("Doc"). Esta clase contiene todos los elementos raíz posibles como miembros, así como varios métodos más. Para más información sobre esta clase consulte com.[SuEsquema].[Doc].

 

Nota:        el nombre real de la clase depende del nombre del esquema .xsd.

 

Por cada atributo o elemento miembro de un tipo de esquema se genera una clase nueva. Para más información sobre dichas clases consulte:

 

com.[SuEsquema].[SuTipoEsquema].AtributoMiembro

com.[SuEsquema].[SuTipoEsquema].ElementoMiembro

 

Nota:        el nombre real de las clases depende del nombre del atributo o elemento del esquema.

 

Control de errores

 

Los errores se notifican por medio de excepciones. Estas son las clases de excepción que están definidas en el espacio de nombres com.altova:

 

Clase

Clase base

Descripción

SourceInstanceUnvailableException

Exception

Se encontró un problema al intentar cargar una instancia XML.

TargetInstanceUnavailableException

Exception

Se encontró un problema al intentar guardar una instancia XML.

 

Además se suelen usar estas excepciones Java:

 

Clase

Descripción

java.lang.Error

Error de lógica de programa interna (independiente de los datos de entrada).

java.lang.Exception

Clase base para errores de tiempo de ejecución.

java.lang.IllegalArgumentsException

Se llamó a un método con valores de argumento no válidos o falló una conversión de tipo.

java.lang.ArithmeticException

Excepción generada cuando falla una conversión de tipo numérico.

 

Acceso a la información del esquema

 

La biblioteca generada permite acceder a información estática del esquema por medio de estas clases.

 

com.altova.xml.meta.Attribute

com.altova.xml.meta.ComplexType

com.altova.xml.meta.Element

com.altova.xml.meta.SimpleType

 

Las propiedades que devuelven una de las clases de metadatos devuelven un objeto NULL si no existe la propiedad correspondiente.

 

 


© 2019 Altova GmbH