Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask
 
PerlMonks  

Re: XML File Slicing Golf(ish)

by mirod (Canon)
on Jun 20, 2001 at 01:58 UTC ( [id://89838]=note: print w/replies, xml ) Need Help??


in reply to XML File Slicing Golf(ish)

Of course you realize that this can be broken by perfectly valid XML:

<?xml version="1.0"?> <doc> <!-- <?xml version="1.0"?>--> <!-- an XML comment --> <![CDATA[<?xml version="1.0"?> ]]> <!-- a CDATA section --> </doc>

I can't really see any "good" XML way to do this though. Why on Earth doesn't your customer use tar or zip or whatever instead of going a definitely non-XML (and risky) way?

Replies are listed 'Best First'.
Re: Re: XML File Slicing Golf(ish)
by ZZamboni (Curate) on Jun 20, 2001 at 03:46 UTC
    Note that this particular example will work with the program, because the regex is anchored at the start of the line. However, in general it is possible that a "fake" XML declaration will appear at the beginning of a line, so it is a good point. For example:
    <![CDATA[ <?xml version="1.0"?> ]]>
    Also, while playing with the little program I wrote, I used the cat command to concatenate a bunch of XML files I have, and discovered that some of them did not have an end-of-line at the end of the last line, so the result would be like this:
    </ESP-Component><?xml version="1.0"?>
    Where the start declaration of one file would end up on the same line as the closing declaration of the previous file. In this case, this simple mechanism for recognizing when a file starts would not work, obviously.

    Of course, I agree that some other packing method would be much better. But people do weird things... :-)

    --ZZamboni

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://89838]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others wandering the Monastery: (6)
As of 2024-04-18 19:22 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found