[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Colon Error in Processing-Instruction Name

Subject: Colon Error in Processing-Instruction Name
From: "Trevor Majic" <majic87@xxxxxxxxxxx>
Date: Wed, 18 Aug 2004 10:15:36 -0500
is10744 arch
I have a processing-instruction that works in HTML, but when I include it in my XSL, I receive an error stating the name cannot include colons (namespace conflict).

This is the processing-instruction as it appears in the HTML file:

<?IS10744:arch name="linkone-enabled"
    public-id="-//LinkOne//NOTATION AFDR ARCBASE Linkone enabled//EN"
       auto=nArcAuto?>


Obviously, when I try to add this as a processing-instruction in XSL, I receive an error message. This is the XSL processing instruction I used:


<xsl:processing-instruction name="IS10744:arch">
name="linkone-enabled"
public-id="-//LinkOne//NOTATION AFDR ARCBASE Linkone enabled//EN" auto=nArcAuto
</xsl:processing-instruction>



Since the name can't include a colon (IS10744:arch), an error is generated.


I have found two suggested work-arounds:

1. Replace the colon with a space or a dash. This however does not work. If I replace the colon in the HTML file, the page does not display correctly (it is missing the Linkone selection box).

2. Turn off namespace. I suspect there are some issues with doing that. First off, I don't know how to do it. Also, If I turn off the namespace, will that turn off the namespace validation for the whole document, or just for the data within the section where it is turned-off.

NOTE: I may be incorrect in some of this, so feel free to correct me if I am wrong, or using wrong terminology.

I can't add the colon after the processing name (ie. .....name=IS10744>:arch ..... as the output will be <?IS10744 :arch.....

An error message is generated if I use an empty name (ie. ....name="">IS10744:arch name....). Plus, the output wouldn't work in the HTML document, as it would be <? IS10744 (space between ? and IS10744).

I don't seem to be able to use a predefined general entity (ie &#58) to replace the colon.


This is the HTML file which works:


<?IS10744:arch
   name="linkone-enabled"
   public-id="-//LinkOne//NOTATION AFDR ARCBASE Linkone enabled//EN"
   auto=nArcAuto?>
<html xmlns="http://www.w3.org/TR/REC-html40">

<table>
<tr linkone-enabled="entry">
<td linkone-enabled="field" le-name="Stock Code" le-select="always">500100</td>
<td linkone-enabled="field" le-name="Part Number" le-select="hide">WR151-12</td>
<td>3/4&quot; Wrench</td>
<td>ea</td>
</tr>
</table>





This is my XML:


<?xml version="1.0"?>
<?xml:stylesheet type='text/xsl' href='StockCodesStylesheet.xsl'?>

<stockcodes>
   <indivitems>
           <groupcode>Bolts</groupcode>
           <stockcode>0015236</stockcode>
           <uoi>Ea</uoi>

       <supplier>
               <suppliername>ABC Supplies</suppliername>

             <supplieraddress>
                     <supplierstreet>123 Maple Way</supplierstreet>
	      <suppliercity>Wpg</suppliercity>
	      <supplierpostal>R3J2E7</supplierpostal>
             </supplieraddress>
         </supplier>

           <stockdescriptions>
               <description1>Bolt</description1>
               <description2>1/2 inch</description2>
           </stockdescriptions>

           <partnumber>12bbdgr531</partnumber>
</indivitems>



This is the XSL:

<?xml version='1.0' encoding='UTF-8' ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" indent="yes"/>


<xsl:template match="stockcodes">

<xsl:processing-instruction name="IS10744:arch)">name="linkone-enabled"
public-id="-//LinkOne//NOTATION AFDR ARCBASE Linkone enabled//EN" auto=nArcAuto
</xsl:processing-instruction>


<table>
<xsl:for-each select="indivitems">
<tr linkone-enabled="entry">
<td linkone-enabled="field" le-name="part-number" le-select="always">233355</td>
<td linkone-enabled="field" le-name="Description"><xsl:value-of select="stockdescriptions/description2"/></td>
<td><xsl:value-of select="uoi"/></td>
</tr>
</xsl:for-each>
</table>
</xsl:template>
</xsl:stylesheet>




What do I need to do to fix this?

Thank you,
Trevor

_________________________________________________________________
Express yourself instantly with MSN Messenger! Download today - it's FREE! http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/


Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.