Tema8_Seccion5_XML Flashcards

(125 cards)

1
Q

¿Que signifca el atributo standalone=”yes” en el prologo de un documento xml?

A

Que dentro del documento está embebido también el DTD

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

¿Con que API de JAXP se crea un arbol de objetos en memoria de los tipos Node, Elment, Attr, etc ?

A

DOM

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

¿Cual es el estandar que le corresponde a JSON?

A

ECMA 404

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

¿Que tipos de datos soporta JSON? Di 6

A
  • boolean
  • string
  • numbers
  • object (para subdocumentos por ej.)
  • array
  • null
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

¿Con que API conseguimos que la información xml leida/parseada se transforme en un objeto de nuestras clases de negocio?

A

JAXB

Recordar que todo funciona con anotaciones como @XmlElement, @XmlAttribute, etc

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

¿Con que lenguaje xml podemos llegar a generar PDF’s a partir de un xml de datos?

A

XSL-FO

Al software que hace esto se le denomina Processor

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Nombre dos implementaciones en Java que implementen XSL-FO

A
  • Apache FOP
  • XEP
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

¿Que es Xerces?

A

Un proyecto de Apache que implementa las API’s de JAXP (DOM, SAX y StaX)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Si analizamos con DOM un documento en xml, ¿en que se convierten los textos que hay entre una etiqueta de inicio y su correspodiente de fin?

A

En un nodo de tipo Text (paquete org.w3c.dom)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Si analizamos con DOM un documento en xml, ¿qué se hace con los comentarios xml?

A

Si, se convierten en nodos de tipo Comment (paquete org.w3c.dom)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

¿Quien se encarga del estandar SGML?

A

ISO

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

¿Qué representa en un documento xml cuando escribimos & ?

A

Es una entidad que el parser va a sustituir por el caracter especial &

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

¿Qué significa que un documento xml esté bien formado? Di 6 cosas

A

Que está escrito de acuerdo a las siguientes reglas de xml:

  • Toda etiqueta tiene que tener un cierre
  • Los valores de los atributos deben de ir entrecomillados
  • Las etiquetas tienen que estar correctamente anidadas (no se permiten cruces entre etiquetas)
  • Todo documento debe contener una y solo una raiz
  • xml es sensible a mayusculas
  • xml no trunca multiples espacios en blanco
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

¿Qué significa que un documento xml sea valido?

A

Que está perfectamente escrito conforme a su gramática (bien sea DTD o XSD)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

¿Qué solucionan los Namespaces en xml?

A

La posible duplicidad en los nombre de las etiquetas cuando se trabaja con varias fuentes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

¿Cuales son los tipos mime de xml y json?

A
  • Para xml tenemos (application/xml y text/xml)
  • Para json tenemos application/json
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Nombre dos librerias para manipular documentos JSON

A
  • Jackson
  • Gson de Google
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

En la declaración DOCTYPE para asociar un dtd a un xml, ¿qué significa la palabra SYSTEM?

A

Que es un dtd que solo tiene sentido en un ambito privado

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

¿Que tres elementos fundamentales podemos definir dentro de un DTD?

A
  • ELEMENT
  • ATTLIST
  • ENTITY
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Dentro de un JSON, ¿las propiedades tienen alguna sintaxis especial?

A

Si, todas van entre dobles comillas

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Nombre 8 tipos de datos que están disponibles en los XSD

A
  • string
  • decimal
  • integer
  • byte
  • boolean
  • date
  • time
  • dateTime
  • duration
  • base64Binary (interesante para embeber un archivo binario en el xml)
  • positiveInteger
  • ID
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

¿Cuando se define un xsd que uri se utiliza para definir su espacio de nombres?

A

http://www.w3.org/2001/XMLSchema

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

¿Cuando se vincula un xsd a un xml, que uri se utiliza para espacio de nombres?

A

http://www.w3.org/2001/XMLSchema-instance

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

¿Cual sería la expresion XPath para “seleccionar” todos los atributos precio que están asociados con la etiqueta producto?

A

//producto/@precio

