URI de entidades sin analizar
Si trabaja con una DTD que tiene declarada una entidad sin analizar, puede usar el URI asociado a la entidad para definir el destino de imágenes e hipervínculos en el diseño SPS. Esto permite usar el mismo URI varias veces en el diseño SPS. StyleVision aprovecha la función XSLT unparsed-entity-uri para pasar el URI de la entidad sin analizar desde la DTD hasta los documentos de salida
Para que esta característica funcione correctamente es necesario que la DTD, el documento XML y el SPS estén bien editados:
1.En la DTD deben estar declaradas las entidades sin analizar con (i) el URI y (ii) la notación (que le dice a StyleVision qué tipo de recurso es la entidad).
2.En el documento XML se debe hacer referencia a la entidad sin analizar. Esto se hace dando los nombres de las entidades sin analizar pertinentes.
3.En el diseño SPS puede usar las entidades sin analizar para apuntar a imágenes e hipervínculos. Esto se hace accediendo a los valores de nodo dinámico pertinentes como entidades sin analizar.
Declarar entidades sin analizar y hacerles referencia
A continuación aparece un fragmento de un documento XML que incluye un subconjunto DTD interno que declara dos entidades sin analizar: una con la notación GIF (lo cual indica que se trata de una imagen GIF) y otra con la notación LNK (lo cual indica que se trata de un vínculo). Los nodos img/@src y link/@href del código XML hacen referencia a las entidades sin analizar al dar su nombre.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE document SYSTEM "UEURIDoc.dtd" [
<!ENTITY Picture SYSTEM "nanonull.gif" NDATA GIF>
<!ENTITY AltovaURI SYSTEM "https://www.altova.com" NDATA LNK>
]>
<document>
<header>Example of How to Use Unparsed Entity URIs</header>
<para>...</para>
<img src="Picture"/>
<link href="AltovaURI">Link to the Altova Website.</link>
</document>
Imágenes e hipervínculos del SPS que utilizan entidades sin analizar
Las imágenes y los hipervínculos del diseño SPS que hacen referencia a los URI de entidades sin analizar se usan de la siguiente manera:
1.Primero debe insertar la imagen o el hipervínculo desde el menú Insertar.
2.Después en el cuadro de diálogo de inserción (imagen siguiente), seleccione la pestaña Dinámico y escriba la expresión XPath que selecciona el nodo que contiene el nombre de la entidad sin analizar. En el documento XML del ejemplo, estos nodos serían //img/@src y //link/@href.
![dlg_insert_image_unparsedEntity](./images/dlg_insert_image_unparsedentity.png)
3. | Después marque la casilla Tratar como entidad no analizada situada en la parte inferior del cuadro de diálogo. Esto hace que el contenido del nodo seleccionado se lea como entidad sin analizar. Si se declaró una entidad no analizada con ese nombre, el URI asociado a la entidad se utiliza para encontrar el recurso (imagen o hipervínculo). |
Cuando se procese la hoja de estilos, el URI asociado con el nombre de entidad se reemplaza con el nombre de entidad.
Nota: | si el URI es un URI relativo, el procesador XSLT lo amplía a un URI absoluto aplicando el URI base de la DTD. Por ejemplo, si la entidad sin analizar está asociada al URI relativo "nanonull.gif", este URI se ampliaría a file:///c:/Carpeta/nanonull.gif, siendo Carpeta el directorio donde está la DTD. |