Documente Academic
Documente Profesional
Documente Cultură
ndice de contenido
Sntaxis del manual................................................................................................................................................2
Extensive Marckup Language (XML)...................................................................................................................2
XML: La Etiqueta XML...................................................................................................................................2
XML: Etiquetas Xml como contenedores de informacin............................................................................... 2
El Documento XML..............................................................................................................................................3
DTD (Definicin de documento XML).................................................................................................................4
XPath (Lenguaje de acceso a elemento/s Xml).....................................................................................................5
XSD: XML Schema (Definicin de esquema XML)............................................................................................ 6
XSD: Definicin de un documento de esquema xsd........................................................................................ 6
XSD: Asociacin de un esquema en un documento xml (a partir de una etiqueta)..........................................6
XSD: Elemento etiqueta................................................................................................................................... 6
XSD: Tipos de datos bsicos xsd......................................................................................................................7
XSD: Tipos de datos predefinidos.................................................................................................................... 7
XSD: mbito de tipos de datos........................................................................................................................ 7
XSD: Definicin de contenido en tipos de datos predefinidos.........................................................................8
XSD: Herencia y mezcla de datos predefinidos............................................................................................... 8
XSD: Restricciones aplicables a los contenidos...............................................................................................8
XSLT Lenguaje de transformacin de datos xml................................................................................................ 10
XSLT: El Documento de transformacin........................................................................................................10
XSLT: Plantillas de transformacin................................................................................................................10
XSLT: Etiquetas de Plantillas de transformacin........................................................................................... 11
XSLT: Funciones.............................................................................................................................................11
XSLT: Localizacin........................................................................................................................................ 12
XQuery (Lenguaje unificado de consultas sobre datos Xml).................................................................................. 14
Procesador XQuery gratuito basado en xerces (Zorba): http://www.zorba-xquery.com/html/index..................14
Conceptos bsicos............................................................................................................................................... 14
Espacio de nombres.............................................................................................................................................14
Operadores...........................................................................................................................................................14
Sentencia de cdigo Xquery y tipos de datos soportados (<tdato>)................................................................... 14
Variables.............................................................................................................................................................. 14
Secuencias................................................................................................................................................................ 15
Funciones................................................................................................................................................................. 15
Instrucciones de control de flujo.............................................................................................................................. 15
Consulta XQuery FLWOR (For Let Where Order Return):............................................................................ 15
Funciones XQuery...............................................................................................................................................15
Tratamiento informtico de archivos xml........................................................................................................... 17
StAX (Streaming Api for Xml) Tratamiento secuencial (flujo) de documentos xml..................................... 17
SAX (Simple Api for xml) Tratamiento secuencial (eventos) de documentos xml........................................18
DOM (Document Object Model) Tratamiento aleatorio de documentos xml................................................19
XmlBinding (Aplicaciones de mapeo Elemento/s Xml - Clase/s nativa).......................................................21
Ir a Indice
Pgina 1/21
Ir a Indice
Pgina 2/21
El Documento XML
Documento XML Es un archivo de texto plano de tipo jerrquico donde se expresan en forma de rbol
informacin y su estructura.
En un documento xml existe un primer elemento virtual llamado documento raz al cual le sigue un slo
elemento etiqueta llamado nodo raz y partiendo de l, todo su contenido.
Documento xml texto plano:
Interpretacin del documento xml como DOM:
<?xml <AtributosDocumentoSepEspacio> ?>
<NodoRaz>
<Contenido>
</NodoRaz>
<DocumentoRaz>
<NodoRaz>
<Contenido>
</NodoRaz>
</DocumentoRaz>
Ir a Indice
Pgina 3/21
Ir a Indice
Pgina 4/21
Sintaxis
Sintaxisabreviada
Elementonodoactual(contexto)
self::
Elementopadredenodoactual
parent::
..
Elementohijodetiponodo
child::
Elementoshijosdetiponodo
descendant::
//
Elementohijodetipoatributo
attribute::
Elementosconpadreespecificado ancestor::
Nohay
<descripcinElemento/sDeseado/s>Descripcindel/oselemento/sdeseado/s,delasiguienteforma:
<nombreElementoDeseado>[[<predicado>]]
<nombreElementoDeseado>Nombredeelementodeseado,pudiendoutilizarlassiguientesfunciones:
*(asterisco)Todoslosnodosdetipoelementooatributo.
node()Todoslosnodosdecualquiertipo(elemento,atributo,texto,comentario,etc...).
text()Todoslosnodosdetipotexto.
comment()Todoslosnodosdetipocomentario.
processinginstruction()Todoslosnodosdetipo<?kv?>.
[<predicado>]:Permitefiltrarlosnodosresultantesenbaseaquecumplanunaovariascondiciones
(sepermitenoperadoresnot,andyor)olaexistenciadeunelemento(slonombreelemento):
[<elemento>|<funcionPredicado>[<condicin><valor>]]
Funcionesutilizablesdentrodelpredicado:
Ir a Indice
Pgina 5/21
position()Implicanmerodehijo(equivalencia:[position()=<indice>]=>[<indice>])
last()Implicaelltimodeloshijos.
id(identificadorNodoXml)Implicaelelementoconatributoidespecificado.
NOTA:Sieneldocumentoorigenxmlloselementosestnincluidosenalgnespaciodenombres,habrque
importarloenladeclaracindelaetiquetastylesheetyaportarelprefijoelegidoparalasmismasenxPath.
Ir a Indice
Pgina 6/21
<[pref:]element>
Atributosdelelemento:
nameNombrelocaldelaetiqueta.
[type]Nombredeltipodedatosquepodrtenerelelemento(sieltipoeslocal,sepuedeobviar).
[default/fixed]Valorpordefecto/fijoquetendrelelemento.
[minOccurs]Valormnimodeocurrenciasdelelemento.Pordefecto=0,unbounded=sinlmite.
[maxOccurs]Valormximodeocurrenciasdelelemento.Pordefecto=1,unbounded=sinlmite.
[pref:]notationCadenaqueespecificaunanotacin.
[pref:]name/qname/ncnameNombrevlidoname/qname/ncname.
[pref:]token/nmtoken/nmtokensTipotoken/nmtoken/nmtokens.
Booleanos:
[pref:]booleanBooleano(true/false).
Fechas/Horas:
[pref:]date/timeFecha/horayyyyMMdd/hh:mm:ss.
[pref:]dateTimeFechayhorayyyyMMddThh:mm:ss.
[pref:]durationTiempoPnynMndTnhnmns.
[pref:]gDay/gMonth/gYearNdames/Nmesao/Nao.
[pref:]gMonthDay/gYearMonthDaymes/Mesyao.
Datosbinarios:
[pref:]hexBinaryDatobinarioexpresadoenhexadecimal.
[pref:]base64BinaryDatobinarioexpresadoenbase64.
Ir a Indice
Pgina 7/21
Ir a Indice
Pgina 8/21
Valoresenumerados(tantoscomovalores):<[pref:]enumeration>value=<v1></[pref:]enumeration>
Longitud(lista/cadena):<[pref:]length>value=<longitud></[pref:]length>
Longitudmn/mx(lista/cad):<[pref:]min/maxLength>value=<longitud></[pref:]min/maxLength>
Expresinregular:<[pref:]pattern>value=<exp.Regular></[pref:]pattern>
Transformacindedatosdeentrada:
Reemplazocaracteres(lf,cr,tab,esp):<[pref:]whiteSpace>value=<valor></[pref:]whiteSpace>
Valoresposibles:preserve:sincambios,replace/collapse:Reemplazarconvarios/unespacio.
Ir a Indice
Pgina 9/21
Ir a Indice
Pgina 10/21
</[pref:]calltemplate>
Etiqueta Xsl para incluir/importar otras plantillas xsl dentro de este documento:
<[pref:]import/include"<RutaAXsl>/>
Sentenciaencasode(select)
<[pref:]iftest=<Exp.XPathBooleana>>
<transformacinEnCasoTrue>
</[pref:]if>
<[pref:]choose>
<[pref:]whentest=<Exp.XPathBooleana1>>
<transformacinEnCasoExp.XPathBooleana1>
</[pref:]when>
<[pref:]otherwise>
<transformacinEnCualquierOtroCaso>
</[pref:]otherwise>
</[pref:]choose>
Iteradorporcadaelemento...(foreach...)
<[pref:]foreachselect=<Exp.XPathElementos>
[<[pref:]sortselect=<Exp.XPathOrden>
order=<TipoOrdenacion>/>
<transformacinPorCadaElemento>
</[pref:]foreach>
testExpresinXPathbooleanadetipocomparativa:<Exp.XPath><comparacin><Exp.XPath/Valor>
select(foreach)ExpresinXPathqueresulteunconjuntodeelemento/squeseutilizarnparaiterar.
select(sort)ExpresinXPathconrutaalelem.dentrodelconjuntoporcuyovalorseordenarlaiteracin.
orderTipodeordenacindelaiteracin:ascending(Ascendente),descending(Descendente).
<transformacinXXX>Seccinconlatransformacinarealizarbajoesecontexto.
XSLT: Funciones
XSLTTraeconsigounaseriedefuncionesdeapoyoparalalgicadelasplantillas.
Funcionesbsicasxsltv1:
Elementcurrent()Devuelveelnodoactual(puedenoserelmismoqueelnodocontexto)
Stringname()Nombrelocaldelnodoseleccionado(sinespaciodenombres).
Stringlocalname()Nombredelnodoseleccionadoconelprefijodesuespaciodenombres(silotuviera).
Stringnamespaceuri()Nombredelauridelespaciodenombresdelnodoseleccionado(silotuviera).
Stringgenerateid()Identificadoruniversal/hashautogeneradoparaunnodoespecificado.
Autor: Jos Manuel Oyola Gonzlez, licencia creative commons
Ir a Indice
Pgina 11/21
Intcount()Nmerodenodosseleccionado.
booleanexists(String<XPathAElemento>)Truesiexisteelelemento.
elementdocument/doc(String<RutaAXmlExterno>)Nodorazdeundocumentoxmlexterno.
booleandocument/docavailable(String<RutaAXmlExterno>)Truesiexisteeldocumentoxmlexterno.
booleanelementavailable(String<etiqueta>)Truesielparsexsltsoportaunaetiqueta.
booleanfunctionavailable(String<funcin>)Truesielparsexsltsoportaunafuncin.
Stringformatnumber(<nmero>,<formato>[,<formatoDecimal>])Devuelveunnmeroformateado.
Caracteresformato:0(dgito),#(dgitosincero),.(sep.decimal),,sep.miles,;(sep.formato+)
Funcionesextendidasxsltv2:Prefijofn,espaciodenombreshttp://www.w3.org/2005/xpathfunctions
Listadodefuncionesbsicas(todasendireccinhttp://www.w3schools.com/xpath/xpath_functions.asp):
Nmericas:
- String fn:upper/lower-case(s) S a May/Min.
- number fn:number(arg) Convierte a nmero.
- boolean fn:contains(s1, s2) s1 est en s2?
- number fn:abs(num) Valor absoluto de num.
- boolean fn:starts/ends-with(s1, s2) s1 ini/fin s2?
- number fn:ceiling(num) Redondeo (>.1=>+1).
- boolean fn:matches(s, exreg) s cumple exreg?
- number fn:floor(num) Redondeo neg.(>-.1=>-1).
- String fn:replace(s,exreg,r) Reemp. exreg s x r.
- number fn:round(num) Redondeo (>.5=>+1).
Booleanos:
- number fn:round-half-to-even(num, ndec) Red.
- boolean fn:boolean(string s) Conv. A bool.
- number fn:avg(sec) Media aritm. de secuencia.
- boolean fn:not(boolean v) No v.
- number fn:sum(sec) Suma de secuencia.
- boolean fn:true/false() T/F Booleano.
- number fn:min(sec) Mnimo valor de secuencia.
Fechas:
- number fn:max(sec) Mximo valor de secuencia.
- DT fn:dateTime(Da d,Ti t) DT desde Da y Ti.
Cadenas:
- int fn:X-from-duration(Du du) X de Du.
- String fn:string(arg) Conv. A cadena.
- int fn:X/timezone-from-DT(DT dt) X de DT.
- int fn:compare(comp1,comp2) Compara.
- int fn:X/timezone-from-date(Da d) X de Da.
- String fn:concat(string1, string2,...) Concatena.
- Da/Ti/DT fn:current-Da/Ti/DT() Fech./Hor. act.
- String fn:string-join((string,string,...),sep) Union. - timeZone fn:implicit-timezone() Zona horaria.
- String fn:substring(string,start [,len]) Subcad.
Du(Duration),DT(DateTime), Da(Date),Ti(Time)
- String fn:substring-before/after(s,p) SCad a/d piv. X=years/months/days/hours/minutes/seconds
- int fn:string-length(string) Longitud cad.
XSLT: Localizacin
Xslt v1 de por s no admite localizacin, por lo que tendremos que hacer uso de funciones de terceros para ello:
- string.xsl Librera xsl (xsltsl.org) para el tratamiento de cadenas de texto.
- numbers.xsl Librera xsl (xsltsl.org) para el tratamiento de nmeros.
- date-time.xsl Librera xsl (xsltsl.org) para el tratamiento de fechas/horas.
- locale.xml/.xsd Archivo xml (y su correspondiente esquema) con la localizacin para nuestra hoja xsl.
<?xml version="1.0" encoding="UTF-8"?>
<locals xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="locale.xsd">
<!-- Un nodo config por cada localizacin deseada indicando en id el cdigo de lenguaje y pas a localizar-->
<config id="en_GB">
<!-- Formatos numricos y de fechas para esta localizacin-->
<number numberFormat="###,###.00" currencyFormat="###,###.00 "/> <!-- Formato numrico y moneda -->
<date shortFormat="%d/%m/%Y" longFormat="%d/%m/%Y"/>
<!-- Formato fecha corta y larga -->
<time shortFormat="%P %I:%M:%S" longFormat="%P %I:%M:%S"/>
<!-- Formato hora corta y larga -->
<timeStamp shortFormat="%d/%m/%Y T%P %I:%M:%S" longFormat="%d/%m/%Y T%P %I:%M:%S"/> <!-- Formato fecha y hora corta y larga -->
<!-- Mensajes de texto para esta localizacin-->
<!-- Un nodo text por cada mensaje a localizar indicando en id la clave del mensaje y en su contenido el mensaje localizado-->
<text id="msg.XXX">Mensaje Localizado</text>
Ir a Indice
Pgina 12/21
</config>
</locals>
Aplicacin en xslt:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:dt="http://xsltsl.org/date-time "
xmlns:num="http://xsltsl.org/numbers" xmlns="http://www.w3.org/1999/xhtml ">
<xsl:import href="date-time.xsl"/> <xsl:import href="numbers.xsl"/> <!-- Importamos las libreras externas -->
<xsl:param name="localeUri" select="'locale.xml'"/> <!-- Uri donde se encuentra el archivo de localizacin -->
<!-- Guardamos en loc el nombre de la locale a utilizar en la hoja de estilos (definida por el atributo lang del nodo raz). -->
<xsl:param name="loc" select="//@lang"/> <!-- Alusin al nodo / @atributo en el archivo de datos (.xml) con la localizacin. -->
<!-- Guardamos en locale el nodo base correspondiente a la locale loc del documento xml de locales. -->
<xsl:variable name="locale" select="document($localeUri)/locals/config[@id=$loc]" />
<!-- Aplicaciones de las libreras de localizacion Xslt 1 -->
<xsl:value-of select="$locale/text[@id='msg.xxx']" /> <!-- Obtener un mensaje localizado del documento xml de locales (por su id) -->
<!-- Obtener una fecha localizada segn la configuracin del documento xml de locales (por su id) -->
<xsl:call-template name="dt:format-date-time">
<xsl:with-param name="xsd-date-time" select="<XPathAFechaAFormatear>"/> <!-- Valor de la fecha a localizar -->
<xsl:with-param name="format">
<xsl:value-of select="$locale/date/@shortFormat" /> <!-- Tipo de fecha localizada del documento xml de locales (por su atributo) -->
</xsl:with-param>
</xsl:call-template> <br/>
<!-- Obtener un nmero localizado segn la configuracin del documento xml de locales (por su id) -->
<xsl:call-template name="num:format-number">
<xsl:with-param name="xsd-number" select="<XPathANumeroAFormatear>"/> <!-- Valor del nmero a localizar -->
<xsl:with-param name="format">
<xsl:value-of select="$locale/number/@currencyFormat" /> <!-- Tipo de nm. localiz. del documento xml de locales (por su atributo) -->
</xsl:with-param>
</xsl:call-template> <br/>
Ir a Indice
Pgina 13/21
Conceptos bsicos
(:Comentariodevarias
lineas...:)
{.........delimitador
detrozodecdigo(mbito).....}
delimitadordefindelnea:;
Espacio de nombres
Declaracindembito:declarenamespace<pref>=<espacioNombres>;
Importacin:
- Esquema XSD: import schema namespace <pref> = "<espacioNombres>" [ at "<URIArchivoXSD>"]
MduloXQuery:importmodulenamespace<pref>="<espacioNombres>"[at"<URIModuloXQuery>"]
Operadores
Aritmticos
Suma
Resta
Multipl.
Div(ent)
Div(dec)
Resto
*
div
idiv
mod
Lgicos
And(bool)
Or(bool)
not
and
or
not
Comparadores
Igual
Diferente
Menor
MenorOIgual
Mayor
MayorOIgual
eq
ne
lt
le
gt
ge
=
!=
<
<=
>
>=
TiposdedatosXPathv1yv2xdt:http://www.w3.org/2005/xpathdatatypes
Cualquiertipodedatosespecificadoeimportadodesdeunesquema.
Variables
Declaracin:
declarevariable[<amb>]$<nombre>[as<tdato>]
Asignacin:
$<nombre>:=<valoroequivalente>
Declaracinyasignacinenlamismalinea:
declarevariable[<amb>]$<nombre>[as<tdato>[<cardinalidad>]]:=<valoroequivalente>
Autor: Jos Manuel Oyola Gonzlez, licencia creative commons
Ir a Indice
Pgina 14/21
Secuencias
Declaracin:declarevariable[<amb>]$<nombre>as<tdato>[<cardinalidad>]
<cardinalidad>Ndeelementosmin/max:?(0/1),*(0/n),+(1/n)
Asignacin:$<nombre>(<Indice>):=<valor1>/Inicializacin:$<nombre>:=(<valor1>[,<valorN>])
Funciones
Declaracineimplementacin:
declarefunction[<pref>:]<nombrefuncin>([<parametrosEntradaSepComa>])as<tdatoadevolver>{
.................
<variableoequivalenteadevolver>;
}
Parmetroentrada:<nombreVar1>as<tdato1>
Buclecontador:
if (<Condicion>) then {
<SalidaSiCumple>
}
[else{
<SalidaSiNoCumple>]}
Funciones XQuery
Funciones propias del lenguaje:
Autor: Jos Manuel Oyola Gonzlez, licencia creative commons
Ir a Indice
Pgina 15/21
Ir a Indice
Pgina 16/21
StAX (Streaming Api for Xml) Tratamiento secuencial (flujo) de documentos xml.
StAX Libreras estndar base para el tratamiento secuencial orientado a flujos de documentos xml.
Objetos StAX (javax.xml.parsers):
- XMLOutputFactoryStAXv2 Objeto StAXv2 para serializar archivos xml.
- XMLOutputFactory XMLOutputFactory.newInstance() Crear nuevo serializador StAXv2.
- XMLStreamWriter createXMLStreamWriter(OutputStream/Result o) Serializador StAXv2 hacia o.
- XMLStreamWriterStAXv2 Objeto con mtodos para escribir secuencialmente en el xml mediante StAXv2.
- String get/setDefaultNamespace(String uri) Devuelve/Establece el esp. nombres por defecto a escribir.
- String get/setDefaultPrefix(String pref, String uri) Devuelve/Establece el pref. y ns por defecto a escribir.
- void writeStart/EndDocument([String cod, [String ver]]) Escribe Inicio/Fin de documento.
- void writeStart/EndElement(String lname, [, String pref] [, String uri]) Escribe Inicio/Fin de elemento.
- void writeAttribute(String lname, String v, [, String pref] [, String uri]) Escribe atributo.
- void writeEmptyElement(String lname, [, String pref] [, String uri]) Escribe de elem. vaco (Inicio-Fin).
- void writeCharacters/CData(String cad) Escribe cadena/CData.
- void writeComment(String cad) Escribe etiqueta comentario xml.
- void write[Default]Namespace([String pref], String uri) Escribe etiqueta de esp. de nomb. [p/defecto].
- void writeEntityReference(String id) Escribe etiqueta de referencia a entidad.
- void writeDTD(String dtd) Escribe etiqueta de Dtd.
- void writeProcesingInstruction(String k, String v) Escribe etiqueta <? k v ?>.
- void flush() / close() Fluchea/Cierra el flujo.
- XMLInputFactoryStAXv2 Objeto StAXv2 para deserializar archivos xml.
- XMLInputFactory XMLInputFactory.newInstance() Crear nuevo deserializador StAXv2.
- XMLStreamReader createXMLStreamReader(InputStream/Source i) Deserializador StAXv2 desde i.
- XMLStreamReaderStAXv2 Objeto con mtodos para leer secuencialmente el xml mediante StAXv2.
Autor: Jos Manuel Oyola Gonzlez, licencia creative commons
Ir a Indice
Pgina 17/21
SAX (Simple Api for xml) Tratamiento secuencial (eventos) de documentos xml.
SAX Libreras estndar base (inicialmente sobre java) para el tratamiento secuencial orientado a eventos de
documentos xml. La versin actual de SAX es la v2 que soporta ns en los elementos (la v1 es obsoleta).
Objetos SAX (javax.xml.parsers):
- SAXParserFactory Fbrica de parseo SAX.
- SAXParserFactory SAXParserFactory.newInstance() Obtiene un objeto de fbrica de parseo SAX.
- SAXParser newSAXParser() Crea un objeto de parseo SAX.
- SAXParser Objeto SAX para deserializar archivos Xml.
- void parse(origen, ContentHandler ev)SAXv1 Deserializa origen, ev ser el receptor de ev. de deserializac.
- XMLReader getXMLReader()SAXv2 Obtiene un objeto deserializador SAXv2.
- XMLReaderSAXv2 Objeto deserializador SAXv2.
- void setContentHandler(ContentHandler ev) Objeto receptor de los eventos de deserializacin.
- void parse(origen) Inicia la deserializacin del origen.
- XmlSerializerSAXv1 Objeto SAXv1 para serializar archivos xml.
- XmlSerializer new XmlSerializer(Writer w, OutputFormat f) Crea serializador hacia w con el formato f.
- ContentHandler asContentHandler() Objeto ContentHandler para escribir con SAXv1 en la salida.
- OutFormatSAXv1 Objeto formateador de salida para SAXv1.
- OutputFormat new OutputFormat(String tipo, String cod, true) Formateador XML, UTF-8.
ContentHandler Interfaz base con mtodos/eventos a ejecutar/sobreescribir para escribir/leer mediante SAX.
Ir a Indice
Pgina 18/21
Stringget/setNodeValue(Stringv)Valordelnodo.
Stringget/setPrefix(Stringv)Prefijodelnodo.
Stringget/setTextContent(Stringv)Contenidoentextodelnodo(enelcaso).
Objectget/setContentData(Objectv)Datosbinariosasociadosalnodo(slovalenenlalgica).
NamedNodeMapgetAttributes()Devuelveunalistadeparesclavevalordeatributosdelnodo.
NodecloneNode()Devuelveunnodocopia.
shortcompareDocumentPosition(Noden)Devuelveladiferenciadenivelconrespectoaotronodo.
Autor: Jos Manuel Oyola Gonzlez, licencia creative commons
Ir a Indice
Pgina 19/21
booleanhasAttributes()Devuelvetruesielnodocontieneatributos.
booleanhasChildNodes()Devuelvetruesielnodocontienenodoshijo.
booleanisDefaultNamespace(Stringnamespace)Devuelvetruesielespaciodenombreseselespecificado.
booleanisEqualNode(Noden)Devuelvetruesielnodoesigualalespecificado(susvalores).
booleanisSameNode(Noden)Devuelvetruesielnodoesdelmismotipoalespecificado.
StringgetBaseURI()DevuelvelaURIdelnodoconrespectoalarazdesudocumento.
StringgetNamespaceURI()Devuelvelauridelespaciodenombresdelnodo.
NodeappendChild(Noden)Aadeunnodoespecificadocomohijo.
voidremoveChild(Noden)Borraelnodohijoespecificado.
voidreplaceChild(Noden,Nodeexistente)Reemplazaelnodohijoexistenteporelespecificado.
NodeinsertBefore(Nodenuevo,Nodehermano)Aadeunnodonuevocomohijoantesdeunhermano.
NodeListgetChildNodes()Devuelveunalistadesusnodoshijos.
NodegetParentNode()Devuelveelnodopadre.
NodegetFirst/LastChild()Devuelveelprimer/ltimonodohijo.
NodegetNext/PreviousSibbling()Devuelveelsiguiente/anteriornodohermano.
DocumentgetOwnerDocument()Devuelveeldocumentodondeseencuentraelnodo.
Org.w3c.dom.ElementNodoxmlbsico(implementaNode).
AttrgetAttributeNode(Stringnombre)Devuelveunatributopornombre.
AttrgetAttributeNodeNS(StringnsUri,Stringnombre)Devuelveunatributocualificado.
StringgetAttribute(Stringnombre)Devuelveelvalordeunatributopornombre.
NodeListgetElementsByTagName(StringxPath)Devuelvelistadeelementosporfiltro(desdeaqu).
NodeListgetElementsByTagNameNS(StringnsUri,Stringnombre)Listaelem.pornombrecualif.(d/a)
StringgetTagName()Devuelveelnombredelaetiqueta.
booleanhasAttribute(Stringnombre)Devuelvetruesielnodocontieneelatributoespecificado.
booleanhasAttributeNS(StringnsUri,Stringnombre)Truesielnodocontieneatributocualif.Especific.
voidremoveAttribute(Stringnombre)Borraatributoconnombreespecificado.
AttremoveAttributeNode(Attratributo)Borraatributoespecificado.
voidremoveAttributeNS(StringnsUri,Stringnombre)Borraelatributopornombrecualificado.
voidsetAttribute(Stringnombre,Stringvalor)Creaunatributonuevoconnombreyvalorespecif.
voidsetAttributeNode(Attratributo)Creaunatributonuevo.
voidsetAttributeNS(StringnsUri,Stringnombre,valor)Creaunatributonuevopornombrecannico.
voidsetAttributeNodeNS(Attratributo)Creaunatributonuevopornombrecannico.
Org.w3c.dom.DocumentDocumentoxmlbsico(implementaNodeypartedeElement).
NodeadoptNode(Noden)Adoptaelnodoespecificadocambiandosudocumentopadreporeste.
Stringget/setDocumentURI()URIdeldocumento.
Stringget/setXmlVersion()VersionXmldeldocumento.
ElementcreateElement(Stringnombre)Creaydevuelveunnuevonodo.
CommentcreateComment(Stringcomentario)Creaydevuelveunnuevonododetipocomentario.
TextcreateTextNode(Stringtexto)Creaydevuelveunnuevonododetipotexto.
Autor: Jos Manuel Oyola Gonzlez, licencia creative commons
Ir a Indice
Pgina 20/21
CDATASectioncreateCDATASection(Stringtexto)CreaydevuelveunnuevonododetipoCDATA.
ElementcreateElementNS(StringnsUri,Stringnombre)Creaydevuelveunnuevonodocualificado.
AttrcreateAttribute(Stringnombre)Creaydevuelveunnuevoatributo.
AttrcreateAttributeNS(StringnsUri,Stringnombre)Creaydevuelveunnuevoatributocualificado.
ElementgetElementById(Stringid)Devuelveunnodoporsuidnico.
ProcessingInstructioncreateProcessingInstruction(Stringk,Stringv)Creaunnodoespecial<?kv?>
Org.w3c.dom.DocumentBuilderFactoryObjetobase(fbrica)paracreardocumentosxml.
DocumentBuilderFactoryDocumentBuilderFactory.newInstance()Creaunainstanciadelafbrica.
DocumentBuildernewDocumentBuilder()Devuelveunobjetodecreacindedocumentosxml.
Org.w3c.dom.DocumentBuilderObjetobasedecreacindedocumentosxml.
DocumentnewDocument()Creaunnuevodocumentoxml.
DOMImplementationgetDOMImplementation()DevuelveelobjetodelaimplementacinDOM.
Documentparse(Filefi/Stringuri/InputStreamis)Obtieneundocumentoxmldeunafuenteespecfica.
DOMImplementationObjetoquerepresentalaimplementacindelDOMutilizada(xerces,sax,etc.).
DocumentTypecreateDocumentType(StringnodoPpal,Stringid,StringrutaADtd)Creanododtd.
NOTA:UnelementoDocumentTypesedebedeinsertarconelmtodoinsertBeforedelobjetoDocument:
<VarDocument>.insertBefore(<varDocumentType>,<VarDocument>.getDocumentElement())
Org.w3c.dom.ls.LSSerializer Objeto serializador de documentos xml.
- LSSerializer new LSSerializer() Nuevo serializador (se debe de crear a partir de la implementacin).
- void setParameter(String nombre, Object valor) Especifica parmetros de comportamiento al serializar.
Parmetros: format-pretty-print = true (Especifica sangrado en la salida).
voidwriteToURI(Nodenod,StringuriDestino)Serializaapartirdelnodoalauriespecifica(file://,)
StringwriteToString(Nodenod)Serializaapartirdelnodohaciaunacadenadesalida.
voidwrite(Nodenod,LSOutput)Serializaapartirdelnodohaciaunserializadorpredefinido.
Ir a Indice
Pgina 21/21