(practicar con el software BaseX y los fichero xml de ejemplo de GitHub)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
En un DTD, a nivel de definición de atributos, ¿que otras opciones tenemos a parte de #REQUIRED para especificar que son obligatorios?
* #IMPLIED para definir que es opcional * #FIXED para dar una valor fijo
26
¿Las expresion FLWOR con que lenguaje xml tienen que ver?
Lenguaje XQuery
27
En un parser de tipo SAX, ¿que se recibe como parametros del metodo de evento "startElement"?
* El nombre la etiqueta (con o sin prefijo de espacio de nombres) * Atributos
28
Si tenemos que realizar una lectura de un xml del cual nos dan su xsd, ¿que pasos inciales habría que dar para su procesamiento con JAXB y que herramienta hay que usar?
Habría que realizar un primer paso de generacion de las clases Java a patir del xsd para que el proceso de unmarshal se realice correctamente. La herramienta está en la JDK y se llama **xjc**
29
En el contexto de JAXB, ¿a que le llamamos realizar un marshal?
A generar un xml a partir de un conjunto de objetos java
30
Enumere las cuatro API's relacionadas con JAXP 1.4
* SAX * DOM * StaX * TraX
31
¿Qué funcionalidad nos ofrece el lenguaje xsl-t?
Mediante un xml de datos, una hoja xsl-t y un procesador xsl podemos generar otros documentos como por ej html
32
¿Conoce alguna libreria en Java especializada en el API XSL-T?
* Xalan * Saxon
33
¿A qué se refieren estos productos: WebKit, Blink, Gecko?
Motor de renderizacion
34
¿Mediante que API podemos manipular los elementos de un documento HTML?
DOM (Document Object Model)
35
¿Cúal es la declaración de un documento HTML5?
‹!DOCTYPE html›
36
Cuando vemos un texto inicial dentro de una caja de texto (que se elimina en cuanto hacemos click sobre ella) en un formulario, ¿que atributo se ha utilizado?
placeholder
37
¿Como se llama a la técnica mediante la cual podemos realizar peticiones al servidor para traernos información (en formato JSON, XML,...) y realizar una actualización exclusivamente de una parte del documento HTML?
AJAX. El objeto principal se llama xmlHttpRequest
38
Nombre 4 frameworks MVVM
* Angular * ReactJS * VUE * Ember
39
Nombre dos herramientas de gestión de dependencias asociadas con el desarrollo web
* bower * npm
40
¿Cómo se llama al tipo de producto que convierte un lenguaje de script como TypeScript (que no entiende el navegador) a uno que si entiende, como es el caso de JavaScript?
transpiler
41
Nombre dos herramientas de automatización de tareas asociadas al desarrollo web
* gulp * grunt
42
Si tenemos un texto con saltos de linea, etc y queremos conservar exactamente ese formato, ¿qué etiqueta hay que utilizar?
pre
43
Nombre 4 etiquetas semánticas estructurales
* section * article * nav * aside
44
¿Para que sirve el atributo "dir" ?
Para especificar la dirección del texto. Para idiomas como el arabe, etc
45
Nombre 9 API's de HTML5
* Geolocation * Canvas * WebSockets * Server Sent Events * File * Web Storage * Web Worker * IndexedDB * Drag and Drop
46
¿Cual es la etiqueta que representa a un contenedor en linea?
span
47
¿Para que sirve la etiqueta svg?
Para incrustar una grafico vectorial en formato XML
48
¿Cual es la declaración para asociarle al documento una hoja de estilos?
‹link rel="stylesheet" href="estilos.css"›
49
¿Como podría especificar una versión alternativa de su pagina, como por ejemplo una versión en PDF en frances?
‹link rel="alternate" hreflang="fr" type="application/pdf" href="pagina.pdf"›
50
¿Existe alguna forma de utilizar atributos personalizados dentro del documento HTML?
Los atributos data-\* Se procesan con el dataset API
51
¿Existen algun(os) atributos específicos para mejorar la accesibilidad de nuestras páginas?
Si, se denominan aria-\* y el atributo role
52
Nombre tres funciones del API del DOM para poder seleccionar elementos dentro de la página
* document.getElementById(id) * document.getElementByTagName(tag) * document.querySelector(selector)
53
¿Que es un polyfill ?
Es un plugin (libreria js) para poder simular una determinada feature (API de HTML5) que no está implementada de forma nativa en ese navegador que estamos utilizando
54
Si queremos poner un texto en negrita, ¿que etiqueta deberiamos de utilizar?
Con ‹strong› recordar que ‹b› ha cambiado su signifcado por algo mas semantico como "Bring Attention"
55
¿Cuales son los dos atributos que nos permiten asociarle estilos a una etiqueta?
* class (clase de estilos definida en un css externo o en el bloque style del head de la pagina) * style (estilo inline)
56
En HTML5, ¿se pueden seguir utilizando frames?
Si, pero solo el ‹iframe›
57
¿Con que atributo se puede editar de forma online un parrafo por ej?
Con el atributo contenteditable="true"
58
¿Como se puede incrustar un video(reproductor) en una pagina html?
‹video src="movie.ogg" controls="controls"›‹/video›
59
¿Qué tres parámetros (atributos) se relacionan con el "Modelo de Caja" ?
* margin * border * padding
60
¿Qué tipo MIME representa a una hoja de estilos?
text/css
61
¿Para qué sirve el siguiente selector? a[title] { ... }
selecciona todas las etiquetas a que tengan definido el atributo title
62
¿Para que sirve el siguiente selector? [lang] { ... }
selecciona todas las etiquetas que tengan definido el atributo lang
63
¿Cómo se definen reglas específicas para adaptarse a un dispositivo móvil por ej.?
@media only screen and (max-width:640px) { ... }
64
¿Qué se toma como referencia cuando decimos position:fixed?
La referencia es el documento siendo (0,0) la esquina superior izquierda
65
¿Qué se toma como referencia cuando decimos position:absolute?
La referencia es el contenedor en el que este definida la etiqueta afectada por este estilo
66
Nombre 3 preprocesadores CSS
* less * sass *stylus
67
Nombre 5 frameworks CSS
* bootstrap * foundation * materialize *bulma *tailwind
68
Nombre 5 at-rules
* @charset * @font-face * @import * @media * @page
69
¿Para qué sirve el siguiente selector? table , a { ... }
Se aplicarán los estilos sobre las etiquetas table y sobre a
70
¿Para qué sirve el siguiente selector? table a { ... }
Se aplicarán los estilos sobre las etiquetas a que estén dentro de una table (en cualquier nivel de profundidad)
71
¿Para que sirve el siguiente selector? .texto { ... }
Se aplicarán los estilos sobre todas las etiquetas que hayan declarado su atributo class de esta forma: ‹etiqueta class="texto"› ...
72
¿Cuál es es selector que se refiere a un elemento en base a su identificador?
``` #identificador { ... } ```
73
¿Para qué sirve este selector y comó se le denomina? a:hover { ... }
Se le denomina pseudo-clase y en este caso el significado es: se aplicarán estilos sobre los enlaces al pasar el raton por encima
74
¿Para qué sirve este selector y cómo se le denomina? p::first-letter { ... }
Se le denomina pseudo-elemento y en este caso el significado es: se aplicarán estilos sobre la primera letra de los párrafos
75
¿Para qué sirve la siguiente declaración en un archivo css externo por ej? p { color:red !important; }
Para forzar a que los parrafos tengan texto en color rojo aunque haya cualquier otra regla (por ej. en el bloque con mayor prioridad/especificidad que intente cambiarlo
76
¿A que elementos se le aplica la "especificidad"?
A los selectores
77
¿Qué propiedad(es) de las siguientes no se herendan entre etiquetas padre e hijos sin tener que forzarlo? * color * font-family * margin * text-align
El margin no se hereda por defecto, el resto si
78
¿Cómo se fuerza a heredar de tu etiqueta padre el valor que tuviera su propiedad float?
selector { float:inherit; }
79
¿Qué diferencia fundamental tienen estas dos declaraciones? 1. display:none 2. visibility:hidden
Aunque las dos provocan que se oculte el elemento, display:none no deja el hueco que ocuparia el elemento y visibility:hidden si deja ese espacio "en blanco"
80
¿Cómo podríamos preparar el contenido de una pagina para que se imprimiera lo mejor posible?
Modificando todo tipo de estilos de los elementos de la pagina de cara a imprimirse y usando por ej la regla @page para definir todo lo relativo al comportamiento de las paginas en impresión * Con @media print { ... } dentro del bloque de la pagina * ‹link rel="stylesheet" type="text/css" href="/estilos-impresion.css" media="print"/›
81
¿Con que etiqueta podríamos hacer uso de fuentes tipográficas externas?
@font-face
82
¿Qué tipo de unidad de medida es "em" y que significa?
Es una unidad de medida relativa respecto de la fuente actual (contando con la herencia !ojo! )
83
¿Cuál de las siguiente medidas es relativa? * px * cm * rem * pt
rem es una unidad de medida relativa a la fuente definida en la raiz (etiqueta html)
84
¿Qué representa la propiedad z-index?
Con z-index, que acepta valores numéricos, podemos definir la altura/profundidad de nuestras capas (div por ej). Es decir, pasamos de ver una página en 2D a 3D
85
Nombre cuatro lenguajes de scripting
* PHP * Perl * Python * JavaScript (Node)
86
¿Cual es la herramienta para la gestión de los paquetes en PHP?
Composer (lee un fichero llamado composer.json)
87
¿Cual es la herramienta para la gestión de los paquetes en Ruby?
Gems (lee un fichero denominado Gemfile)
88
¿Cual es la herramienta para la gestión de los paquetes en JavaScript?
npm (lee un fichero denominado package.json)
89
¿A que corresponde la infraestructura LEMP?
Linux + Nginx + Mysql/MariaDB + PHP/Perl/Python
90
¿Que dos "motores" de ejecución conoces para PHP?
* Zend Engine * HHVM (Hip Hop de Facebook)
91
¿Qué es Phalanger?
Un compilador de PHP a CIL (codigo intermedio de .net)
92
¿Que es django?
Un framework web para pyhton
93
¿Que representa la arquitectura MEAN?
MongoDB + Express + Angular + Node
94
Nombre cuatro frameworks web para PHP
* Laravel * Symfony * CakePHP * Yii
95
¿Qué es Ruby on Rails?
Un framework web para lenguaje Ruby
96
¿Como es la declaración de un trozo de codigo PHP?
‹?php ... ?›
97
¿Cual de estos tipos no es de PHP? * Integer * Resource * Boolean * NULL
Todos son validos
98
Si quiero concatenar dos variables $a y $b, ¿como lo haría?
$a.$b
99
¿Que hace el operador nave espacial $a \<=\> $b ?
Compara dos variables y devuelve: * -1 si $a \< $b * 0 si son iguales * 1 si $a \> $b
100
¿Para que sirve la funcion printr en php?
Para imprimir el contenido de un array
101
¿Como se elimina un objeto en php?
unset($obj)
102
¿A que hace referencia ::self ?
A la clase actual
103
¿En PHP como se puede hacer referencia dentro de una subclase a un miembro de la clase base?
parent::
104
¿Existe alguna forma de usar una clase y no tener que hacer NOSOTROS un require/include del fichero .php en la que está definida?
Si, el mecanismo es la función autoload
105
¿Como se declara un constructor en php?
\_\_construct(...) { $this-\> ... }
106
Nombre tres motores de javascript presentes en los navegadores
* v8 de Google * Nitro de Safari * SpiderMonkey de Firefox
107
¿Como se denomina al lenguaje que ha estandarizado a JavaScript?
ECMAScript 262
108
¿Que son jasmine, mocha y jest ?
Herramientas para testing de javascript
109
Dado que TypeScript es un lenguaje de scripting de alto nivel que no comprenden los navegadores, ¿que habria que hacer? Di 3 herramientas
transpilarlo. Herramientas --\> Babel, traceur y tsc
110
¿A que responden las siglas SPA hablando de aplicaciones Web?
Aplicaciones de una única página (Single Page Application)
111
¿Que significa en javascript NaN?
Un tipo de retorno cuando la expresión no se corresponde con un numero (Not a Number) Ej var i=10 i % "a" --\> NaN
112
¿Que devolverá la siguiente expresion 1 == "1"?
true
113
¿Que devolverá la siguiente expresion 1 === "1"?
false, porque ese operador a parte comprueba los tipos
114
¿Para que sirve el operador =\> ?
Para definir funciones lambda
115
¿Que son mustache, jade y dust?
Motores de plantillas para front
115
¿Con que "técnica podemos conseguir herencia en javascript?
prototipos
116
¿Como se añade un elemento a un array en javascript?
metodo push
117
¿Que devuelve typeof(null) en javascript?
Object
118
¿Se puede pasar una función como parametro de entrada de otra?
Si, porque las funciones son objetos de primera clase. Tambien, se pueden asignar una variable y poner como retorno de otra función
119
¿Que efecto tiene una clousure (en funciones anidadas) ?
Que a la función más interna se le asocia/encapsula el ambiente de ejecucion (las posibles variables) que haya entre la función más externa y ella (incluso despues de que termine de ejecutarse la funcion externa)
120
¿Como se denomina la siguiente expresión y que representa? (function () { .... })();
Se denomina expresion IIFE (expresion de funcion invocada inmediatamente) Sirve para definir y ejecutar una funcion (todo a la vez)
121
¿Con que comando se crea un proyecto "vacio" en angular?
ng new mi-proyecto (para poder usar ng hay que instalar --\> npm install @angular/cli)
122
¿Como se llama el objeto principal del modulo de AJAX?
xmlHttpRequest
123
¿Como se le dice al modulo de AJAX despues de hacerle una peticion asincrona, que queremos que nos avise en una función nuestra cuando los datos hayan llegado o estén llegando?
xhr.onreadystatechange = function () { if(xhr.readyState === XMLHttpRequest.DONE && xhr.status === 200) { console.log(xhr.responseText); } };
124
¿Para que sirven los sourceMap (ficheros con extensión .map) ?
Ya que los js y css están muy compactados (minify), se generan estos ficheros con el proposito de que podamos depurar en el navegador con un codigo "legible"