You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by "Chris Bitmead (JIRA)" <xa...@xml.apache.org> on 2005/05/10 05:57:07 UTC

[jira] Commented: (XALANJ-2118) No namespace declarations for attributes

     [ http://issues.apache.org/jira/browse/XALANJ-2118?page=comments#action_64804 ]
     
Chris Bitmead commented on XALANJ-2118:
---------------------------------------


Below is an example program and the resulting output. As you can see, the namespace URI is specified for the "fo" namespace and yet it doesn't come out in the output.


package untitled2;
import java.io.File;
import javax.xml.transform.sax.SAXTransformerFactory;
import javax.xml.transform.sax.TransformerHandler;
import javax.xml.transform.stream.StreamResult;
import org.xml.sax.helpers.*;

public class Untitled1 {
    public static void main(String[] args) throws Exception {
        SAXTransformerFactory tf = (SAXTransformerFactory)
                                   SAXTransformerFactory.newInstance();
        TransformerHandler writer = tf.newTransformerHandler();
        StreamResult streamResult = new StreamResult(new File("c:/tmp/myout.x"));
        writer.setResult(streamResult);
        writer.startDocument();
        AttributesImpl empty = new AttributesImpl();
        AttributesImpl att = new AttributesImpl();
        att.addAttribute("http://openoffice.org/2000/style", "font-family", "fo:font-family", "CDATA", "Tahoma");
        writer.startElement("http://openoffice.org/2000/text", "document", "office:document", empty);
        writer.startElement("http://openoffice.org/2000/text", "word", "office:word", att);
        writer.endElement("http://openoffice.org/2000/text", "word", "office:word");
        writer.endElement("http://openoffice.org/2000/text", "document", "office:document");
        writer.endDocument();
    }
}


<?xml version="1.0" encoding="UTF-8"?>
<office:document xmlns:office="http://openoffice.org/2000/text">
<office:word fo:font-family="Tahoma"/>
</office:document>



> No namespace declarations for attributes
> ----------------------------------------
>
>          Key: XALANJ-2118
>          URL: http://issues.apache.org/jira/browse/XALANJ-2118
>      Project: XalanJ2
>         Type: Bug
>   Components: SAX
>     Versions: 2.6
>  Environment: Win XP
>     Reporter: Chris Bitmead
>     Priority: Critical

>
> I'm using Xalan SAX to write OpenOffice.org documents, and these documents sometimes use a namespace "fo" as in "fo:font-family", but it only uses this namespace for attributes, not for tags and Xalan doesn't create the appropriate namespace declaration for these attributes when writing the document out with SAX. I have tried this with the xalan built into Java 1.5.0 as well as tried the 2.6.0 xalan.jar dropped into the lib/endorsed directory in Java 1.4.2, but both exhibit this behaviour.
> This seems like a bug to me, is it?

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: xalan-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: xalan-dev-help@xml.apache.org


Re: [jira] Commented: (XALANJ-2118) No namespace declarations for attributes

Posted by Mukul Gandhi <ga...@gmail.com>.
I won't say if the error you pointed is a bug.. But following is a
modified code which seems to work.

 public static void main(String[] args) throws Exception {
       SAXTransformerFactory tf = (SAXTransformerFactory)
                                  SAXTransformerFactory.newInstance();
       TransformerHandler writer = tf.newTransformerHandler();
       StreamResult streamResult = new StreamResult(new File("myout.xml"));
       writer.setResult(streamResult);
       writer.startDocument();
       AttributesImpl empty = new AttributesImpl();
       AttributesImpl att = new AttributesImpl();
       att.addAttribute("", "font-family", "fo:font-family", "CDATA", "Tahoma");
       writer.startPrefixMapping("office", "http://openoffice.org/2000/text");
       writer.startPrefixMapping("fo", "http://openoffice.org/2000/style");
       writer.startElement("", "document", "office:document", empty);
       writer.startElement("", "word", "office:word", att);
       writer.endElement("", "word", "office:word");
       writer.endElement("", "document", "office:document");
       writer.endDocument();
   }

It produces output -
<?xml version="1.0" encoding="UTF-8"?>
<office:document xmlns:office="http://openoffice.org/2000/text"
xmlns:fo="http://openoffice.org/2000/style">
  <office:word fo:font-family="Tahoma"/>
</office:document>

Regards,
Mukul


On 5/10/05, Chris Bitmead (JIRA) <xa...@xml.apache.org> wrote:
>     [ http://issues.apache.org/jira/browse/XALANJ-2118?page=comments#action_64804 ]
> 
> Chris Bitmead commented on XALANJ-2118:
> ---------------------------------------
> 
> Below is an example program and the resulting output. As you can see, the namespace URI is specified for the "fo" namespace and yet it doesn't come out in the output.
> 
> package untitled2;
> import java.io.File;
> import javax.xml.transform.sax.SAXTransformerFactory;
> import javax.xml.transform.sax.TransformerHandler;
> import javax.xml.transform.stream.StreamResult;
> import org.xml.sax.helpers.*;
> 
> public class Untitled1 {
>    public static void main(String[] args) throws Exception {
>        SAXTransformerFactory tf = (SAXTransformerFactory)
>                                   SAXTransformerFactory.newInstance();
>        TransformerHandler writer = tf.newTransformerHandler();
>        StreamResult streamResult = new StreamResult(new File("c:/tmp/myout.x"));
>        writer.setResult(streamResult);
>        writer.startDocument();
>        AttributesImpl empty = new AttributesImpl();
>        AttributesImpl att = new AttributesImpl();
>        att.addAttribute("http://openoffice.org/2000/style", "font-family", "fo:font-family", "CDATA", "Tahoma");
>        writer.startElement("http://openoffice.org/2000/text", "document", "office:document", empty);
>        writer.startElement("http://openoffice.org/2000/text", "word", "office:word", att);
>        writer.endElement("http://openoffice.org/2000/text", "word", "office:word");
>        writer.endElement("http://openoffice.org/2000/text", "document", "office:document");
>        writer.endDocument();
>    }
> }
> 
> <?xml version="1.0" encoding="UTF-8"?>
> <office:document xmlns:office="http://openoffice.org/2000/text">
> <office:word fo:font-family="Tahoma"/>
> </office:document>
> 
> > No namespace declarations for attributes
> > ----------------------------------------
> >
> >          Key: XALANJ-2118
> >          URL: http://issues.apache.org/jira/browse/XALANJ-2118
> >      Project: XalanJ2
> >         Type: Bug
> >   Components: SAX
> >     Versions: 2.6
> >  Environment: Win XP
> >     Reporter: Chris Bitmead
> >     Priority: Critical
> 
> >
> > I'm using Xalan SAX to write OpenOffice.org documents, and these documents sometimes use a namespace "fo" as in "fo:font-family", but it only uses this namespace for attributes, not for tags and Xalan doesn't create the appropriate namespace declaration for these attributes when writing the document out with SAX. I have tried this with the xalan built into Java 1.5.0 as well as tried the 2.6.0 xalan.jar dropped into the lib/endorsed directory in Java 1.4.2, but both exhibit this behaviour.
> > This seems like a bug to me, is it?
> 
> --
> This message is automatically generated by JIRA.
> -
> If you think it was sent incorrectly contact one of the administrators:
>   http://issues.apache.org/jira/secure/Administrators.jspa
> -
> For more information on JIRA, see:
>   http://www.atlassian.com/software/jira
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: xalan-dev-unsubscribe@xml.apache.org
> For additional commands, e-mail: xalan-dev-help@xml.apache.org
> 
>

---------------------------------------------------------------------
To unsubscribe, e-mail: xalan-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: xalan-dev-help@xml.apache.org