sax-devel Mailing List for SAX: Simple API for XML
Brought to you by:
dmegginson
You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(6) |
Aug
(52) |
Sep
(3) |
Oct
(29) |
Nov
(97) |
Dec
(5) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(55) |
Feb
(33) |
Mar
(3) |
Apr
(32) |
May
(92) |
Jun
(51) |
Jul
(3) |
Aug
(4) |
Sep
(6) |
Oct
(6) |
Nov
(3) |
Dec
(6) |
2003 |
Jan
(5) |
Feb
(2) |
Mar
(1) |
Apr
(16) |
May
|
Jun
(14) |
Jul
(3) |
Aug
(2) |
Sep
|
Oct
(3) |
Nov
(12) |
Dec
(3) |
2004 |
Jan
(4) |
Feb
(34) |
Mar
(54) |
Apr
(143) |
May
|
Jun
(7) |
Jul
(2) |
Aug
|
Sep
(1) |
Oct
|
Nov
(4) |
Dec
(6) |
2005 |
Jan
(11) |
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2006 |
Jan
(2) |
Feb
(6) |
Mar
(2) |
Apr
|
May
(10) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(2) |
Dec
(1) |
2007 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(2) |
Dec
|
2008 |
Jan
|
Feb
|
Mar
|
Apr
(4) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2010 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
2011 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Marco N. <Mar...@co...> - 2011-03-28 13:45:19
|
Hi mailing list, I am using JDom to parse XML files. If I am right, you can use SAX as a parser, right? Im currenty using this code to read in the XML file FileInputStream fileStream = new FileInputStream(xmlFile); Charset s = detectFileEncoding(xmlFile); InputStreamReader streamReader = new InputStreamReader(fileStream, s); SAXBuilder builder = new SAXBuilder(); doc = builder.build(streamReader); The detectFileEncoding-Method is based on http://code.google.com/p/juniversalchardet/ and works fine so far. I'm wondering in which charset SAXBuilder is now storing the characters its getting from the InputStreamReader? Currently, everything works fine and I am getting UTF-8 as charset no matter what I put in. The other question would be, how I can output the XML data to file in a different encoding than UTF8? Thanks for your help and regards from Germany, Marco Naetlitz Working Student ConVista Consulting AG Im Zollhafen 15/17 50678 Köln Phone +49 (221) 888 26 - 331 Fax +49 (221) 888 26 - 8331 Mar...@co...<mailto:Mar...@co...> www.ConVista.com<http://www.ConVista.com> -------------------------------------------------------------------------------- ConVista Consulting AG Geschaeftsstellen: Koeln, Muenchen, Walldorf Handelsregister: HRB 50609 Amtsgericht Koeln Vorstand: Wolfgang Albers, Heiko Huelsebusch, Oliver Kewes, Thomas Moeller, Daniel Neubieser Aufsichtsratsvorsitzender: Volker Meis |
From: soha n. <soh...@ya...> - 2010-08-03 19:51:10
|
Hello, i'm trying to recompile two programs, dacapo benchmark and polymer (a program used to enforce some security policies), so anyway, i get an error of loader constraint violation when precisely trying to compile eclipse in dacapo with polymer, below i'm listing the exact error log i receive and i was wondering what can i possibly do to solve the problem. thanks, soha !SESSION 2010-07-22 17:05:29.514 ----------------------------------------------- eclipse.buildId=M20060118-1600 java.version=1.6.0_20 java.vendor=Apple Inc. BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=en_US Framework arguments: -application dacapo.eclipse.dacapoHarness -level 0 Command-line arguments: -data ./scratch/workspace -application dacapo.eclipse.dacapoHarness -level 0 !ENTRY org.eclipse.update.configurator 2010-07-22 17:05:29.608 !MESSAGE Could not install bundle plugins/org.eclipse.jdt.core.tests.builder_3.1.2/ loader constraint violation: when resolving method "javax.xml.parsers.SAXParser.parse(Ljava/io/InputStream;Lorg/xml/sax/helpers/DefaultHandler;)V" the class loader (instance of polymer/PolymerClassLoader) of the current class, org/eclipse/core/runtime/internal/adaptor/PluginParser, and the class loader (instance of <bootloader>) for resolved class, javax/xml/parsers/SAXParser, have different Class objects for the type org/xml/sax/helpers/DefaultHandler used in the signature !ENTRY org.eclipse.update.configurator 2010-07-22 17:05:29.611 !MESSAGE Could not install bundle plugins/org.eclipse.jdt.core.tests.compiler_3.1.2/ loader constraint violation: when resolving method "javax.xml.parsers.SAXParser.parse(Ljava/io/InputStream;Lorg/xml/sax/helpers/DefaultHandler;)V" the class loader (instance of polymer/PolymerClassLoader) of the current class, org/eclipse/core/runtime/internal/adaptor/PluginParser, and the class loader (instance of <bootloader>) for resolved class, javax/xml/parsers/SAXParser, have different Class objects for the type org/xml/sax/helpers/DefaultHandler used in the signature !ENTRY org.eclipse.update.configurator 2010-07-22 17:05:29.613 !MESSAGE Could not install bundle plugins/org.eclipse.jdt.core.tests.performance_3.1.2/ loader constraint violation: when resolving method "javax.xml.parsers.SAXParser.parse(Ljava/io/InputStream;Lorg/xml/sax/helpers/DefaultHandler;)V" the class loader (instance of polymer/PolymerClassLoader) of the current class, org/eclipse/core/runtime/internal/adaptor/PluginParser, and the class loader (instance of <bootloader>) for resolved class, javax/xml/parsers/SAXParser, have different Class objects for the type org/xml/sax/helpers/DefaultHandler used in the signature !ENTRY org.eclipse.update.configurator 2010-07-22 17:05:29.621 !MESSAGE Could not install bundle plugins/org.eclipse.test.performance_3.1.0/ loader constraint violation: when resolving method "javax.xml.parsers.SAXParser.parse(Ljava/io/InputStream;Lorg/xml/sax/helpers/DefaultHandler;)V" the class loader (instance of polymer/PolymerClassLoader) of the current class, org/eclipse/core/runtime/internal/adaptor/PluginParser, and the class loader (instance of <bootloader>) for resolved class, javax/xml/parsers/SAXParser, have different Class objects for the type org/xml/sax/helpers/DefaultHandler used in the signature |
From: David M. <dav...@gm...> - 2008-04-29 19:25:41
|
2008/4/28 Vallone, Philip Mr CTR USA AMC <Phi...@us...>: > The problem was is the if statement. When I get rid of it.. Everything > works. > > Thanks for the help! No problem -- I'm glad that it worked out so easily. All the best, David |
From: Vallone, P. Mr C. U. A. <Phi...@us...> - 2008-04-28 15:15:29
|
Hi Thank you for your help. The problem was is the if statement. When I get rid of it.. Everything works. Thanks for the help! Phil -----Original Message----- From: sax...@li... [mailto:sax...@li...] On Behalf Of David Megginson Sent: Monday, April 28, 2008 10:01 AM To: List for developers contributing to SAX itself. Subject: Re: [Sax-devel] Resolve all entities 2008/4/24 Vallone, Philip Mr CTR USA AMC <Phi...@us...>: > I was wondering if you could provide some guidance on resolving > entities before they are processed. I have the following java code > that will list an entities systemIDs referenced in an XML document. > This works well except if I have an entity referenced that references > a list of entities (like a catalog of entities) or an entity that is not used. It looks to me like a bug int he parser you're using. Your entity resolver should be invoked for all references, including the parameter entity reference %commonEntities;. Have you tried adding a print statement outside the if block, to see if for some reason it's not coming in with a file: scheme? > > The following XML returns: > > System ID: file:/C:/path/driverlicense.dtd System ID: > file:/C:/path/phone.ent > > Since "commonEnties" was not used, nothing is returned. How do I > return all entites files referenced? > > > ********code*********** > Sample XML test.xml > > <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE DRIVERSLICENSE > SYSTEM "driverlicense.dtd" [ > <!ENTITY phone SYSTEM "phone.ent"> > <!ENTITY % commonEnties SYSTEM 'c:/temp/common.ent'> > %commonEnties; > ]> > <?xml-stylesheet type="text/xsl" href="driverslicense.xslt"?> > <DRIVERSLICENSE> > <NAME nickname="Joey">JOE</NAME> > <STREET>1313 Mocking Bird</STREET> > <CITY>Here</CITY> > <STATE>NY</STATE> > <ZIP>11738</ZIP> > <CELL>123-456-7890</CELL> > ☎ > </DRIVERSLICENSE> > > > Java code: > > private void resolver(java.awt.event.ActionEvent evt) { > > try { > // Create an XML parser > DocumentBuilder builder = > DocumentBuilderFactory.newInstance().newDocumentBuilder(); > // Install the entity resolver > builder.setEntityResolver(new MyResolver()); > // Parse the XML file > org.w3c.dom.Document doc = builder.parse(new > File("C:/path/test.xml")); > > } catch (SAXException e) { > // A parsing error occurred; the xml input is not valid > } catch (ParserConfigurationException e) { > } catch (IOException e) { > } > > } > > public class MyResolver implements EntityResolver { > // This method is called whenever an external entity is accessed > // for the first time. > public InputSource resolveEntity(String publicId, String > systemId) { > try { > // Wrap the systemId in a URI object to make it > convenient > // to extract the components of the systemId > URI uri = new URI(systemId); > > System.out.println("System ID: " + systemId); > > > // Check if external source is a file > if ("file".equals(uri.getScheme())) { > String filename = uri.getSchemeSpecificPart(); > > return new InputSource(new FileReader(filename)); > } else { > > } > } catch (URISyntaxException e) { > System.err.println(e.toString()); > } catch (IOException e) { > } > > // Returning null causes the caller to try accessing the > systemid > return null; > } > } All the best, David ------------------------------------------------------------------------ - This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/j avaone _______________________________________________ List: sax-devel, sax...@li... See: http://www.saxproject.org/ https://lists.sourceforge.net/lists/listinfo/sax-devel |
From: David M. <dav...@gm...> - 2008-04-28 14:00:36
|
2008/4/24 Vallone, Philip Mr CTR USA AMC <Phi...@us...>: > I was wondering if you could provide some guidance on resolving entities > before they are processed. I have the following java code that will list > an entities systemIDs referenced in an XML document. This works well > except if I have an entity referenced that references a list of entities > (like a catalog of entities) or an entity that is not used. It looks to me like a bug int he parser you're using. Your entity resolver should be invoked for all references, including the parameter entity reference %commonEntities;. Have you tried adding a print statement outside the if block, to see if for some reason it's not coming in with a file: scheme? > > The following XML returns: > > System ID: file:/C:/path/driverlicense.dtd > System ID: file:/C:/path/phone.ent > > Since "commonEnties" was not used, nothing is returned. How do I return > all entites files referenced? > > > ********code*********** > Sample XML test.xml > > <?xml version="1.0" encoding="UTF-8"?> > <!DOCTYPE DRIVERSLICENSE SYSTEM "driverlicense.dtd" [ > <!ENTITY phone SYSTEM "phone.ent"> > <!ENTITY % commonEnties SYSTEM 'c:/temp/common.ent'> > %commonEnties; > ]> > <?xml-stylesheet type="text/xsl" href="driverslicense.xslt"?> > <DRIVERSLICENSE> > <NAME nickname="Joey">JOE</NAME> > <STREET>1313 Mocking Bird</STREET> > <CITY>Here</CITY> > <STATE>NY</STATE> > <ZIP>11738</ZIP> > <CELL>123-456-7890</CELL> > ☎ > </DRIVERSLICENSE> > > > Java code: > > private void resolver(java.awt.event.ActionEvent evt) { > > try { > // Create an XML parser > DocumentBuilder builder = > DocumentBuilderFactory.newInstance().newDocumentBuilder(); > // Install the entity resolver > builder.setEntityResolver(new MyResolver()); > // Parse the XML file > org.w3c.dom.Document doc = builder.parse(new > File("C:/path/test.xml")); > > } catch (SAXException e) { > // A parsing error occurred; the xml input is not valid > } catch (ParserConfigurationException e) { > } catch (IOException e) { > } > > } > > public class MyResolver implements EntityResolver { > // This method is called whenever an external entity is accessed > // for the first time. > public InputSource resolveEntity(String publicId, String > systemId) { > try { > // Wrap the systemId in a URI object to make it > convenient > // to extract the components of the systemId > URI uri = new URI(systemId); > > System.out.println("System ID: " + systemId); > > > // Check if external source is a file > if ("file".equals(uri.getScheme())) { > String filename = uri.getSchemeSpecificPart(); > > return new InputSource(new FileReader(filename)); > } else { > > } > } catch (URISyntaxException e) { > System.err.println(e.toString()); > } catch (IOException e) { > } > > // Returning null causes the caller to try accessing the > systemid > return null; > } > } All the best, David |
From: Vallone, P. Mr C. U. A. <Phi...@us...> - 2008-04-24 13:07:08
|
Hi, I was wondering if you could provide some guidance on resolving entities before they are processed. I have the following java code that will list an entities systemIDs referenced in an XML document. This works well except if I have an entity referenced that references a list of entities (like a catalog of entities) or an entity that is not used. The following XML returns: System ID: file:/C:/path/driverlicense.dtd System ID: file:/C:/path/phone.ent Since "commonEnties" was not used, nothing is returned. How do I return all entites files referenced? ********code*********** Sample XML test.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE DRIVERSLICENSE SYSTEM "driverlicense.dtd" [ <!ENTITY phone SYSTEM "phone.ent"> <!ENTITY % commonEnties SYSTEM 'c:/temp/common.ent'> %commonEnties; ]> <?xml-stylesheet type="text/xsl" href="driverslicense.xslt"?> <DRIVERSLICENSE> <NAME nickname="Joey">JOE</NAME> <STREET>1313 Mocking Bird</STREET> <CITY>Here</CITY> <STATE>NY</STATE> <ZIP>11738</ZIP> <CELL>123-456-7890</CELL> ☎ </DRIVERSLICENSE> Java code: private void resolver(java.awt.event.ActionEvent evt) { try { // Create an XML parser DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder(); // Install the entity resolver builder.setEntityResolver(new MyResolver()); // Parse the XML file org.w3c.dom.Document doc = builder.parse(new File("C:/path/test.xml")); } catch (SAXException e) { // A parsing error occurred; the xml input is not valid } catch (ParserConfigurationException e) { } catch (IOException e) { } } public class MyResolver implements EntityResolver { // This method is called whenever an external entity is accessed // for the first time. public InputSource resolveEntity(String publicId, String systemId) { try { // Wrap the systemId in a URI object to make it convenient // to extract the components of the systemId URI uri = new URI(systemId); System.out.println("System ID: " + systemId); // Check if external source is a file if ("file".equals(uri.getScheme())) { String filename = uri.getSchemeSpecificPart(); return new InputSource(new FileReader(filename)); } else { } } catch (URISyntaxException e) { System.err.println(e.toString()); } catch (IOException e) { } // Returning null causes the caller to try accessing the systemid return null; } } Thanks in advance, Phil |
From: Nasreen L. <lag...@ho...> - 2007-11-13 23:17:40
|
Hi All, This is my very first email here and first step towards SAX. I have= made an XML file, I need to get Elements Attributes Value. I' have been lo= oking and I got getAttributeValue (int index) but I'm confused on int value= as parameter. Could any 1 please show me coding example of getting attrib= ute value!!! Below is my XML file: <ServiceAccess> <ServiceProviders> <HS= P name=3D"HSP1" URL=3D"http://localhost:8080/axis2/services/HealthcareServi= ceProvider1" /> <HSP name=3D"HSP2" URL=3D"http://localhost:8080/axis2/serv= ices/HealthcareServiceProvider2" /> <HSP name=3D"HSP3" URL=3D"http://local= host:8080/axis2/services/HealthcareServiceProvider3" /> <HSP name=3D"HSP4"= URL=3D"http://localhost:8080/axis2/services/HealthcareServiceProvider4" />= <HSP name=3D"HSP5" URL=3D"http://localhost:8080/axis2/services/Healthcare= ServiceProvider5" /> <HSP name=3D"HSP6" URL=3D"http://localhost:8080/axis2= /services/HealthcareServiceProvider6" /> </ServiceProviders> <Authenticat= ionServer> <HSU name=3D"" URL=3D"localhost"/> </AuthenticationServer></Ser= viceAccess> Regards Help yourself to FREE treats served up daily at the Messenger Caf=E9. Stop = by today!=20 _________________________________________________________________ Boo!=A0Scare away worms, viruses and so much more! Try Windows Live OneCare= ! http://onecare.live.com/standard/en-us/purchase/trial.aspx?s_cid=3Dwl_hotma= ilnews= |
From: Nasreen L. <lag...@ho...> - 2007-11-13 15:30:42
|
Hi All, =20 This is my very first email here and first step towards SAX. =20 I have made an XML file, I need to get Elements Attributes Value. I' have b= een looking and I got getAttributeValue (int index) but I'm confused on int= value as parameter. =20 Could any 1 please show me coding example of getting attribute value!!! =20 =20 Below is my XML file: =20 <ServiceAccess> <ServiceProviders> <HSP name=3D"HSP1" URL=3D"http://localh= ost:8080/axis2/services/HealthcareServiceProvider1" /> <HSP name=3D"HSP2" = URL=3D"http://localhost:8080/axis2/services/HealthcareServiceProvider2" /> = <HSP name=3D"HSP3" URL=3D"http://localhost:8080/axis2/services/HealthcareS= erviceProvider3" /> <HSP name=3D"HSP4" URL=3D"http://localhost:8080/axis2/= services/HealthcareServiceProvider4" /> <HSP name=3D"HSP5" URL=3D"http://l= ocalhost:8080/axis2/services/HealthcareServiceProvider5" /> <HSP name=3D"H= SP6" URL=3D"http://localhost:8080/axis2/services/HealthcareServiceProvider6= " /> </ServiceProviders> <AuthenticationServer> <HSU name=3D"" URL=3D"lo= calhost"/> </AuthenticationServer></ServiceAccess> =20 =20 Regards _________________________________________________________________ Help yourself to FREE treats served up daily at the Messenger Caf=E9. Stop = by today. http://www.cafemessenger.com/info/info_sweetstuff2.html?ocid=3DTXT_TAGLM_Oc= tWLtagline= |
From: Ben A. <ben...@st...> - 2007-06-25 09:48:02
|
Hello there I would greatly appreciate a small amount of your time to assist with my doctoral research at The University of Newcastle. The research concerns open source licensing and we're seeking developers working on Java projects. The research is supervised, ethics-approved, anonymous and results will be freely available. Participation will also provide a custom licensing report for your project. To learn more, please visit: http://licensing-research.newcastle.edu.au Thanks for reading this email, and I hope you'll consider participating. Best regards Ben Alex (My apologies for being off-topic; this list will not be emailed again) |
From: Di L. <di....@go...> - 2007-03-01 12:41:11
|
Hi all, i am now writing my master thesis and have a question about SAX: I am trying to find the group information (sequence, choice and all) by SAX-Parsing, which has been defined in the XML Schema. Is there a standard solution for this problem? Actually the validator of the SAX Parser does have the same problem. By validating of a XML document relating to his schema the sax-based validator must also find the group information. How does it work? I researched seveval literatures, but didn't find any solutions. They just say, that the SAX Parser has also the possibility to validate a doument and how i can start the validater and how can i handle the validating errors. The internal functionality of the validater is unknown. I don't want to validate the whole document, but just to find the group information. So i want to know, if there has been already a solution for it? If yes, can anyone tell me, how it works or give me some sources to research? Thanks in advance! Best Regards! Di |
From: <wer...@re...> - 2006-12-07 12:35:25
|
Hi, A missing method in this interface is one where a javax.xml.transform.Sou= rce is returned. It may be that the source of an entity is not a byte or char= acter stream, but instead consists of synthesized SAX events. In this case the = class javax.xml.transform.sax.SAXSource could be used. In fact the return type org.xml.sax.InputSource is not needed at all for the resolveEntity method= , because javax.xml.transform.stream.StreamSource also conveys that informa= tion. Regards, Werner. --=20 Werner Donn=E9 -- Re Engelbeekstraat 8 B-3300 Tienen tel: (+32) 486 425803 e-mail: wer...@re... |
From: David M. <dav...@gm...> - 2006-11-20 00:32:43
|
T24gMDYvMTEvMDYsIERhdmlkIEJhbGHFvmljIDxkYXZpZC5iYWxhemljQGhlcm1lcy1zb2Z0bGFi LmNvbT4gd3JvdGU6Cgo+IEkgZW5jb3VudGVyZWQgdGhpcyB3ZWlyZCBlcnJvciByZXBvcnQgd2hl biBlZGl0aW5nIGFuIFhNTCBmaWxlIGluCj4gRWNsaXBzZSAzLjIuMSA6Cj4KPiBXcm9uZyBsaW5l IGluIFhNTCBmaWxlIDoKPgo+IDxtYW55LXRvLW1hbnkgY2xhc3M9Ik5hc2xvdiIgY2FzY2FkZT0i c2F2ZS11cGRhdGUiLz4KPgo+IHJlcG9ydGVkIGVycm9yIGJ5IEVjbGlwc2UgOgo+IEF0dHJpYnV0 ZSAiY2FzY2FkZSIgbXVzdCBiZSBkZWNsYXJlZCBmb3IgZWxlbWVudCB0eXBlICJtYW55LXRvLW1h bnkiLgo+Cj4gSW4gcmVhbGl0eSBpdCBzaG91bGQgc2F5ICJtdXN0IE5PVCBiZSBkZWNsYXJlZC4u LiIsIGJlY2F1c2UgdGhlCj4gbWFueS10by1tYW55IHRhZyBoYXMgbm90IGF0dHJpYnV0ZSAiY2Fz Y2FkZSIuCj4KPiBJIGdldCB0aGUgc2FtZSBlcnJvciBmcm9tIGFub3RoZXIgdG9vbCB3b3JraW5n IG9uIHRoZSBzYW1lIFhNTCBmaWxlIDoKPgo+IFtoaWJlcm5hdGV0b29sXSBvcmcueG1sLnNheC5T QVhQYXJzZUV4Y2VwdGlvbjogQXR0cmlidXRlICJjYXNjYWRlIiBtdXN0Cj4gYmUgZGVjbGFyZWQg Zm9yIGVsZW1lbnQgdHlwZSAibWFueS10by1tYW55Ii4KPgo+IFNvIG1heWJlIHRoaXMgaXMgYSBi dWcgaW4gdGhlIFNBWCBYTUwgcGFyc2VyID8KClNBWCBpcyBhbiBpbnRlcmZhY2UsIG5vdCBhIHBh cnNlciAodGhvdWdoIGl0IGluY2x1ZGVzIHNvbWUgaGVscGVyCmNsYXNzZXMgaW4gdGhlIEphdmEg dmVyc2lvbikuICBUaGUgZXhjZXB0aW9uIHlvdSdyZSBzZWVpbmcgaXMgY29taW5nCmZyb20gdGhl IHVuZGVybHlpbmcgcGFyc2VyLCB3aGljaCBmb3IgRWNsaXBzZSB3b3VsZCAoSSdkIGd1ZXNzKSBi ZQpYZXJjZXMuCgoKQWxsIHRoZSBiZXN0LAoKCkRhdmlkCg== |
From: <dav...@he...> - 2006-11-06 14:51:02
|
Hi! I encountered the (small) problem described below. I use Sun Java "1.5.0_09" on Windows XP. Is this a SAX problem ? Regards, David -------- Original Message -------- Subject: Strange XML editor error Date: Mon, 06 Nov 2006 15:43:19 +0100 From: David Bala=C5=BEic <dav...@he...o> Organization: HSL To: sax...@li... Newsgroups: eclipse.platform Hi! I encountered this weird error report when editing an XML file in=20 Eclipse 3.2.1 : Wrong line in XML file : <many-to-many class=3D"Naslov" cascade=3D"save-update"/> reported error by Eclipse : Attribute "cascade" must be declared for element type "many-to-many". In reality it should say "must NOT be declared...", because the=20 many-to-many tag has not attribute "cascade". I get the same error from another tool working on the same XML file : [hibernatetool] org.xml.sax.SAXParseException: Attribute "cascade" must=20 be declared for element type "many-to-many". So maybe this is a bug in the SAX XML parser ? The entire XML file is quoted below. Regards, David PS: The XML file contents : <?xml version=3D"1.0" encoding=3D"UTF-8"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping package=3D"com.manning.hq.stein.data"> <class name=3D"Oseba"> <id name=3D"id"> <generator class=3D"native" /> </id> <property name=3D"ime" /> <property name=3D"priimek" /> <property name=3D"spol" /> <!-- many-to-one name=3D"naslov" class=3D"Naslov" cascade=3D"save-updat= e" /--> <!-- test types of cascading --> <!-- column=3D"naslov_id" cascade=3D"none" --> <set name=3D"naslovi" cascade=3D"save-update"> <key /> <many-to-many class=3D"Naslov" cascade=3D"save-update"/> </set> <joined-subclass name=3D"OdraslaOseba"> <key /> <property name=3D"poklic" /><!-- <property name=3D"pla=C4=8Da" column=3D"placa" /> =09 <many-to-one name=3D"najbolj=C5=A1iPrijatelj" column=3D"frend" class=3D"Oseba" />--> </joined-subclass> <joined-subclass name=3D"Otrok"> <key /><!-- <property name=3D"najljub=C5=A1aRisanka" column=3D"najrisanka" /> --> <property name=3D"vzdevek" /> </joined-subclass> </class> <query name=3D"byIme">from Oseba where ime =3D :ime</query> <query name=3D"byName"> <![CDATA[from Oseba where name =3D :ime]]> </query> <query name=3D"byPriimek"> <![CDATA[from Oseba where priimek =3D :ime]]> </query> <query name=3D"byPpriimek"> <![CDATA[from Oseba where ppriimek =3D :ime]]> </query> </hibernate-mapping> |
From: Jochen W. <joc...@gm...> - 2006-05-31 05:36:40
|
Hi, is anybody aware of a possibility to access what DOM offers with DocumentType->getInternalSubSet? If not with SAX, may be with another streaming parser? Regards, Jochen |
From: Michael G. <mrg...@ca...> - 2006-05-23 21:15:45
|
Mikael St=E5ldal <mik...@ho...> wrote on 05/23/2006 04:47:36 PM: > Michael Glavassevich wrote: > > If you're writing new code, I would avoid using Xerces' native=20 > > serializers. They are non-standard, not particularly well maintained=20 and=20 > > likely to be deprecated [1] soon (perhaps in the next release). JAXP's = > > TransformerHandler [2] is a much better choice for serializing SAX=20 events. >=20 > The serialization code in JAXP is from Xalan (the XSLT processor). It=20 > has some problems and gives different results in Java 1.4 and 1.5 in=20 > some cases. JAXP is an API. I think you mean the Sun implementation which contains a=20 fork of Apache Xalan. The latest version of Xalan may have fixed some of=20 the bugs you found or never had them to begin with. Thanks. Michael Glavassevich XML Parser Development IBM Toronto Lab E-mail: mrg...@ca... E-mail: mrg...@ap... |
From: <mik...@ho...> - 2006-05-23 20:47:53
|
Michael Glavassevich wrote: > If you're writing new code, I would avoid using Xerces' native > serializers. They are non-standard, not particularly well maintained and > likely to be deprecated [1] soon (perhaps in the next release). JAXP's > TransformerHandler [2] is a much better choice for serializing SAX events. The serialization code in JAXP is from Xalan (the XSLT processor). It has some problems and gives different results in Java 1.4 and 1.5 in some cases. To overcome these problems, I have made my own SAX2 XML serializer, Xouds. Xodus is part of the open source project LSP which can be found here: http://sourceforge.net/projects/lspx/ |
From: Chris B. <d0...@hu...> - 2006-05-23 08:53:12
|
David Megginson wrote: > On 22/05/06, Michael Glavassevich <mrg...@ca...> wrote: >> If you're writing new code, I would avoid using Xerces' native >> serializers. They are non-standard, not particularly well =20 >> maintained and >> likely to be deprecated [1] soon (perhaps in the next release). =20 >> JAXP's >> TransformerHandler [2] is a much better choice for serializing SAX =20= >> events. > > Speaking of new code, I should mention that another option is to use > StAX instead of SAX. Like SAX, StAX is a streaming API, so in theory, > it should be as efficient as SAX (I haven't run side-by-side tests). > However, since StAX is a pull parser, it leaves you in control of the > central loop instead of having to write event handlers. Here's an > intro: > > http://www.xml.com/pub/a/2003/09/17/stax.html > > StAX also covers writing. Does anyone know how stable and efficient > current StAX implementations are? The GNU Classpath default XML parser implementation is entirely based =20= on an underlying StAX parser. The SAX parser pulls events off this =20 StAX parser and delivers them as SAX events, and DOM trees are built =20 from this. This parser implementation is used in nearly all free Java runtimes =20 including gcj, kaffe, jamvm, cacao etc, and gets a lot of exercise in =20= free (gcj compiled-to-native) Eclipse, which makes extensive use of XML. Regarding efficiency, the SAX-over-StAX parser, despite delegating to =20= another implementation, takes approximately 48 seconds to parse a =20 typical set of documents that takes 60 seconds to parse with =C3=86lfred2.= =20 The same set of documents takes 42 seconds to parse with Xerces2's =20 SAX parser. I don't have straightforward comparison figures with =20 other StAX implementations like codehaus; I would suspect that it is =20 not as performant but is more conformant - attention to XML and SAX =20 conformance was the driving force behind this parser, and conformance =20= results can be found at http://builder.classpath.org/xml/SAXTest/ --=20 =E7=8A=AC Chris Burdess "They that can give up essential liberty to obtain a little safety deserve neither liberty nor safety." - Benjamin Franklin |
From: David M. <dav...@gm...> - 2006-05-22 21:13:26
|
On 22/05/06, Michael Glavassevich <mrg...@ca...> wrote: > If you're writing new code, I would avoid using Xerces' native > serializers. They are non-standard, not particularly well maintained and > likely to be deprecated [1] soon (perhaps in the next release). JAXP's > TransformerHandler [2] is a much better choice for serializing SAX events= . Speaking of new code, I should mention that another option is to use StAX instead of SAX. Like SAX, StAX is a streaming API, so in theory, it should be as efficient as SAX (I haven't run side-by-side tests). However, since StAX is a pull parser, it leaves you in control of the central loop instead of having to write event handlers. Here's an intro: http://www.xml.com/pub/a/2003/09/17/stax.html StAX also covers writing. Does anyone know how stable and efficient current StAX implementations are? All the best, David --=20 http://www.megginson.com/ |
From: Michael G. <mrg...@ca...> - 2006-05-22 19:23:28
|
Roberto Cosenza <li...@ro...> wrote on 05/22/2006 11:20:26 AM: > Hi David. Thank you for your clarification. > It is clear, SAX is the way to go for me. > I confirm that sax is reading the doctype and doing the validation > accordingly. It was missleading that the XMLSerializer was outputting > the "Strict" doctype unregarding of the input one. If you're writing new code, I would avoid using Xerces' native serializers. They are non-standard, not particularly well maintained and likely to be deprecated [1] soon (perhaps in the next release). JAXP's TransformerHandler [2] is a much better choice for serializing SAX events. > I have one more question: > Parsing a document which contains the fragment > <a href="mylink.html" >mylink</a>, generates events also for the > a-attribute 'shape="rect"', which is not given in input!! > Is there any way to turn this behavior off? It seems like the parser is > inserting some implicit attributes here and there... > /Roberto [1] http://xerces.apache.org/xerces2-j/faq-general.html#faq-6 [2] http://xerces.apache.org/xerces2-j/javadocs/api/javax/xml/transform/sax/TransformerHandler.html Michael Glavassevich XML Parser Development IBM Toronto Lab E-mail: mrg...@ca... E-mail: mrg...@ap... |
From: Chris B. <d0...@hu...> - 2006-05-22 15:35:13
|
Roberto Cosenza wrote: > I have one more question: > Parsing a document which contains the fragment > <a href=3D"mylink.html" >mylink</a>, generates events also for the > a-attribute 'shape=3D"rect"', which is not given in input!! > Is there any way to turn this behavior off? It seems like the =20 > parser is > inserting some implicit attributes here and there... If your Attributes object can be cast to an Attributes2 (feature "use-=20= attributes2"), you can use the isSpecified method of Attributes2 to =20 determine whether you need to output this attribute explicitly. --=20 =E7=8A=AC Chris Burdess "They that can give up essential liberty to obtain a little safety deserve neither liberty nor safety." - Benjamin Franklin |
From: Roberto C. <li...@ro...> - 2006-05-22 15:21:01
|
Hi David. Thank you for your clarification. It is clear, SAX is the way to go for me. I confirm that sax is reading the doctype and doing the validation accordingly. It was missleading that the XMLSerializer was outputting the "Strict" doctype unregarding of the input one. I have one more question: Parsing a document which contains the fragment <a href="mylink.html" >mylink</a>, generates events also for the a-attribute 'shape="rect"', which is not given in input!! Is there any way to turn this behavior off? It seems like the parser is inserting some implicit attributes here and there... /Roberto David Megginson wrote: > On 22/05/06, Roberto Cosenza <li...@ro...> wrote: > >> I'm writing an application that has to parse and MODIFY some XHTML. >> The result of the operation has to be the modified XHTML. >> I started using SAX (xerces) and, though seemed to work, I found out >> that SAX does not keep my doctype (all parsed documents take the XHTML >> Strict doctype). Besides, I was using the XHTMLSerializer class which is >> deprecated. >> Maybe I should use DOM for this job? The document is usually small. I'm >> missing some point? > > There are two conditions for using an in-memory object tree like the DOM: > > 1. Your documents are relatively small. > 2. Operations are relatively infrequent. > > For example, if you're dealing with 100 MB documents, the DOM is > definitely out; likewise, if you're working on a server that will > handle hundreds or thousands of requests per second or a > batch-processing system that will open tens of thousands of XML > documents quickly, then DOM is probably out. If neither of these > applies, then go ahead and use the DOM or another in-memory object > tree. > > If you do need to use SAX, then the first thing to understand is that > SAX does not actually include a writing component -- whatever Xerces > uses is outside of SAX proper. SAX2 does support *reading* DOCTYPE > information through its optional LexicalHandler interface: > > http://www.saxproject.org/apidoc/org/xml/sax/ext/LexicalHandler.html > > Finally, unless you do something special inside the DOCTYPE > declaration (like declaring entities or extending XHTML in some way), > you can just generate a boilerplate DOCTYPE when you write out your > document. > > > All the best, > > > David > -- Roberto Cosenza ICQ 12231605, MSN & Jabber robcos AT robcos.com Tel: +46-(0)70-4660928 Work Tel: +46-(0)8-55576860, Fax: +46-(0)8-55576861 |
From: David M. <dav...@gm...> - 2006-05-22 14:49:31
|
On 22/05/06, Roberto Cosenza <li...@ro...> wrote: > I'm writing an application that has to parse and MODIFY some XHTML. > The result of the operation has to be the modified XHTML. > I started using SAX (xerces) and, though seemed to work, I found out > that SAX does not keep my doctype (all parsed documents take the XHTML > Strict doctype). Besides, I was using the XHTMLSerializer class which is > deprecated. > Maybe I should use DOM for this job? The document is usually small. I'm > missing some point? There are two conditions for using an in-memory object tree like the DOM: 1. Your documents are relatively small. 2. Operations are relatively infrequent. For example, if you're dealing with 100 MB documents, the DOM is definitely out; likewise, if you're working on a server that will handle hundreds or thousands of requests per second or a batch-processing system that will open tens of thousands of XML documents quickly, then DOM is probably out. If neither of these applies, then go ahead and use the DOM or another in-memory object tree. If you do need to use SAX, then the first thing to understand is that SAX does not actually include a writing component -- whatever Xerces uses is outside of SAX proper. SAX2 does support *reading* DOCTYPE information through its optional LexicalHandler interface: http://www.saxproject.org/apidoc/org/xml/sax/ext/LexicalHandler.html Finally, unless you do something special inside the DOCTYPE declaration (like declaring entities or extending XHTML in some way), you can just generate a boilerplate DOCTYPE when you write out your document. All the best, David --=20 http://www.megginson.com/ |
From: Roberto C. <li...@ro...> - 2006-05-22 14:01:11
|
Hi. I'm writing an application that has to parse and MODIFY some XHTML. The result of the operation has to be the modified XHTML. I started using SAX (xerces) and, though seemed to work, I found out that SAX does not keep my doctype (all parsed documents take the XHTML Strict doctype). Besides, I was using the XHTMLSerializer class which is deprecated. Maybe I should use DOM for this job? The document is usually small. I'm missing some point? There is a lot of documentation out there, so much that I get confused and I would like some guidelines. Please help Roberto Cosenza Infoflex Connect AB, Sweden Tel: +46-(0)8-55576867, Fax: +46-(0)8-55576861 |
From: David M. <dav...@gm...> - 2006-03-12 12:20:24
|
On 06/03/06, Norman Walsh <nd...@nw...> wrote: > Has this discussion bottomed-out? Is a new SAX likely? And in what > time frame? It's clear that this would not be a 100%-backwards-compatible change, but I think it's worth a tiny amount of breakage to bring SAX in line with modern Java. I've just posted an entry to my weblog (with a link to the archive of this discussion) to solicit opinions more widely.=20 If we go ahead, I'd expect a minor SAX release this spring. All the best, David -- http://www.megginson.com/ |
From: Norman W. <nd...@nw...> - 2006-03-06 18:59:15
|
/ Norman Walsh <nd...@nw...> was heard to say: | What say you? Has this discussion bottomed-out? Is a new SAX likely? And in what time frame? Be seeing you, norm =2D-=20 Norman Walsh <nd...@nw...> | Everything should be made as simple as http://nwalsh.com/ | possible, but no simpler. |