You can subscribe to this list here.
2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(3) |
Dec
(18) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
(11) |
Feb
(2) |
Mar
(1) |
Apr
(4) |
May
(23) |
Jun
(17) |
Jul
(1) |
Aug
(17) |
Sep
(4) |
Oct
(14) |
Nov
(1) |
Dec
(2) |
2002 |
Jan
|
Feb
(2) |
Mar
(15) |
Apr
|
May
(19) |
Jun
(2) |
Jul
(8) |
Aug
(24) |
Sep
(21) |
Oct
(17) |
Nov
(11) |
Dec
(20) |
2003 |
Jan
(17) |
Feb
(19) |
Mar
(21) |
Apr
(13) |
May
(14) |
Jun
(7) |
Jul
(4) |
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
(3) |
2004 |
Jan
(5) |
Feb
(2) |
Mar
|
Apr
(3) |
May
(1) |
Jun
(5) |
Jul
(12) |
Aug
(3) |
Sep
(14) |
Oct
(1) |
Nov
(4) |
Dec
(3) |
2005 |
Jan
(1) |
Feb
(6) |
Mar
(3) |
Apr
|
May
(2) |
Jun
(3) |
Jul
|
Aug
(1) |
Sep
(1) |
Oct
(2) |
Nov
|
Dec
|
2006 |
Jan
(3) |
Feb
|
Mar
|
Apr
|
May
(3) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(2) |
Dec
|
2007 |
Jan
(1) |
Feb
(7) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2008 |
Jan
|
Feb
(2) |
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2009 |
Jan
|
Feb
|
Mar
|
Apr
(4) |
May
|
Jun
|
Jul
|
Aug
(3) |
Sep
(8) |
Oct
(1) |
Nov
|
Dec
|
From: Anthony G <ant...@gm...> - 2007-01-31 23:33:09
|
Hello TCLXML experts :) I have been searching for a few days online for tutorials on how to use TCLXML and I have a very basic task. I want to be able to take an xml file say like this <MY_STRUCTURE> <TAG2> tag2 data </TAG2> <TAG3> tag3 data </TAG3> <TAG4> <TAG5> tag5 data </TAG5> <TAG6> tag6 data </TAG6> </TAG4> </MY_STRUCTURE> and export the data above into a data structure, say a list or maybe even a hastable (TCL ARRAY) for example I would want to create an array MYSTRUCTURE with the index's based on the TAGS that fall under it example set MYSTRUCTURE(TAG2) "tag2 data" set MYSTRUCTURE(TAG3) "tag3 data" set MYSTRUCTURE(TAG4,TAG5) "tag5 data" set MYSTRUCTURE(TAG4,TAG6) "tag6 data" or something like this... where the index indicates level... what I have seen so far is that I can use the xml::parser to pull out tags and data, but none at the same time... set parser [::xml::parser -characterdatacommand cdata] <--- will pull out data between tags set parser2 [::xml::parser -elementendcommand cdata2] <--- will give me names of tags after END is hit... is there a way to combine the functionality of these so that I can see what data falls under which tags? Thank you for your help and have a great day -Anthony |
From: Steve B. <Ste...@ex...> - 2006-11-26 20:39:54
|
Cameron, et al, (I can't find the c.l.t. thread for this message; Cameron, would you please forward to the newsgroup?) The subcommand is "selectNode". This is a misnomer since one is usually selecting multiple nodes. Since it is a non-standard feature it is at the DOMImplementation level, rather than at the Document level. Its use is like so: set nodes [dom::selectNode $doc //via] selectNode returns a static node list, which in terms of TclDOM means a normal Tcl list. DOM Level 3 has an official method for using XPath with a DOM tree, but I haven't had time to implement that yet. Bear in mind that the DOM and XPath data models are not entirely compatible, so this is not trivial. This doesn't seem to be quite what the original message was asking. To get an element's attributes as a list you can use TclXML (ie. the SAX-like interface). This delivers the attributes of an element as a Tcl list, as desired. But which element? You have to write your own code to figure that out. This is where XPath is better. //@* would give you every attribute of every element in the document. //via/@* would give you every attribute of every "via" element in the document (not just of the document/root element). The variations are almost endless. However, you need a DOM tree to do this. HTHs, Steve Ball On 26/11/2006, at 5:16 AM, Cameron Laird wrote: > In article <jij...@la...>, I recommended: >> In article <116...@h5...>, >> comp.lang.tcl <phi...@gm...> wrote: >> . >> . >> . >>>> What exactly are you attempting to do? >>> >>> It's so easy. All I want to do is convert an XML file into a TCL >>> list, >>> that's it, just a TCL list: >>> >>> attr1 {val1} attr2 {val2} >> . >> . >> . >> Should we recommend a SAX or XQuery approach for this? >> A SAX accumulator used to be canonical for something >> this simple; I haven't worked with Rolf's XPath, but I >> suspect it affords a one-liner that satisfies the >> requirements. > > Oh, my; I *do* perceive deficiencies in TclXML documentation. > > I know that TclXML has had XPath since 2001. In particular, by 2004, > Steve wrote about selectNodes in 3.0 <URL: > http://talkaboutprogramming.com/group/comp.lang.tcl/messages/ > 253140.html >. > When I run > > puts [package require dom] > > set xml_image {<?xml version = "1.0" encoding = "UTF-8" ?> > <via id="1" trivia_id="255" question="How much wood would a > woodchuck chuck?" answer_id="1" answer="A lot" > expDate="116494926"></via> > } > > set doc [dom::parse $xml_image] > set nodes [$doc selectNodes //via] > > on a recent Mac OS, though, I see > > 3.1 > bad method "selectNodes": must be cget, configure, createElement, > createDocumentFragment, createTextNode, createComment, > createCDATASection, createProcessingInstruction, > createAttribute, > createEntity, createEntityReference, createDocTypeDecl, > importNode, > createElementNS, createAttributeNS, getElementsByTagNameNS, > getElementsById, createEvent, getElementsByTagName, dtd, or > schema > > So: what's it take to get TclXML to do XPath? > |
From: Cameron L. <cl...@la...> - 2006-11-25 18:13:18
|
In article <jij...@la...>, I recommended: >In article <116...@h5...>, >comp.lang.tcl <phi...@gm...> wrote: > . > . > . >>> What exactly are you attempting to do? >> >>It's so easy. All I want to do is convert an XML file into a TCL list, >>that's it, just a TCL list: >> >>attr1 {val1} attr2 {val2} > . > . > . >Should we recommend a SAX or XQuery approach for this? >A SAX accumulator used to be canonical for something >this simple; I haven't worked with Rolf's XPath, but I >suspect it affords a one-liner that satisfies the >requirements. Oh, my; I *do* perceive deficiencies in TclXML documentation. I know that TclXML has had XPath since 2001. In particular, by 2004, Steve wrote about selectNodes in 3.0 <URL: http://talkaboutprogramming.com/group/comp.lang.tcl/messages/253140.html >. When I run puts [package require dom] set xml_image {<?xml version = "1.0" encoding = "UTF-8" ?> <via id="1" trivia_id="255" question="How much wood would a woodchuck chuck?" answer_id="1" answer="A lot" expDate="116494926"></via> } set doc [dom::parse $xml_image] set nodes [$doc selectNodes //via] on a recent Mac OS, though, I see 3.1 bad method "selectNodes": must be cget, configure, createElement, createDocumentFragment, createTextNode, createComment, createCDATASection, createProcessingInstruction, createAttribute, createEntity, createEntityReference, createDocTypeDecl, importNode, createElementNS, createAttributeNS, getElementsByTagNameNS, getElementsById, createEvent, getElementsByTagName, dtd, or schema So: what's it take to get TclXML to do XPath? |
From: Steve B. <Ste...@ex...> - 2006-05-24 23:39:53
|
Hi Jennifer, You wrote: > I am new to the TCLXML package and I am not sure if I can use > this to also validate an xml document. I am going be receiving an XML > documents that I will need to validate against a schema and once it is > known to be valid I can parse it. I did see there is a validate > command > that I can use but the explanation is a bit vague and I did not see > any > where I could enter the name of the schema file it would use. > Could you > shed some light on this for me. If I can not use the TCLXML > package to > validate would I use the TCLDOM package for that? Hmmm... just checked the TclDOM manual and it looks like I haven't documented the validation interface properly(or at all ;-( ). Please submit a documentation bug report on SourceForge. Firstly, validation is only available when using the libxml2 implementation. The pure-Tcl implementation of TclXML does not have any kind of validation available. Secondly, validation must be performed either during parsing of the XML document or after the document has been parsed (aka "posteriori validation"). There is no concept of validating the document and subsequently parsing it. TclXML/libxml2 and TclDOM/libxml2 both offer validation services. With TclXML, validation may be performed during parsing of the document. With TclDOM, validation must be performed after the document has been parsed (ie. "posteriori" or "after-the-fact"). When performing DTD validation, the instance XML document declares the location of the DTD in its Document Type Declaration. TclXML is able to read the declaration when parsing the document and can then go and fetch the (external) DTD (DTDs can also be internal; ie. embedded in the instance XML document). With TclDOM, you can specify the DTD subset separately. When performing XSD validation, the schema document is usually specified separately from the instance XML document. RELAX NG validation always specifies the schema document separately. In these cases the schema document is itself an XML document. Your script must first load and parse the schema XML document, and then use it to validate the instance XML document. For an example of how to perform validation of a document, look at the tkxmllint application. The script for this tool is in the examples directory of the TclDOM distribution. In the meantime, here's a quick example: set doc [dom::parse $xml] ;# this is the instance XML document if {[catch {$doc dtd validate} msg]} { puts stderr "document is not valid due to \"$msg\"" } else { puts stderr "document is valid" } set schemadoc [dom::parse $schemaxml] ;# this is the schema XML document if {[catch {$schemadoc schema compile} msg]} { puts stderr "unable to compile schema doc due to \"$msg\"" exit 1 } if {[catch {$schemadoc schema validate $doc} msg]} { puts stderr "document is not schema-valid due to \"$msg\"" } else { puts stderr "document is schema-valid" } Hope that helps, Steve Ball --- Steve Ball | XSLT Standard Library | Training & Seminars Explain | Web Tcl Complete | XML XSL Schemas http://www.explain.com.au/ | TclXML TclDOM | Tcl, Web Development Ste...@ex... +--------------------------- +--------------------- Ph. +61 2 6242 4099 | Mobile (0413) 594 462 | Fax +61 2 6242 4099 |
From: Irons, J. M, R. <jm...@at...> - 2006-05-24 16:18:11
|
=20 I am new to the TCLXML package and I am not sure if I can use this to also validate an xml document. I am going be receiving an XML documents that I will need to validate against a schema and once it is known to be valid I can parse it. I did see there is a validate command that I can use but the explanation is a bit vague and I did not see any where I could enter the name of the schema file it would use. Could you shed some light on this for me. If I can not use the TCLXML package to validate would I use the TCLDOM package for that? Any help would be appreciated. Thank you=20 Jennifer jm...@at...=20 |
From: Kevin P. <Kev...@Ap...> - 2006-05-09 13:39:53
|
I have found a bug in TclDOM 3.1 under RHEL WS 4 Update 3 and ActiveTcl 8.4.12.0 related to node duplication and memory allocation/deallocation. The following script demonstrates the error: package require dom set fid [open $argv r] set doc1 [dom::parse [read $fid]] close $fid dom::trim $doc1 puts [dom::serialize $doc1] set root1 [dom::document cget $doc1 -documentElement] set node [dom::selectNode $root1 child::analysis] set doc2 [dom::create] set root2 [dom::document createElement $doc2 maxmin] dom::element setAttribute $root2 analyses 1 dom::element setAttribute $root2 version [dom::element getAttribute $root1 version] dom::node appendChild $root2 $node puts [dom::serialize $doc2] dom::destroy $doc1 dom::destroy $doc2 exit Use the following as a data file: <?xml version="1.0" encoding="utf-8"?> <maxmin analyses="1" version="1.0"> <analysis number="1" items="8" variations="1" ID="NL"> <title>Interface Forces</title> <subtitle>Nominal Landing Manifest Configuration</subtitle> <label>STS-121 VLA-1 IV&V</label> </analysis> </maxmin> And execute the example as follows: $ tclsh8.4 test.tcl test.xml <?xml version="1.0" encoding="utf-8"?> <maxmin analyses="1" version="1.0"><analysis number="1" items="8" variations="1" ID="NL"><title>Interface Forces</title><subtitle>Nominal Landing Manifest Configuration</subtitle><label>STS-121 VLA-1 IV&V</label></analysis></maxmin> <?xml version="1.0" encoding="utf-8"?> <maxmin analyses="1" version="1.0"><analysis number="1" items="8" variations="1" ID="NL"><title>Interface Forces</title><subtitle>Nominal Landing Manifest Configuration</subtitle><label>STS-121 VLA-1 IV&V</label></analysis></maxmin> *** glibc detected *** free(): invalid pointer: 0x080ca82c *** Aborted If you set the environment variable MALLOC_CHECK_=1, you will see that many attempts are made to free invalid pointers. Experimentation has isolated the error to appendChild command. As you can see the "new" document is an exact copy of the original document as it should be. I suspect that the when the node is removed from the original parent, the node's document, parent, children, or sibling references are not being updated properly. Kevin -- Kevin Partin (281) 286-8959 mailto:Kev...@Ap... |
From: Steve B. <Ste...@ex...> - 2006-01-19 20:38:16
|
Ben, I did some work on the domtree example last year to make it work with tktreectrl, see examples/domtree-treectrl.tcl (display of the document tree works, but I haven't hooked up the DOM events yet). Although I use the binary installation of TclXML (ie. w/- libxml2), I don't recall there being anything in there that wouldn't work with the Tcl implementation. With some limitations, the tkxmllint application should work with TclDOM/tcl. It won't be able to perform DTD/XSD/RNG validation, but the basic read-file/parse/serialise operation should work. Also, there's always the test suite. Tests are marked as whether they are specific to a particular parser, but most of them apply to all implementations. Now, both TclXML/TclDOM packages are meant to be API compatible so this shouldn't be an issue (modulo unsupported features, like validation, XPath, etc). If there are examples in the distribution that don't work with v3.1 then please report that as a bug on SF. Finally, if you need help with TclXML and/or TclDOM then please either write to the list or to me directly and let us know what you are trying to do. Anyone on the list, or myself in particular, can then respond. Anyone should feel free to add the responses to a Wiki page. HTHs, Steve Ball --- Steve Ball | XSLT Standard Library | Training & Seminars Explain | Web Tcl Complete | XML XSL Schemas http://www.explain.com.au/ | TclXML TclDOM | Tcl, Web Development Ste...@ex... +--------------------------- +--------------------- Ph. +61 2 6242 4099 | Mobile (0413) 594 462 | Fax +61 2 6242 4099 On 20/01/2006, at 4:04 AM, Benjamin Allan wrote: > > > I'm desperately trying to find a working detailed example of > tcldom usage for the current tclxml3.1 based distribution. > The demos I find provided in the installation (domtree etc) > all seem to require either one of the binary xml parsers > or v 2.5 of the xml or dom packages. Does anyone have some > code to share based on tclxml3.1 and the pure tcl parser? > |
From: Benjamin A. <ba...@ca...> - 2006-01-19 17:04:14
|
I'm desperately trying to find a working detailed example of tcldom usage for the current tclxml3.1 based distribution. The demos I find provided in the installation (domtree etc) all seem to require either one of the binary xml parsers or v 2.5 of the xml or dom packages. Does anyone have some code to share based on tclxml3.1 and the pure tcl parser? thanks, Ben |
From: <ba...@ca...> - 2006-01-18 19:53:07
|
I'm desperately trying to find a working detailed example of tcldom usage for the current tclxml3.1 based distribution. The demos I find provided in the installation (domtree etc) all seem to require either one of the binary xml parsers or v 2.5 of the xml or dom packages. Does anyone have some code to share based on tclxml3.1 and the pure tcl parser? thanks, Ben |
From: Helmut H. <he...@ra...> - 2005-10-17 04:08:17
|
so, does it actually have a Tcl API? That would be useful (to know). hh Jimmy zhang wrote: > I am pleased to announce that both Java and C version 1.0 of > VTD-XML -- an open-source, high-performance and non-extractive > XML processing API -- is freely available on sourceforge.net. > For source code, documentation, detailed description of API > and code examples, please visit ... |
From: Jimmy z. <cra...@co...> - 2005-10-16 22:43:38
|
I am pleased to announce that both Java and C version 1.0 of VTD-XML -- an open-source, high-performance and non-extractive XML processing API -- is freely available on sourceforge.net. For source code, documentation, detailed description of API and code examples, please visit http://vtd-xml.sourceforge.net New in VTD-XML 1.0 is the integrated support of XPath that also features a easy-to-use interface that further enhances VTD-XML's inherent benefits, such as CPU/memory efficiency, random access, and incremental update. A demo of the XPath capability is available at http://vtd-xml.sourceforge.net/demo.html For further reading, please refer to the following articles about VTD-XML * Process SOAP with VTD-XML http://xml.sys-con.com/read/48764.htm * Better, faster XML processing with VTD-XML http://www.devx.com/xml/Article/22219?trk=DXRSS_XML * XML on a chip http://www.xml.com/pub/a/2005/03/09/chip.html * Improve XML processing with VTD-XML http://www.intel.com/cd/ids/developer/asmo-na/eng/dc/xeon/multicore/211657.htm |
From: Ian B. <id...@oe...> - 2005-09-20 14:49:43
|
Hi, I'm trying to get the hang of [xml::parser -final 0] for incremental parsing, with little luck :-(. Has anyone used this with the pure Tcl parser (3.0)? I'm getting parse errors with incremental, but no errors without. Incremental: ==== package require xml set parser [xml::parser -final 0 -errorcommand xerror] proc xerror args { puts "xerror: $args" } $parser parse {<one x="5">hello world</one>} $parser configure -final 1 $parser parse \n ==== gives: xerror: unexpectedtext {unexpected text " x="5"" in document prolog around line 0} while setting "-final 1" instead and ==== $parser parse {<one x="5">hello world</one> } ==== works as expected. Thanks, Ian Braithwaite |
From: Rosalyn H. <r.s...@re...> - 2005-08-25 08:38:01
|
Hi, I'm a newbie to xml and am looking for some advice on validating the xml produced. At the moment I'm using xmlgen to write out the XML from my tcl application. Whilst I understand that xmlgen is guaranteed to produce well-formed XML I need to be sure that the XML is valid before it is saved. Is there a way in tcl to validate the XML against the XSD? I'm also wondering whether I would be better off using tclDOM? The nesting of the XML is quite deep and the amount of data pretty big. Thanks for you help. Rosalyn. -- ------------------------------------------------------------------------ Rosalyn Hatcher CGAM, Dept. of Meteorology, University of Reading, Earley Gate, Reading. RG6 6BB Email: r.s...@re... Tel: +44 (0) 118 378 7841 |
From: Byron W. <byr...@sb...> - 2005-06-23 18:07:11
|
> I have a remote SOAP call that returns a moderately complex record. I have > the XSD for it, and it's an array of a complex-type. When I make the SOAP > call, how can I get this array of complex-types in a tcl variable. TclSoap converts the output of a remote call into nested list and key value pairs. So, the output of your faceplates is an array of key-value pairs. set facePlateResponse [remote_faceplate_call $params] foreach item $facePlateResponse { array set facePlate $item puts "Name: $facePlate(name)" puts "Type: $facePlate(type) " # you get the idea } If you are trying to create a service that will return the faceplate xml you specified, you should take a look at my SOAP-wsdl package. It makes creating web services in tclsoap much easier. http://www.geocities.com/blackboy9692002/tclsoap/ -Byron Whitlock ----- Original Message ----- From: "Markus Schmid" <markus.schmid@-nospam-syte.ch> To: <byr...@sb...> Sent: Wednesday, June 22, 2005 11:17 PM Subject: Tcl SOAP > Hello Byron > > I have already tried to contact Pat Thoyts but without success. > > I'm trying to get tclSOAP to work in our product (a proces control system > under Linux), and I'm a bit confused about how it returns values of > complex-types. > > I have a remote SOAP call that returns a moderately complex record. I have > the XSD for it, and it's an array of a complex-type. When I make the SOAP > call, how can I get this array of complex-types in a tcl variable. > > Here's an example, the returned *XML* is e.g.: > > <?xml version="1.0"?> > <faceplateFields> > <item> > <name>HI</name> > <type>Float</type> > <changeable>1</changeable> > <available>1</available> > <value>0.000000</value> > </item> > <item> > <name>LO</name> > <type>Float</type> > <changeable>1</changeable> > <available>1</available> > <value>0.000000</value> > </item> > </faceplateFields> > > Here's a snippet of XSD: > > ... > <xsd:complexType name="FaceplateField"> > <xsd:sequence> > <xsd:element name="name" type="xsd:string" minOccurs="0" \ > maxOccurs="1" nillable="true"/> > <xsd:element name="type" type="xsd:string" minOccurs="0" \ > maxOccurs="1" nillable="true"/> > <xsd:element name="changeable" type="xsd:unsignedByte" \ > minOccurs="1" maxOccurs="1"/> > <xsd:element name="available" type="xsd:unsignedByte" \ > minOccurs="1" maxOccurs="1"/> > <xsd:element name="value" type="xsd:string" minOccurs="0" \ > maxOccurs="1" nillable="true"/> > </xsd:sequence> > </xsd:complexType> > <xsd:complexType name="FaceplateFieldList"> > <xsd:sequence> > <xsd:element name="item" type="FaceplateField" minOccurs="0" \ > maxOccurs="unbounded" nillable="true"/> > </xsd:sequence> > </xsd:complexType> > ... > > Do you have an idea, how to get this result (of a remote call) in a > structured form? Is there a 'castor-like' framework (Java) in tcl? > > Thanks a lot in advance > Markus > -- > Markus Schmid | E-mail ma...@sy... > Syte GmbH - Industrial Software Engineering | Tel. +41 61 717 99 24 > Seewenweg 5 | Fax +41 61 717 99 20 > CH-4153 Reinach - Switzerland | http://www.syte.ch/ > > > -- > No virus found in this incoming message. > Checked by AVG Anti-Virus. > Version: 7.0.323 / Virus Database: 267.7.11/26 - Release Date: 6/22/2005 > > |
From: Erik P. <sh...@et...> - 2005-06-23 17:05:42
|
Hey dudes, I'm trying to work around my combo distro problems by compiling from source. I'm using the 3.0 distributions for windows from the tcl xml homepage. I have compile problems with windows binaries for zlib from the recommended download source, http://xmlsoft.org/sources/win32/. Specifically, the windows makefile is trying to link against zlib_a.lib which doesn't exist in the distributions of zlib at that place. There's 2 distros, zlib-1.2.2.win32.zip and the earlier point release zlib-1.2.1.win32.zip. The readme hints at the author's working version. Do I explicitly need zlib-1.1.4.win32? Would I be just as well off trying to link against zlib.dll instead of the requested zlib_a.dll? When I do this, I get the following link errors; 'LINK : warning LNK4049: locally defined symbol "_xmlFree" imported libxml2_a.lib(xpath.obj) : error LNK2001: unresolved external symbol __ftol2 libxml2_a.lib(xmlschemastypes.obj) : error LNK2001: unresolved external symbol _ _ftol2 libxml2_a.lib(xpointer.obj) : error LNK2001: unresolved external symbol __ftol2 .\Release\tcllibxml230.dll : fatal error LNK1120: 1 unresolved externals NMAKE : fatal error U1077: 'link' : return code '0x460' Stop.' I think before I move on to compiling DOM, I need to resolve this. Any advice appreciated. -e -- Erik Purins (415) 701-7103 sh...@et... |
From: Erik P. <sh...@et...> - 2005-06-23 16:47:31
|
Hey tclxml dudes, New to tcl and to tclxml, so please bear with me. Need help and this seems like the right place. I'm getting a missing lib assert when I run the combo distribution. I think I need to upgrade my package from 2.6 since I'm getting a 'not yet implemented' message when I do: 'set comments [::dom::document getElementsByTagName $a_DOM_tree comment];' (which, arguably may not get me what I want anyways). Using a clean ActiveTcl8.4.10.0.147113-win32-ix86 as my base TCL, I have tried to install with the combo distribution for windows. The web page hint for this reads 'remove the version 2.6 TclXML, TclDOM and TclXSLT packages first before installing v3.0 packages.' I think moving all the folders for this and any dlls in TCLROOT\lib out of my tcl folder is the right way to do this. After unzipping the distro, the folder layout looks like my TCLROOT\ layout, so I assume I am supposed to drop it directly into there. After doing this and running my previously working script, I now get the following assert: 'couldn't load library "C:/bin/Tcl84/lib/Tcldom_libxml23.0/Tcldom_libxml230.dll": this library or a dependent library could not be found in library path while executing "load C:/bin/Tcl84/lib/Tcldom_libxml23.0/Tcldom_libxml230.dll Tcldom_libxml2" ("package ifneeded" script) invoked from within "package require dom::libxml2 3.0" ("package ifneeded" script) invoked from within "package require dom" (file "xml_example_1mod2.tcl" line 1)' Rereading the install hint shows me that I need msvcr71.dll somewhere. I have lots of copies, so I move one msvcr71.dll to TCLROOT\, one to TCLROOT\lib, and one right next to the offending DLL. I still get this error about missing libs. How can I fix this? In an attempt to work around it, I'm trying to compile and install. I'll send a second mail about my efforts there. If this is the right way to install the combo distribution, I'd be cool with writing up explicit instructions for this that can go in that distribution. -e -- Erik Purins (415) 701-7103 sh...@et... |
From: Steve B. <Ste...@ex...> - 2005-05-14 22:49:51
|
Dear Simon, This problem was reported as a bug on SF and has been fixed. The fix has not yet been committed to the CVS repository, but will be soon along with other changes for the v3.1 release (coming RSN). The problem was in the libxml2 wrapper code. This code now generates a call to the endelement callback for empty elements. However, due to the current TclXML C API it cannot signal the empty element (ie. -empty true) in the args. For the purpose of making the v3.1 release I won't change the C API, but will get that into a future v3.2 release. HTHs, Steve Ball On 14/05/2005, at 8:22 PM, Simon Wright wrote: > I'm a newcomer to the list, using TclTkAquaBI-8.4.9.0 (MacOS X), and I > seem to have the same problem. > > I'm not sure what David's script was intended to show since it doesn't > have the problematic structure! > > This script > --------------------------------- > package require xml > > proc elemStartCmd {elem_type attr_list args} { > puts [list >>>>>>>>>> open $elem_type ($attr_list $args)] > } > > proc elemEndCmd {elem_type args} { > puts [list >>>>>>>>>> close $elem_type ($args)] > } > > proc descriptiveData {cdata} { > puts [list cdata: $cdata] > } > > set theParser [::xml::parser \ > -elementendcommand elemEndCmd \ > -elementstartcommand elemStartCmd \ > -characterdatacommand descriptiveData \ > -reportempty 1 ] > > set xmldata "" > append xmldata "<toplevel> Document root\n" > append xmldata " <abstract></abstract>/n" > append xmldata " <abstract/>/n" > append xmldata "</toplevel>\n" > > $theParser parse $xmldata > --------------------------------- > outputs this > --------------------------------- > grendel:~/cf simon$ tclsh endcommand.tcl > >>>>>>>>>> open toplevel ( {-namespace {})} > cdata: { Document root > } > >>>>>>>>>> open abstract ( {-namespace {})} > >>>>>>>>>> close abstract () > cdata: {/n } > >>>>>>>>>> open abstract ( {-namespace {})} > cdata: /n > >>>>>>>>>> close toplevel () > --------------------------------- > so there are three things: > (a) the elementstartcommand doesn't see {-empty true} in args > (b) the elementendcommand doesn't see {-empty true} in args > (c) the elementendcommand doesn't get called at all for the empty > element. > > I didn't spot -reportempty at first, but it made no difference. > > Original message: > > Steve Ball <Steve.Ball@zv...> writes: > > > First I"ve heard of this... TclXML v3.0 is a major version change, > > but the API has not changed *that* much. > > > TclXML v3.X passes all of its regression tests. including the > > parsing API and parsing empty element syntax. I will investigate > > further, back a small sample XML source document and Tcl script > > would be helpful. > > Here"s a script that Massimo, the guy who noticed this, sent me. > > -- > David N. Welton > Personal: http://www.dedasys.com/davidw/ > Apache Tcl: http://tcl.apache.org/ > Free Software: http://www.dedasys.com/freesoftware/ > Linux Incompatibility List: http://www.leenooks.com/ > > ---- > package require xml > > proc elemStartCmd {elem_type attr_list args} { > puts [list >>>>>>>>>> open $elem_type ($attr_list $args)] > } > > proc elemEndCmd {elem_type args} { > puts [list >>>>>>>>>> close $elem_type ($args)] > } > > proc descriptiveData {cdata} { > puts [list cdata: $cdata] > } > > set theParser [::xml::parser \ > -elementendcommand elemEndCmd \ > -elementstartcommand elemStartCmd \ > -characterdatacommand descriptiveData ] > > set xmldata "" > append xmldata "<toplevel> Document root\n" > append xmldata " <livello1> Tag for generic element </livello1>\n" > append xmldata " <livello1 attr1_1=\"v1\" attr1_2=\"v2\"> Nuovo > Elemento contenente altri > Elementi\n" > append xmldata " <livello2 attr2_1=\"v1\" attr2_2=\"v2\"/>\n" > append xmldata " <livello2 attr2_1=\"v3\" attr2_2=\"v4\"/>\n" > append xmldata " <livello2> Tag chiuso in modo > \"canonico\" </livello2>\n" > append xmldata " </livello1>\n" > append xmldata "</toplevel>\n" > > $theParser parse $xmldata > > > > ------------------------------------------------------- > This SF.Net email is sponsored by Oracle Space Sweepstakes > Want to be the first software developer in space? > Enter now for the Oracle Space Sweepstakes! > http://ads.osdn.com/?ad_id=7393&alloc_id=16281&op=click > _______________________________________________ > Tclxml-users mailing list > Tcl...@li... > https://lists.sourceforge.net/lists/listinfo/tclxml-users > > --- Steve Ball | XSLT Standard Library | Training & Seminars Explain | Web Tcl Complete | XML XSL Schemas http://www.explain.com.au/ | TclXML TclDOM | Tcl, Web Development Ste...@ex... +---------------------------+--------------------- Ph. +61 2 6242 4099 | Mobile (0413) 594 462 | Fax +61 2 6242 4099 |
From: Simon W. <si...@pu...> - 2005-05-14 10:22:56
|
I'm a newcomer to the list, using TclTkAquaBI-8.4.9.0 (MacOS X), and I seem to have the same problem. I'm not sure what David's script was intended to show since it doesn't have the problematic structure! This script --------------------------------- package require xml proc elemStartCmd {elem_type attr_list args} { puts [list >>>>>>>>>> open $elem_type ($attr_list $args)] } proc elemEndCmd {elem_type args} { puts [list >>>>>>>>>> close $elem_type ($args)] } proc descriptiveData {cdata} { puts [list cdata: $cdata] } set theParser [::xml::parser \ -elementendcommand elemEndCmd \ -elementstartcommand elemStartCmd \ -characterdatacommand descriptiveData \ -reportempty 1 ] set xmldata "" append xmldata "<toplevel> Document root\n" append xmldata " <abstract></abstract>/n" append xmldata " <abstract/>/n" append xmldata "</toplevel>\n" $theParser parse $xmldata --------------------------------- outputs this --------------------------------- grendel:~/cf simon$ tclsh endcommand.tcl >>>>>>>>>> open toplevel ( {-namespace {})} cdata: { Document root } >>>>>>>>>> open abstract ( {-namespace {})} >>>>>>>>>> close abstract () cdata: {/n } >>>>>>>>>> open abstract ( {-namespace {})} cdata: /n >>>>>>>>>> close toplevel () --------------------------------- so there are three things: (a) the elementstartcommand doesn't see {-empty true} in args (b) the elementendcommand doesn't see {-empty true} in args (c) the elementendcommand doesn't get called at all for the empty element. I didn't spot -reportempty at first, but it made no difference. Original message: Steve Ball <Steve.Ball@zv...> writes: > First I"ve heard of this... TclXML v3.0 is a major version change, > but the API has not changed *that* much. > TclXML v3.X passes all of its regression tests. including the > parsing API and parsing empty element syntax. I will investigate > further, back a small sample XML source document and Tcl script > would be helpful. Here"s a script that Massimo, the guy who noticed this, sent me. -- David N. Welton Personal: http://www.dedasys.com/davidw/ Apache Tcl: http://tcl.apache.org/ Free Software: http://www.dedasys.com/freesoftware/ Linux Incompatibility List: http://www.leenooks.com/ ---- package require xml proc elemStartCmd {elem_type attr_list args} { puts [list >>>>>>>>>> open $elem_type ($attr_list $args)] } proc elemEndCmd {elem_type args} { puts [list >>>>>>>>>> close $elem_type ($args)] } proc descriptiveData {cdata} { puts [list cdata: $cdata] } set theParser [::xml::parser \ -elementendcommand elemEndCmd \ -elementstartcommand elemStartCmd \ -characterdatacommand descriptiveData ] set xmldata "" append xmldata "<toplevel> Document root\n" append xmldata " <livello1> Tag for generic element </livello1>\n" append xmldata " <livello1 attr1_1=\"v1\" attr1_2=\"v2\"> Nuovo Elemento contenente altri Elementi\n" append xmldata " <livello2 attr2_1=\"v1\" attr2_2=\"v2\"/>\n" append xmldata " <livello2 attr2_1=\"v3\" attr2_2=\"v4\"/>\n" append xmldata " <livello2> Tag chiuso in modo \"canonico\" </livello2>\n" append xmldata " </livello1>\n" append xmldata "</toplevel>\n" $theParser parse $xmldata |
From: Steve B. <Ste...@zv...> - 2005-03-03 20:14:34
|
The README for TclXML and TclDOM v3.0 details how to build the packages on Windows. I use VS.NET, and have included a Makefile.vc that performs the build from a command prompt, rather than using the VS IDE. This works with the libxml2 Windows binary distribution without modification. Once you give the parameters correctly, specifying where the various components are located, it's all pretty automatic. If anyone has a better build system then please let me know! I'm only too happy to make improvements for the 3.1 release. Cheers, Steve Ball On 01/03/2005, at 10:17 AM, Byron Whitlock wrote: > >> Thanks for the info byron. Can you provide some more information > as to > >> how u got 2.6 to compile and work. > >> Thanks. > > There surely is an easier way, but here is how I did it: > If you only need windows, you should try this with the 3.0 only > version.... > > 1) I assume you can already build a tcl executable in the VS IDE. You > should > not be compiling from a makefile. > > 2) Unzip the 2.6 libraries somewhere (tcxml/tcldom) > Under tclxml, there should be a win directory. Add the expatlib.dsw > to your project > > 3) Add tclxml.dsp and tclxmlStubs.dsp > > 4) Play around with the settings until you get tclxml to compile okay. > > 5) in the tcldom/src directory, unzip the 3.0 tcldom/src files (yes > its weird, but it worked) > create a new project called tcldom. You should be able to compile > tcldompro as a static lib. > > 6) Make sure your entry point is defined should look something like: > { > extern Tcl_AppInitProc Tclxml_Init; > > if (Tclxml_Init(interp) == TCL_ERROR) { > return TCL_ERROR; > } > Tcl_StaticPackage(interp, "tclxml_static", Tclxml_Init, NULL); > } > > Here are my project files with full source. This will not just "work" > I have hard coded paths etc in there. > Let me know if you need any more info > http://www.geocities.com/blackboy96 92002/tcldom_static/ > No virus found in this outgoing message. > Checked by AVG Anti-Virus. > Version: 7.0.300 / Virus Database: 266.5.2 - Release Date: 2/28/2005 > --- Steve Ball | XSLT Standard Library | Training & Seminars Zveno Pty Ltd | Web Tcl Complete | XML XSL Schemas http://www.zveno.com/ | TclXML TclDOM | Tcl, Web Development Ste...@zv... +---------------------------+--------------------- Ph. +61 2 6242 4099 | Mobile (0413) 594 462 | Fax +61 2 6242 4099 |
From: Steve B. <Ste...@zv...> - 2005-03-03 20:11:12
|
An obvious question: have you downloaded the libxml2 Windows binary distribution and copied the DLLs into the appropriate location? Make sure you have iconv.dll, libxml2.dll and zlib1.dll; these will need to be in a directory where they can be loaded, most likely the same directory as the wish executable. HTHs, Steve Ball On 01/03/2005, at 6:00 AM, Koolrans P wrote: > Hello Everybody, > > I am trying to compile tcl and use tcldom with it. I do not want to > use ActiveState tcl as I have to test my stuff on basic tcl. > > I am trying to use the pre-combiled binary combo and getting this > error when i try to load the tcldom package. > > couldn't load library > "C:/tcl845/lib/Tcldom_libxml23.0/Tcldom_libxml230.dll": th > is library or a dependent library could not be found in library path > > The following are the steps which I have followed: > > 1. Combiled the tcl source 8.4.5. I used visual studio 6.0 . It does > not contain any other libraries. > 2. I got the pre compiled binary combo from tclxml site and put it in > the lib folder of my tcl 8.4.5. I also got the missing dll from the > zip "tclxmllint.zip" and put it in the lib folder. > 3. I downloaded the latest tcllib and put it in the lib folder. > 4. On the tcl shell, I write the command "package require dom" and I > get the following error. > > Am I missing something here ? > > The value of auto_path is > > "C:/tcl845/lib/tcl8.4 C:/tcl845/lib C:/tcl845/lib/tcllib1.6.1" > > If there is any more information required, let me know and I shall be > glad to send it. > > Thanks, > > Regards, > > Koolrans > > > ------------------------------------------------------- > SF email is sponsored by - The IT Product Guide > Read honest & candid reviews on hundreds of IT Products from real > users. > Discover which products truly live up to the hype. Start reading now. > http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click > _______________________________________________ > Tclxml-users mailing list > Tcl...@li... > https://lists.sourceforge.net/lists/listinfo/tclxml-users > > --- Steve Ball | XSLT Standard Library | Training & Seminars Zveno Pty Ltd | Web Tcl Complete | XML XSL Schemas http://www.zveno.com/ | TclXML TclDOM | Tcl, Web Development Ste...@zv... +---------------------------+--------------------- Ph. +61 2 6242 4099 | Mobile (0413) 594 462 | Fax +61 2 6242 4099 |
From: Koolrans P <koo...@gm...> - 2005-03-01 00:55:16
|
Hi Byron, Thanks very much for this information. I will start working on it right away. In the meanwhile, can you do a favour. Is it possible for you to give me your compiled versions of tcldom and tclxml. I appreciate all you help and information. Thanks, Regards, Koolrans On Mon, 28 Feb 2005 15:17:20 -0800, Byron Whitlock <by...@ly...> wrote: > >> Thanks for the info byron. Can you provide some more information as to > >> how u got 2.6 to compile and work. > >> Thanks. > > There surely is an easier way, but here is how I did it: > If you only need windows, you should try this with the 3.0 only version.... > > 1) I assume you can already build a tcl executable in the VS IDE. You > should > not be compiling from a makefile. > > 2) Unzip the 2.6 libraries somewhere (tcxml/tcldom) > Under tclxml, there should be a win directory. Add the expatlib.dsw to your > project > > 3) Add tclxml.dsp and tclxmlStubs.dsp > > 4) Play around with the settings until you get tclxml to compile okay. > > 5) in the tcldom/src directory, unzip the 3.0 tcldom/src files (yes its > weird, but it worked) > create a new project called tcldom. You should be able to compile tcldompro > as a static lib. > > 6) Make sure your entry point is defined should look something like: > { > extern Tcl_AppInitProc Tclxml_Init; > > if (Tclxml_Init(interp) == TCL_ERROR) { > return TCL_ERROR; > } > Tcl_StaticPackage(interp, "tclxml_static", Tclxml_Init, NULL); > } > > Here are my project files with full source. This will not just "work" I > have hard coded paths etc in there. > Let me know if you need any more info > > > > > > > > > > > > > http://www.geocities.com/blackboy96 92002/tcldom_static/ > No virus found in this outgoing message. > Checked by AVG Anti-Virus. > Version: 7.0.300 / Virus Database: 266.5.2 - Release Date: 2/28/2005 > > > |
From: Byron W. <by...@ly...> - 2005-02-28 23:17:35
|
No virus found in this outgoing message. Checked by AVG Anti-Virus. Version: 7.0.300 / Virus Database: 266.5.2 - Release Date: 2/28/2005 |
From: Koolrans P <koo...@gm...> - 2005-02-28 21:22:34
|
Thanks for the info byron. Can you provide some more information as to how u got 2.6 to compile and work. Thanks. Regards, Koolrans On Mon, 28 Feb 2005 11:21:56 -0800, Byron Whitlock <by...@ly...> wrote: > >> couldn't load library > >> "C:/tcl845/lib/Tcldom_libxml23.0/Tcldom_libxml230.dll": th > >> is library or a dependent library could not be found in library path > > I've had the same problem, I've never been able to get the 3.x combo > package to work. Either an immediate application crash or the above error > always stopped me. > > You might need msvcrt71.dll. It comes with VS.NET, That was suggested to > me, although it > didn't seem to fix anything. > > It took some doing, but I ended up statically linking all the required > libraries using the 2.6 version. I used VS.Net & can build all packages > (dom::libxml2 dom::c) on win/linux/solaris. On the 2.6 branch, dom::c is > more memory efficient (smaller leaks) of the 2 parsers IMHO. > > > > ------------------------------------------------------- SF email is > sponsored by - The IT Product Guide Read honest & candid reviews on hundreds > of IT Products from real users. Discover which products truly live up to the > hype. Start reading now. > http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click > _______________________________________________ Tclxml-users mailing list > Tcl...@li... > https://lists.sourceforge.net/lists/listinfo/tclxml-users |
From: Byron W. <by...@ly...> - 2005-02-28 19:22:04
|
<html> <head> <!-- Written by GoldMine : Version 5.50.10424 --> <title></title> </head> <BODY text="#000000" link="#0000FF"> <font style="font-family:'Arial';font-size:10pt;"> >> couldn't load library<br> >> "C:/tcl845/lib/Tcldom_libxml23.0/Tcldom_libxml230.dll": th<br> >> is library or a dependent library could not be found in library path<p> I've had the same problem, I've never been able to get the 3.x combo package to work. Either an immediate application crash or the above error always stopped me.<p> You might need msvcrt71.dll. It comes with VS.NET, That was suggested to me, although it <br> didn't seem to fix anything.<p> It took some doing, but I ended up statically linking all the required libraries using the 2.6 version. I used VS.Net & can build all packages (dom::libxml2 dom::c) on win/linux/solaris. On the 2.6 branch, dom::c is more memory efficient (smaller leaks) of the 2 parsers IMHO. </font></body> </html> |
From: Koolrans P <koo...@gm...> - 2005-02-28 19:00:15
|
Hello Everybody, I am trying to compile tcl and use tcldom with it. I do not want to use ActiveState tcl as I have to test my stuff on basic tcl. I am trying to use the pre-combiled binary combo and getting this error when i try to load the tcldom package. couldn't load library "C:/tcl845/lib/Tcldom_libxml23.0/Tcldom_libxml230.dll": th is library or a dependent library could not be found in library path The following are the steps which I have followed: 1. Combiled the tcl source 8.4.5. I used visual studio 6.0 . It does not contain any other libraries. 2. I got the pre compiled binary combo from tclxml site and put it in the lib folder of my tcl 8.4.5. I also got the missing dll from the zip "tclxmllint.zip" and put it in the lib folder. 3. I downloaded the latest tcllib and put it in the lib folder. 4. On the tcl shell, I write the command "package require dom" and I get the following error. Am I missing something here ? The value of auto_path is "C:/tcl845/lib/tcl8.4 C:/tcl845/lib C:/tcl845/lib/tcllib1.6.1" If there is any more information required, let me know and I shall be glad to send it. Thanks, Regards, Koolrans |