Sidar, principal.
>>contenido
Fundación Sidar - Acceso Universal
Seminario SIDAR
Principal >> Aplicación: UAW >> Documentación de las clases java

uaw
Class UawDOMSAX

java.lang.Object
  |
  +--uaw.UawDOMSAX

public class UawDOMSAX
extends java.lang.Object

UawDOMSAX sirve analizadores DOM y SAX y otros métodos auxiliares de análisis y procesamiento de documentos XML -- especialmente documentos del DTD XHTML -- escondiendo los detalles de configuración a otras clases.

Todos los métodos son estáticos.

Version:
1.0, 2004/06
Author:
Mireia Ribera
See Also:
DTD XHTML estricte, DTD XHTML transicional, DTD XHTML frameset

UML data model
legend graphical representation



Field Summary
static java.lang.String htmlQualifiedName
Calificador del espacio de nombres HTML.
static java.lang.String htmlXmlns
Espacio de nombres HTML.
static java.lang.String XHTMLFRAMESETPUBLICID
Identificador público del DTD de XML XHTML Frameset.
static java.lang.String XHTMLFRAMESETSYSTEMID
Identificador de sistema del DTD de XML XHTML Frameset.
static java.lang.String XHTMLSTRICTPUBLICID
Identificador público del DTD de XML XHTML Strict.
static java.lang.String XHTMLSTRICTSYSTEMID
Identificador de sistema del DTD de XML XHTML Strict.
static java.lang.String XHTMLTRANSITIONALPUBLICID
Identificador público del DTD de XML XHTML Transitional.
static java.lang.String XHTMLTRANSITIONALSYSTEMID
Identificador de sistema del DTD de XML XHTML Transitional.
Constructor Summary
UawDOMSAX ()
Method Summary
static org.w3c.dom.Document crearDocument ()
Crea un documento vacío.
static javax.xml.parsers.DocumentBuilder crearDocumentBuilder (boolean validacion)
Crea un nuevo constructor de documentos (DocumentBuilder) JAXP
static org.w3c.dom.DocumentType crearDocumentType (java.lang.String qualifiedName, java.lang.String publicId, java.lang.String systemId)
Crea un DocumentType con la propiedad Node.ownerDocument a null.
static org.w3c.dom.DocumentType crearXhtmlDocumentType ()
Crea un DocumentType XHTML transitional con la propiedad Node.ownerDocument a null.
static org.xml.sax.XMLReader crearXMLReader (org.xml.sax.ContentHandler ch, boolean validacion)
Crea un parser SAX XMLReader.
static boolean esFrameset (org.w3c.dom.Document d)
Indica si el documento dado es una página de definición de marcos.
static org.w3c.dom.Document fusionar (EstructuraDivisions ed, java.util.Vector vUris, java.lang.String nombresFicheros, org.w3c.dom.stylesheets.StyleSheetList listaCSS)
Fusiona diversos Documents DOM XHTML dados en un único documento XHTML.
static org.w3c.dom.Document parsejatDOM (java.lang.String uri, boolean validacion)
Parsea el documento XML referenciado usando un DOMParser.
static java.util.Vector parsejatDOM (java.util.Vector vURIs, boolean validacion)
Parsea los documentos XML referenciados usando un DOMParser y devuelve un vector de objetos Document.
static void parsejatSAX (org.xml.sax.ContentHandler ch, boolean validacion, java.lang.String uri)
Parsea el documento XML referenciado usando un XMLReader y comunica los eventos al ContentHandler dado.
static void relativitzarVincles (org.w3c.dom.Document d, java.net.URI uribase)
Relativiza los vínculos a, area y link a partir de la URI base dada.
static void serialitzarDOM (org.w3c.dom.Document docOrigen, org.w3c.dom.DocumentType dt, java.lang.Object out)
Escribe a disco el fichero XML.
static void serialitzarSS (org.w3c.dom.css.CSSStyleSheet stylesheet, java.lang.String fichero)
Escribe a disco el fichero CSS.
static void traduirVincles (org.w3c.dom.Document d, java.util.TreeMap traducciones, boolean eliminarTarget)
Modifica los vínculos de un documento XHTML según la tabla de traducciones.
private static void traduirVincles (org.w3c.dom.NodeList nl, java.util.TreeMap traducciones, boolean eliminarTarget)
Modificación de los vínculos de un conjunto de nodos según la tabla de traducciones.
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Field Detail

htmlQualifiedName

public static final java.lang.String htmlQualifiedName

Calificador del espacio de nombres HTML.

See Also:
Constant Field Values

htmlXmlns

public static final java.lang.String htmlXmlns

Espacio de nombres HTML.

See Also:
Constant Field Values

XHTMLFRAMESETPUBLICID

public static final java.lang.String XHTMLFRAMESETPUBLICID

Identificador público del DTD de XML XHTML Frameset.

See Also:
Constant Field Values

XHTMLFRAMESETSYSTEMID

public static final java.lang.String XHTMLFRAMESETSYSTEMID

Identificador de sistema del DTD de XML XHTML Frameset.

