| Libxml
			Libxml is a XML processor written by Daniel Veillard for the GNOME project... 
			yea, that is the official statement, but he wrote it for fun, whatever he says 
			:-). It implements a whole lot of existing standards related to markup languages 
			and a few extras as well. Used together with its close friends libxslt, xmlsec 
			and gdome, it forms a full-featured general-purpose toolkit for XML.
		 
			Although sometimes referred to as GNOME-XML, libxml does not depend on GNOME but 
			rather the other way around.
		 
			This place is devoted to accomodating libxml to the oddities of the Windows 
			operating system and provides the last-known-good binaries for the native 
			Windows platform.
			The source code is not hosted on this site. Pay a visit 
			to the libxml official home for that.
		 Getting The Binaries
				The binaries are available in the
				download area.
				However, read this document in its entirety before you grab any of these. 
			 
				First check what you need to download. There are several packages available 
				and some of them depend on the others. The packages available on this site 
				are:
			 
					libxml2, the XML parser and processor.
				
					libxslt, the XSL and EXSL Transformations processor.
				
					xmlsec, the XMLSec and XMLDSig processor.
				
					xsldbg, the XSL Transformations debugger.
				
					openssl, the general crypto toolkit.
				
					iconv, the character encoding toolkit.
				
					zlib, the compression toolkit.
				
 
				How these packages depend on each other is shown in the following figure:
			 Figure: libxml package dependencies 
				To satisfy the dependencies, look up the desired package and get that and 
				everything else below, following the arrows. The blue arrows show the 
				mandatory dependencies, you'll never get through without these. The gray 
				arrows represent the dependencies which can be removed through recompiling. 
				For the binary packages to work, you must follow all arrows.
			 Installing
				If you plan to develop your own programme, in C, which uses libxml, then you 
				should know what to do with the files in the binary package. If you don't 
				know this, then please, please do some research on how to use a third-party 
				library in a C programme. The topic belongs to the very basics and you will 
				not be able to do much without that knowledge.
			 
				If you wish to use libxml solely through the supplied utilities, such as 
				xmllint or xsltproc, then all you need to do is place the contents of the 
				bin directory from the binary package in a 
				directory on your disc which is mentioned in your PATH environment 
				variable. 
				You can use an existing directory which is allready in the path, such as 
				C:\WINDOWS. You can also create a new directory for libxml and 
				place the files there, but be sure to modify the PATH 
				environment variable and add that new directory to its list.
			 
				If you use other software which needs libxml, such as Apache Web Server in 
				certain configurations (PHP, for example), then please consult the 
				documentation of that software and see if it mentions something about how 
				it uses libxml and how it expects it to be installed. If you find nothing, 
				then the default installation, as described in the previous paragraph, 
				should be suficient. 
			 Notes
				All binaries which you can download from this site use the multithreaded 
				dynamic C-runtime (msvcrt.dll). Every program you compile using these 
				binaries must use the same runtime. Unless you like your app crashing, 
				set up your project to use msvcrt.dll. If you for some reason must use a 
				different runtime, then you must get the source and compile libxml and 
				friends yourself. 
			 
				If you link to libxml statically, make sure that @lib@_STATIC 
				macro is defined during the compilation of your sources, where 
				@lib@ stands for LIBXML, LIBXSLT, 
				LIBEXSLT and XMLSEC respectively.
			 
				As of verson 2.5.7, libxml binary is being distributed with thread-suport 
				enabled. This means that this version is not binary compatible to the 
				previous versions. If you currently use an older version of any package 
				from this site, you will have to upgrade all packages which have 'xml' 
				or 'xsl' in their name.
			 
				All binaries have been built using C/C++ compiler version 13, linker 
				version 7 and nmake version 6, all of them by Microsoft Corporation. To 
				avoid any confusion, these are not the tools you get when you install 
				Microsoft Visual Studio. These are a part of the Windows XP DDK. If you 
				have other development tools, such as Borland's, check if you can use 
				these binaries as they are before building your own. You should be able to.
			 
				If you use Windows 95, Windows 98 or Windows ME operating systems, then you 
				are on your own. Maybe it will work out of the box, maybe it won't. I 
				neither use nor understand these. The binaries are supported on an 
				operating system based on the NT-kernel, such as Windows NT, Windows 2000 
				and Windows XP, exclusively.
			 Documentation
				There is a lot of documentation about this software, as well as there is 
				argue about its completeness and quality. You should start with the official
				documentation and here is where you can go:
			 
				Please make sure you have read and understood at least some of those 
				documents before you answer the urge to post something to the mailing list.
			 Support
				Normally, there is no guaranteed support for this software. However, 
				people who work on it have shown an open ear for all kinds of problems so 
				far. All questions regarding libxml and friends should be sent to the 
				respective mailing list. You have the following choice:
			 
				You are encouraged to subscribe to the lists before you post. If you 
				don't, your mail might as well end up discarded automatically together 
				with the tons of spam.
			 
				If you have an inquiry you would rather not discuss in public, you can 
				send it to me.
				If you do so and don't explicitly express your wish for privacy, I shall 
				forward your message and my answer to the mailing list.
			 
				If libxml is critical to your business needs and you need a guaranteed 
				support or local, system-dependent modifications to the code, then you 
				will have to buy consulting services. Feel free to contact me regarding 
				this topic, I can help :-)
			 Related Bits
				Here is a small collection of links to other material regarding this 
				software.
			 
				Please note that you leave my realm by clicking on these and I possibly 
				haven't even seen these sites, let alone understood what they are about. 
				If you have any questions regarding these sites and want it answered, 
				you would do good to ask whoever happens to maintain them.
			 |