This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

RE: Imbbeding text files


Thank-you very much - it works like a charm.

I can kick myself because I have seen this structure used in a different
context but I never thought of it for this approach.

Thanks again,
Gilles

-----Original Message-----
From: Wendell Piez [mailto:wapiez@mulberrytech.com]
Sent: Wednesday, May 30, 2001 11:49 AM
To: xsl-list@lists.mulberrytech.com
Subject: Re: [xsl] Imbbeding text files


Hi Gilles,

At 08:41 PM 5/30/01, you wrote:
>I have used the document() function to access data from a separate xml
file.
>Is there a way to have the document() function read the data in a simple
>text file and imbed this data as text for an element in the output file?

Not exactly, as such. The expectation of document() is that "the data 
resulting from the retrieval action is parsed as an XML document and a tree 
is constructed..." (XSLT 12.1), and as you know, an XML document has to 
have at least a (single) root element.

On the other hand, as long as there are no pesky open-markup-delimiters 
(i.e. '<' or '&') in it, a plain text file can be included in an XML 
document as an external parsed entity. So if you had:

file.txt:
Here's some text I want to include

file.xml:
<!DOCTYPE shell [
<!ENTITY file SYSTEM file.txt>
]>
<shell>&file;</shell>

You could use document('file.xml') from your XSL and get your text back (it 
would be wrapped in the <shell> element).

Of course, you could also include the external parsed entity in your 
stylesheet and not even have to use document(). (Be sure and wrap the 
entity reference, though, as in <xsl:text>&file;</xsl:text>.)

Hope that helps,
Wendell



======================================================================
Wendell Piez                            mailto:wapiez@mulberrytech.com
Mulberry Technologies, Inc.                http://www.mulberrytech.com
17 West Jefferson Street                    Direct Phone: 301/315-9635
Suite 207                                          Phone: 301/315-9631
Rockville, MD  20850                                 Fax: 301/315-8285
----------------------------------------------------------------------
   Mulberry Technologies: A Consultancy Specializing in SGML and XML
======================================================================


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]