[xep-support] Adobe SVG

Nikolai Grigoriev grig at renderx.com
Mon Jun 21 07:37:11 PDT 2004


James,

> I am using XML catalogs.  However, what DTD would 
> I use in this case?

You should store the DTD referenced from your SVG file locally,
and point to it in the catalog file:

<public publicId="-//W3C//DTD SVG 1.0//EN" 
   uri="file:/C:/SVG/DTD/svg10.dtd"/> <!-- put your local name here -->

The DTD itself can be retrieved from the location contained in the
system ID that Adobe Illustrator stores inside the image:

http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd

Best regards,
Nikolai Grigoriev
RenderX

----- Original Message ----- 
From: "James Drayton" <James.Drayton at Solipsys.com>
To: <xep-support at renderx.com>
Sent: Monday, June 21, 2004 5:43 PM
Subject: RE: [xep-support] Adobe SVG


Good Day,

I am using XML catalogs.  However, what DTD would I use in this case?

Regards,

James

-----Original Message-----
From: owner-xep-support at renderx.com [mailto:owner-xep-support at renderx.com]
On Behalf Of Grimley Michael J NPRI
Sent: Monday, June 21, 2004 9:06 AM
To: xep-support at renderx.com
Subject: RE: [xep-support] Adobe SVG

Greetings,

Couldn't he just download the DTD, place it the same directory as his SVG
files, and change the DOCTYPE declaration?

Thank You,
Mike Grimley

-----Original Message-----
From: Nikolai Grigoriev [mailto:grig at renderx.com] 
Sent: Monday, 21 June 2004 05 19
To: xep-support at renderx.com
Subject: Re: [xep-support] Adobe SVG

James,

> I am creating PDF's off-line and am unable to render Adobe SVGs.  
> I assume it is because of the entities they define:
>
> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN"    
>  "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd" [

You probably mean that you are unable to render these SVGs on a computer
that has no Internet access. This may happen because of the DTD reference:
by the XML spec, the XML parser has to access the DTD in order to resolve
entities. 

If you are using XEP for Java, then the most straightforward method of
resolving the issue consist in leveraging XML catalogs. You can read about
it in XEP User Guide:

http://xep.xattic.com/xep/doc/userguide.html#URI_Resolution

Alternatively, you could simply postprocess the resulting SVG, e.g.
by applying an XSLT identity transformation to them. This would remove all
remote DTD references, and resolve all entities.
Please note that you will need to add catalog support to the XSLT processor
if you want this process to be performed without network access; this is
processor-dependent, so please refer to the documentation of your XSLT
processor.
    
>      <!ENTITY ns_flows "http://ns.adobe.com/Flows/1.0/">
>      <!ENTITY ns_extend "http://ns.adobe.com/Extensibility/1.0/">
>      <!ENTITY ns_ai "http://ns.adobe.com/AdobeIllustrator/10.0/">
>      <!ENTITY ns_graphs "http://ns.adobe.com/Graphs/1.0/">
>      <!ENTITY ns_vars "http://ns.adobe.com/Variables/1.0/">
>      <!ENTITY ns_imrep "http://ns.adobe.com/ImageReplacement/1.0/">
>      <!ENTITY ns_sfw "http://ns.adobe.com/SaveForWeb/1.0/">
>      <!ENTITY ns_custom "http://ns.adobe.com/GenericCustomNamespace/1.0/">
>      <!ENTITY ns_adobe_xpath "http://ns.adobe.com/XPath/1.0/">
>      <!ENTITY ns_svg "http://www.w3.org/2000/svg">
>      <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">


The rest of your entities are just namespace URIs. They never get resolved,
and should not pose any problem.

Best regards,

Nikolai Grigoriev
RenderX
-------------------
(*) To unsubscribe, send a message with words 'unsubscribe xep-support'
in the body of the message to majordomo at renderx.com from the address you are
subscribed from.
(*) By using the Service, you expressly agree to these Terms of Service
http://www.renderx.com/tos.html
-------------------
(*) To unsubscribe, send a message with words 'unsubscribe xep-support'
in the body of the message to majordomo at renderx.com from the address
you are subscribed from.
(*) By using the Service, you expressly agree to these Terms of Service
http://www.renderx.com/tos.html



-------------------
(*) To unsubscribe, send a message with words 'unsubscribe xep-support'
in the body of the message to majordomo at renderx.com from the address
you are subscribed from.
(*) By using the Service, you expressly agree to these Terms of Service http://www.renderx.com/tos.html

-------------------
(*) To unsubscribe, send a message with words 'unsubscribe xep-support'
in the body of the message to majordomo at renderx.com from the address
you are subscribed from.
(*) By using the Service, you expressly agree to these Terms of Service http://www.renderx.com/tos.html



More information about the Xep-support mailing list