Subject:XSLT and Entities Author:Tom Patterson Date:23 Sep 2004 02:09 PM Originally Posted: 23 Sep 2004 02:08 PM
I am trying to create an xslt to convert an xml document to html. The top of the xml document has something along the lines of <!DOCTYPE dmodule PUBLIC "..." [<!ENTITY picent SYSTEM "picture.cgm" NDATA cgm>. Then when the picture is to be used, there is a tag <graphic boardno="picent">. I want to be able to convert this to html using the <img> tag (even tho I'm pretty sure that it doesn't support cgm graphics), but I can't figure out how to convert the SYSTEM "picture.cgm" into a file name for the src. Any ideas? Thanks.
Subject:XSLT and Entities Author:Tom Patterson Date:24 Sep 2004 12:57 PM
Thank you very much, this has been driving me nuts for a while. I can map the <graphic> element into a <img> element without any problems, I just can't figure out how to convert the entity to the src.
Subject:XSLT and Entities Author:(Deleted User) Date:27 Sep 2004 11:05 AM
Hi Tom,
you should use this instruction to get the file name associated with
the unparsed entity (assuming you have the "graphic" node as the
current context):
Please note that the attribute has a lower case string, while the
entity is defined using uppercase characters; the XML should be fixed
to have the same string in the entity definition.
Subject:XSLT and Entities Author:Tom Patterson Date:28 Sep 2004 08:16 AM
I tried this, but everytime instead of getting an <img src="ICN-AE-A-000000-0-U8025-00536-A-01-1.cgm"> I get <img src="ICN-AE-A-000000-0-U8025-00536-A-01-1">. It doesn't matter if I fix the capitalization or not. I tried changing the file name to something else (like test.cgm), but it still gave the <img src="ICN-AE-A-000000-0-U8025-00536-A-01-1">. Any other ideas?
Subject:XSLT and Entities Author:Tom Patterson Date:29 Sep 2004 08:35 AM
Ok, now I feel stupid. I tried to make a tiny style sheet so I didn't have to send the big one and it worked. When I looked back at the other one I somehow managed to miss the unparsed function. I have one more question though. Is there anyway to tell what type of file it is? Like grab the very last part of th entity declaration? It wouldn't cause too much problems, but sometimes I have jpegs and others I have cgms and Web Browsers don't have native support for cgms used in the img tag.
Subject:XSLT and Entities Author:(Deleted User) Date:29 Sep 2004 09:01 AM
Hi Tom,
the unparsed-entity-uri function returns a string, so you can inspect it
using contains() or substring-after() to detect the extension of the
graphic file.
You can change the template to be something like this
Subject:XSLT and Entities Author:Tom Patterson Date:29 Sep 2004 12:08 PM
Awesome. Thanks a lot guys. I have one more question, but it isn't really for this group so I was hoping someone may be able to push me in the right direction as far as where to look. I am able to display cgm graphic files in a web browser using a plugin and stuff, but I'm not real familiar with cgms and there are external "hotspots" that refer to places on the cgm. Does anybody now how or a place to look to find out how to get these links to work for the cgm using html/javascript/any other language that can be interpreted by a web browser?