See Also:
Constant Field Values

XHTMLSTRICTPUBLICID

public static final java.lang.String XHTMLSTRICTPUBLICID

Identificador público del DTD de XML XHTML Strict.

See Also:
Constant Field Values

XHTMLSTRICTSYSTEMID

public static final java.lang.String XHTMLSTRICTSYSTEMID

Identificador de sistema del DTD de XML XHTML Strict.

See Also:
Constant Field Values

XHTMLTRANSITIONALPUBLICID

public static final java.lang.String XHTMLTRANSITIONALPUBLICID

Identificador público del DTD de XML XHTML Transitional.

See Also:
Constant Field Values

XHTMLTRANSITIONALSYSTEMID

public static final java.lang.String XHTMLTRANSITIONALSYSTEMID

Identificador de sistema del DTD de XML XHTML Transitional.

See Also:
Constant Field Values
Constructor Detail

UawDOMSAX

public UawDOMSAX()
Method Detail

crearDocument

public static org.w3c.dom.Document crearDocument()
                                          throws UawException

Crea un documento vacío.

Throws:
UawException - si se ha producido algún problema durante la configuración del constructor del Document

crearDocumentBuilder

public static javax.xml.parsers.DocumentBuilder crearDocumentBuilder(boolean validacion)
                                                              throws UawException

Crea un nuevo constructor de documentos (DocumentBuilder) JAXP

Parameters:
validacion - indica si el analizador validará los documentos
Throws:
UawException - si se ha producido algún problema en la configuración del analizador

crearDocumentType

public static org.w3c.dom.DocumentType crearDocumentType(java.lang.String qualifiedName,
                                                         java.lang.String publicId,
                                                         java.lang.String systemId)
                                                  throws java.lang.NullPointerException,
                                                         UawException

Crea un DocumentType con la propiedad Node.ownerDocument a null.

Throws:
UawException - si se ha producido algún problema en la configuración del constructor del documento
java.lang.NullPointerException - si algún parámetro es nulo
 

crearXhtmlDocumentType

public static org.w3c.dom.DocumentType crearXhtmlDocumentType()
                                                       throws UawException

Crea un DocumentType XHTML transitional con la propiedadNode.ownerDocument a null.

Throws:
UawException - si se ha producido algún problema en la configuración del constructor del documento.

crearXMLReader

public static org.xml.sax.XMLReader crearXMLReader(org.xml.sax.ContentHandler ch,
                                                   boolean validacion)
                                            throws UawException

Crea un parser SAX XMLReader.

Parameters:
ch - un ContentHandler opcional. Si no se define se toma org.xml.sax.helpers.DefaultHandler
validacion - indica si el analizador validará los documentos
Returns:
el parser
Throws:
UawException - si se ha producido algún problema en la creación o configuración del parser.

esFrameset

public static boolean esFrameset(org.w3c.dom.Document d)

Indica si el document dado es una página de definición de marcos.

Parameters:
d - El documento a analizar
Throws:
java.lang.NullPointerException - si d es nulo

fusionar

public static org.w3c.dom.Document fusionar(EstructuraDivisions ed,
                                            java.util.Vector vUris,
                                            java.lang.String nombresFicheros,
                                            org.w3c.dom.stylesheets.StyleSheetList listaCSS)
                                     throws java.lang.NullPointerException,
                                            java.lang.IllegalArgumentException,
                                            UawException

Fusiona diversos Documents DOM XHTML dados en un único documento DOM XHTML. El vector de vUris debe contener un listado de URIs correspondientes a los documentos XHTML que se fusionarán. La fusión se realizará integrándolos todos en un único documento en el que aparecerán tantas divisiones (div) como documentos en el orden y según el nombre de las cajas de la EstructuraDivisions.

En la EstructuraDivisions se lee la posicioSel para seleccionar uno de los elementos del vector del cual se leerá la información única (título, metadatos...).

En la versión actual no se controlan las repeticiones ni inconsistencias de links ni comentarios. Se eliminan los scripts.

Parameters:
ed - La EstructuraDivisions con el nombre de cada división
nombresFicheros - cadena con indicación de los ficheros originales que se incluirán en el documento fusionado, con el fin de añadirle un comentario explicativo.
listaCSS - lista de las hojas de estilo a asociar al documento fusionado
Throws:
java.lang.NullPointerException - si ed o vUris son nulos
java.lang.IllegalArgumentException - si hay problemas de consistencia en la EstructuraDivisions o en el parseado de los documentos dados
UawException - si se han producido problemas en la configuración del parser.

parsejatDOM

public static org.w3c.dom.Document parsejatDOM(java.lang.String uri,
                                               boolean validacion)
                                        throws UawException

Parsea el documento XML referenciado usando un DOMParser.

Parameters:
validacion - indica si el analizador validará los documentos
uri - la URI del documento a parsear
Throws:
java.lang.NullPointerException - si uri es nulo
UawException - si se ha producido algún problema en la configuración del parseador
java.lang.IllegalArgumentException - si no se encuentra el fichero correspondiente a uri o si se ha producido algún error en el parseado

