Wikipedia:Reference desk/Archives/Computing/2013 June 7

From Wikipedia, the free encyclopedia
Computing desk
< June 6 << May | June | Jul >> June 8 >
Welcome to the Wikipedia Computing Reference Desk Archives
The page you are currently viewing is an archive page. While you can leave answers for any questions shown below, please ask new questions on one of the current reference desk pages.


June 7[edit]

Botched driver update[edit]

So, yesterday i tried to update my drivers on my Win7 laptop as i experienced a BSoD the day previous to that ("Bad Pool" something-or-other error). I got an application yesterday to find and update my drivers, but immediately blue-screened afterwards and my restore point failed. I've now got my Realtek audio driver rolled back so i have sound again (and less BSoDs) but think the issue may involve a couple other drivers. So my question here is how do i see which drivers i updated yesterday? (The app i used doesn't keep a history) and is there a better application someone can recommend to update them? (I won't hold anyone responsible for bad advice here)
Thanks Jenova20 (email) 08:46, 7 June 2013 (UTC)[reply]

Software meant to find drivers for you can often do more damage than they're worth; sometimes they can even be outright scams. Without knowing the name of the application you downloaded, I would reccomend googling the name of the software to see if there are known problems (or - more importantly - if it is even legitimate at all...) because that immediate BSoD and restore point failure is a pretty big warning sign. In short: from my experience it is better to install drivers yourself manually than have a piece of software do it for you, it's just more reliable. Good luck! --Yellow1996 (talk) 01:30, 8 June 2013 (UTC)[reply]
 Done - Restored to previous version with working drivers. Still have a Bad Pool Caller issue but better than was. Thanks Jenova20 (email) 08:37, 10 June 2013 (UTC)[reply]

What is wrong with this XML document?[edit]

<?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">

<xsl:output method="html"/>

<xsl:template match="/">

<html>

<body>

...

</body>

</html> </xsl:template>

</xsl:stylesheet>

I have tried running the above XML document (with a .xsl extension), which is taken directly from a book I am using to learn XML, through Safari, in the hope of it displaying only the appropriate HTML, not just the XML. For some reason, this isn't working. I have looked over this multiple times and cannot spot an obvious problem. Can anyone else see what might be wrong? Thanks. meromorphic [talk to me] 16:48, 7 June 2013 (UTC)[reply]

There doesn't appear to be anything obviously wrong with it. However why would you expect Safari to process it as XSLT? Especially not if it's loaded from the filesystem locally, thus not having a HTTP content-type to indicate that it's XSLT.
Instead, try creating another simple XML document (any content, just make it well-formed and valid). In that document, use a processing instruction for an XSLT stylesheet and reference this existing stylesheet (http://www.w3.org/TR/xml-stylesheet/). Now try viewing that document in Safari.
On the whole, it's better to work with XSLT by using some defined processing route, rather than just default binding from source documents on the filesystem (it's a crude and awkward process that's a real nuisance to work with). Do this either through a command line script, or else a simple web server backend script. Andy Dingley (talk) 17:06, 7 June 2013 (UTC)[reply]
As it happens, I've been doing just that while working through this book. Using the following .xml file
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="XSL-Sample-01.xsl"?>
<ancient_wonders>
<wonder>
<name>"Colossus of Rhodes"</name>
<modern_location>Alexandria, Egypt</modern_location>
<builder>Greeks</builder>
<date_of_construction>292-280 BC</date_of_construction>
<date_of_destruction>226 BC</date_of_destruction>
<cause_of_destruction>226 BC Rhodes Earthquake</cause_of_destruction>
</wonder>
<![CDATA[This is some text about the XML document.]]>
</ancient_wonders>
(I had other 'wonders' but removed them for the sake of brevity) and this .xsl file
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/">
<html>
<head>
<title>Wonders of the World</title>
</head>
<body>
<xsl:for-each select="ancient_wonders/wonder">

The <xsl:value-of select="name"/> is located in <xsl:value-of select="modern_location"/> and is one of the seven wonders of the ancient world.

</xsl:for-each>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
everything works correctly. I can try the file you suggested if you want but (at least from my junior point of view) surely if this works, then the problem doesn't lie in whether or not Safari is correctly processing the XSLT? meromorphic [talk to me] 17:17, 7 June 2013 (UTC)[reply]
I notice that <xsl:output method="html"/> is in the first document (which doesn't work) but not in the second one (which you claim does work). Have you tried removing this line from the first document to see if it changes anything? 64.201.173.145 (talk) 19:00, 7 June 2013 (UTC)[reply]
  • To go back to your first document – is this XML or XSLT? Obviously all XSLT stylesheets are in XML too, but what are you using these files as, and what will Safari see them as?
If you point Safari at a document, then it sees it as XML and XML alone: merely passive data, not an active script or stylesheet to be processed. It will display, but it will display itself as the source of the stylesheet, not your expected output.
If you want to make XSLT be processed (through a browser), then you have to give your browser an XML document and this document has to then refer to the XSLT stylesheet. This causes the browser to not only load and display the XML document, but also to apply the stylesheet. You could even use the same stylesheet for both (as a test) – your simple example doesn't care what the content of the document is, just that it has a root element (i.e. any well-formed XML document).
It's not possible (because it's outside the scope of XSLT) to invoke XSLT "in isolation", without a source document. Andy Dingley (talk) 19:27, 7 June 2013 (UTC)[reply]