parsejatDOM

public static java.util.Vector parsejatDOM(java.util.Vector vURIs,
                                           boolean validacion)
                                    throws java.lang.IllegalArgumentException,
                                           UawException,
                                           java.lang.NullPointerException

Parsea los documentos XML referenciados usando un DOMParser y devuelve un vector de objetos Document.

Parameters:
validacion - indica si el analizador validará los documentos
vURIs - un vector con las UawURIs de los documentos a parsear
Returns:
Un vector con los documentos DOM resultado del parseado
Throws:
java.lang.NullPointerException - si vURIs es nulo
UawException - si se ha producido algún problema en la configuración del parseador.
java.lang.IllegalArgumentException - si el vector no esta formado por UawURIs correctas, si hay problemas en la localización de los ficheros correspondientes o se ha producido algún error en el parseado.

parsejatSAX

public static void parsejatSAX(org.xml.sax.ContentHandler ch,
                               boolean validacion,
                               java.lang.String uri)
                        throws java.lang.NullPointerException,
                               UawException,
                               java.lang.IllegalArgumentException

Parsea el documento XML referenciado usando un XMLReader y comunica los eventos al ContentHandler dado.

Parameters:
ch - el ContentHandler que tratará los eventos de contenido
uri - la URI del documento a parsear
validacion - indica si el analizador validará los documentos
Throws:
java.lang.NullPointerException - si uri es nula
UawException - si se han producido problemas en la configuración del parser
java.lang.IllegalArgumentException - si uri no se puede leer, o se se ha producido algún error en el parseado

relativitzarVincles

public static void relativitzarVincles(org.w3c.dom.Document d,
                                       java.net.URI uribase)
                                throws UawException

Relativiza los vínculos a, area y link a partir de la URI base dada.

Parameters:
d - el documento XML origen
uribase - la URI a partir de la cual se deben relativizar los vínculos
Throws:
UawException - si los vínculos no se han podido relativizar con normalidad.

serialitzarDOM

public static void serialitzarDOM(org.w3c.dom.Document docFont,
                                  org.w3c.dom.DocumentType dt,
                                  java.lang.Object out)
                           throws java.lang.NullPointerException,
                                  java.lang.IllegalArgumentException,
                                  UawException

Escribe el fichero XML en out.

Parameters:
docFont - el XML Document origen
out - un objeto para escribir la salida, de la clase Writer, StreamResult o File o bien una cadena identificadora de una URI.
Throws:
java.lang.NullPointerException - si docFont o out son nulos
java.lang.IllegalArgumentException - si los parámetros no son válidos
UawException - si se han producido problemas en la configuración de la escritura o en la propia escritura.

serialitzarSS

public static void serialitzarSS(org.w3c.dom.css.CSSStyleSheet stylesheet,
                                 java.lang.String archivo)
                          throws java.lang.NullPointerException,
                                 java.lang.IllegalArgumentException,
                                 UawException

Escribe en disco el fichero CSS.

Parameters:
stylesheet - el objeto hoja de estilo a escribir
archivo - donde se escribirá la hoja de estilo
Throws:
java.lang.NullPointerException - si stylesheet o archivo son nulos
java.lang.IllegalArgumentException - si los parámetros no son válidos
UawException - si se ha producido algún problema en la configuración de la escritura o en la propia escritura

traduirVincles

public static void traduirVincles(org.w3c.dom.Document d,
                                  java.util.TreeMap traducciones,
                                  boolean eliminarTarget)
                           throws UawException

Modifica los vínculos de un documento XHTML según la tabla de traducciones.

Parameters:
traducciones - Table que indica como se deberán modificar los vínculos. Incluye como clave la dirección original (atributo href)y como valor el objeto Plana que será el nuevo destino
eliminarTarget - indica si se debe eliminar el atributo target
Throws:
java.lang.NullPointerException - si d o traducciones son nulos
java.lang.IllegalArgumentException - si los valores de traducciones no son Planes
UawException - si se ha producido algún problema en la modificación de los atributos. Si se produce esta excepción el Document d puede haber cambiando algunos vínculos sin rehacer la información original.

traduirVincles

private static void traduirVincles(org.w3c.dom.NodeList nl,
                                   java.util.TreeMap traducciones,
                                   boolean eliminarTarget)
                            throws UawException

Modificación de los vínculos de un conjunto de nodos según la tabla de traducciones. Este método es un método auxiliar de traduirVincles()

Parameters:
traducciones - Tabla con indicación de como se deberán modificar los vínculos. Incluye como clave la dirección original (atributo href) y como valor la URI que será el nuevo destino. Tanto en un caso como otro se han eliminado los posibles fragmentos existentes.
eliminarTarget - indica si hay que eliminar el atributo target
Throws:
java.lang.NullPointerException - si nl o traducciones son nulos
java.lang.IllegalArgumentException - si los valores de traducciones no son Planes
UawException - si se ha producido algún problema en la modificación de los atributos.
See Also:
traduirVincles(Document, TreeMap, boolean)