Commit graph

56 commits

Author SHA1 Message Date
fredkiefer
6bb7c00782 * Source/NSXMLDocument.m: Correct memory management.
* Source/NSXMLElement.m,
* Source/NSXMLNode.m: Add partial support for namespaces.
Try to bracket more libxml2 functions with version checks.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34967 72102866-910b-0410-8b05-ffd578937521
2012-03-21 09:01:48 +00:00
rfm
b5181106dd Alterations for build consistency
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34966 72102866-910b-0410-8b05-ffd578937521
2012-03-21 08:00:33 +00:00
rfm
02a7bf73a7 quick hack to get base to compile and link again.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34963 72102866-910b-0410-8b05-ffd578937521
2012-03-20 17:45:16 +00:00
fredkiefer
eb086207bb Add missing free of private document, forgotten in last commit.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34948 72102866-910b-0410-8b05-ffd578937521
2012-03-18 12:29:47 +00:00
fredkiefer
1919becb37 * Source/NSXMLDTDNode.m: Correct node type, at least for entity nodes.
* Source/NSXMLDTD.m: Use predefined entities from libxml2.
* Source/NSXMLNode.m: Rewrite the ownership transfer to preserve
names in dictionaries.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34947 72102866-910b-0410-8b05-ffd578937521
2012-03-18 12:20:29 +00:00
fredkiefer
fbccdda56f * Source/NSXMLPrivate.h: Remvoe unused ivars.
* Source/NSXMLDocument.m: Get DTD from node and and validation
in init methods.
* Source/NSXMLDTD.m: Implement.
* Source/NSXMLNode.m: No children for attribute nodes.
* Tests/base/NSXMLNode/basic.m: Test empty attribute children


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34943 72102866-910b-0410-8b05-ffd578937521
2012-03-17 13:57:58 +00:00
fredkiefer
87a4b8d458 * Source/NSXMLNode.m (-XMLStringWithOptions:): Protect the
different format constants with version checks.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34935 72102866-910b-0410-8b05-ffd578937521
2012-03-16 07:56:15 +00:00
fredkiefer
caa752f124 Use xmlSave for XML String creation.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34929 72102866-910b-0410-8b05-ffd578937521
2012-03-14 21:12:19 +00:00
rfm
e3a0cd2cee get the xml code to build on RedHat/CentOS
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34928 72102866-910b-0410-8b05-ffd578937521
2012-03-14 10:09:15 +00:00
fredkiefer
95c6da91e9 * Source/NSXMLNode.m (-detach): Don't handle the namespace case.
* Source/NSXMLElement.m (-removeNamespaceForPrefix:): Implement.
* Tests/base/NSXMLNode/basic.m: Move tests from here ...
* Tests/base/NSXMLElement/basic.m: ... to here.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34927 72102866-910b-0410-8b05-ffd578937521
2012-03-12 22:33:27 +00:00
fredkiefer
f2ffb6dab9 * Source/NSXMLElement.m: Correct used namespace field.
* Source/NSXMLNode.m: Implement special handling for namespace
nodes.
* Tests/base/NSXMLNode/basic.m: Correct method name for
namespace node.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34926 72102866-910b-0410-8b05-ffd578937521
2012-03-12 19:50:51 +00:00
rfm
d5c5a0bf87 evert/improve last changes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34925 72102866-910b-0410-8b05-ffd578937521
2012-03-12 18:13:27 +00:00
rfm
41d2f1f1bf restructure a bit to make it easier to add namespace support.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34924 72102866-910b-0410-8b05-ffd578937521
2012-03-12 13:27:32 +00:00
rfm
5d7276fd43 avoid crash in testcases
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34921 72102866-910b-0410-8b05-ffd578937521
2012-03-11 15:04:36 +00:00
fredkiefer
adf7878f84 * Source/NSXMLNode.m (-copyWithZone:): Don't set object value of
copy if it is nil.
* Source/NSXMLNode.m (+_objectForNode:): Use correct sub class
for decl nodes.
* Tests/base/NSXMLNode/basic.m: More tests.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34912 72102866-910b-0410-8b05-ffd578937521
2012-03-09 10:08:48 +00:00
fredkiefer
098f8fd389 * Source/NSXMLNode.m (-detach, -_insertChild:atIndex:): Maintain
doc pointer.
* Source/NSXMLDTD.m: Implement a few methods.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34908 72102866-910b-0410-8b05-ffd578937521
2012-03-08 19:59:12 +00:00
fredkiefer
0c1c5da4a8 * Source/NSXMLNode.m (+_objectForNode:): Add a few more libxml2
node types.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34905 72102866-910b-0410-8b05-ffd578937521
2012-03-08 00:15:08 +00:00
fredkiefer
7fd24c9e94 * Source/NSXMLNode.m (+initialize): Add workaround for Windows
xmlFree problem.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34897 72102866-910b-0410-8b05-ffd578937521
2012-03-06 22:33:54 +00:00
fredkiefer
454385ff6e Get all the XML tests to pass again.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34892 72102866-910b-0410-8b05-ffd578937521
2012-03-06 09:55:36 +00:00
fredkiefer
06a892ed28 * Tests/base/NSXMLElement/attributes.m: Test for changed
exception.
* Tests/base/NSXMLNode/basic.m: More tests.
* Source/NSXMLNode.m: Rewrite object value handling.
* Source/NSXMLElement.m (-objectValue): Return @"" when the
value is nil.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34881 72102866-910b-0410-8b05-ffd578937521
2012-03-05 22:48:18 +00:00
fredkiefer
a91938aac3 * Source/NSXMLPrivate.h: Move private method declarations for
NSXMLNode to here.
* Source/NSXMLDocument.m
* Source/NSXMLDTD.m
* Source/NSXMLDTDNode.m
* Source/NSXMLElement.m
* Source/NSXMLNode.m: Clean up and add comments about missing
code.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34877 72102866-910b-0410-8b05-ffd578937521
2012-03-04 21:40:39 +00:00
fredkiefer
81fd43b4ce * Source/NSXMLNode.m: Remove all the extra reference handling code
and the special retain and release methods.
* Tests/base/NSXMLNode/basic.m,
* Tests/base/NSXMLNode/children.m: A few more test
cases. Validated on MacOSX 10.6.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34873 72102866-910b-0410-8b05-ffd578937521
2012-03-03 11:37:49 +00:00
fredkiefer
50decd4014 More XML cleanup
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34851 72102866-910b-0410-8b05-ffd578937521
2012-03-01 08:41:20 +00:00
rfm
50634cb638 cleanups and comments.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34849 72102866-910b-0410-8b05-ffd578937521
2012-03-01 06:11:30 +00:00
gcasa
8916922c6d * Source/NSXMLNode.m: Fix a crashing bug after an invalid xpath
expression is used.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34848 72102866-910b-0410-8b05-ffd578937521
2012-02-29 21:13:13 +00:00
fredkiefer
3b76abbaae Replace last change by a better one.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34829 72102866-910b-0410-8b05-ffd578937521
2012-02-27 18:35:38 +00:00
fredkiefer
4b79143129 * Source/NSXMLNode.m (+_objectForNode:): Get the actual class from
the document.
* Source/NSXMLNode.m (-description): Add a simple description method.
* Source/NSXMLDocument.m: Further cleanup. Exchange the contents
of -initWithData:... and initWithXMLString:...


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34826 72102866-910b-0410-8b05-ffd578937521
2012-02-27 12:53:25 +00:00
fredkiefer
14330e67e1 * Source/NSXMLNode.m (execute_xpath): Use correct node for
relative paths.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34821 72102866-910b-0410-8b05-ffd578937521
2012-02-26 20:45:00 +00:00
fredkiefer
c9ed32af80 * Source/NSXMLNode.m (+elementWithName:stringValue:): Correct
recursive call.
Patch by Ivan Vučica <ivucica@gmail.com>
* Source/NSXMLElement.m: Add FIXME comments for name space
methods.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34820 72102866-910b-0410-8b05-ffd578937521
2012-02-26 19:58:25 +00:00
rfm
c0585bf7b2 moe consistent use of white space to match coding standard etc
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34809 72102866-910b-0410-8b05-ffd578937521
2012-02-23 17:57:50 +00:00
fredkiefer
e01366b184 * Source/NSXMLNode.m (-_nodeFollowingInNaturalDirection:): Correct
this method.
* Source/NSXMLDocument.m,
* Source/NSXMLElement.m: Clean up children methods.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34807 72102866-910b-0410-8b05-ffd578937521
2012-02-22 22:52:31 +00:00
fredkiefer
a2f291260f * Source/NSXMLNode.m: Further clean up.
* Source/NSXMLDTDNode.m (-initWithXMLString:): Move comment
about missing code to here.
* Source/NSXMLElement.m (-initWithName:stringValue:): Move
subnode creation to here.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34806 72102866-910b-0410-8b05-ffd578937521
2012-02-22 10:55:12 +00:00
fredkiefer
b4b1fd5646 * Source/NSXMLNode.m: Clean up helper functions.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34801 72102866-910b-0410-8b05-ffd578937521
2012-02-21 08:21:12 +00:00
gcasa
82e85dab93 * Source/NSXMLDocument.m
* Source/NSXMLDTD.m
	* Source/NSXMLDTDNode.m
	* Source/NSXMLElement.m
	* Source/NSXMLNode.m
	* Source/NSXMLPrivate.h: Reimplementation of all DOM classes based on
	libxml2.  Implementation of all methods using libxml2 functions.
	* Tests/base/NSXMLDocument/basic.m
	* Tests/base/NSXMLElement/attributes.m
	* Tests/base/NSXMLElement/children.m
	* Tests/base/NSXMLNode/basic.m
	* Tests/base/NSXMLNode/children.m
	* Tests/base/NSXMLNode/kinds.m: Changes to test for new functionality.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34789 72102866-910b-0410-8b05-ffd578937521
2012-02-20 03:40:15 +00:00
rfm
e59d5e782d Add warning about state of DOM classes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34657 72102866-910b-0410-8b05-ffd578937521
2012-01-29 15:39:19 +00:00
rfm
fd96ccd439 Make sure code passes testsuite
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34456 72102866-910b-0410-8b05-ffd578937521
2012-01-07 13:08:03 +00:00
rfm
711f7f21de remove useless comments
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34442 72102866-910b-0410-8b05-ffd578937521
2012-01-06 12:48:49 +00:00
rfm
5a53ea0d64 Rewrite hierarchy handling to match OSX
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34441 72102866-910b-0410-8b05-ffd578937521
2012-01-06 12:22:30 +00:00
gcasa
0d998a3394 * ChangeLog
* Source/NSXMLDocument.m
	* Source/NSXMLElement.m
	* Source/NSXMLNode.m: Implement copyWithZone:, correct issues
	with previous revert.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34428 72102866-910b-0410-8b05-ffd578937521
2012-01-06 02:43:26 +00:00
rfm
1780a56fb4 Little tweak to ease debugging ... get compiler to know the class of the
_internal pointer and generate information so gdb can access the internal
cass without needing a cast.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34425 72102866-910b-0410-8b05-ffd578937521
2012-01-05 20:40:12 +00:00
rfm
a2a14fcb8d Fix NSXML ABI breakage
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34412 72102866-910b-0410-8b05-ffd578937521
2012-01-04 12:41:45 +00:00
rfm
3f6bf1fbba Revert ABI breakage
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34410 72102866-910b-0410-8b05-ffd578937521
2012-01-04 09:20:32 +00:00
gcasa
9a24dd2985 * Headers/Foundation/NSXMLDocument.h
* Headers/Foundation/NSXMLElement.h
	* Headers/Foundation/NSXMLNode.h: Move declarations.
	* Source/NSXMLDocument.m: Correct parsing issues.
	* Source/NSXMLElement.m: Remove local declaration of _children
	* Source/NSXMLNode.m: Remove internal.  Move all declarations here
	directly.
	
2012-01-03 14:22-EST Gregory John Casamento <greg.casamento@gmail.com>



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34408 72102866-910b-0410-8b05-ffd578937521
2012-01-03 21:42:33 +00:00
gcasa
5193c6fe20 * Headers/Foundation/NSXMLElement.h
* Headers/Foundation/NSXMLNode.h
	* Source/NSXMLElement.m
	* Source/NSXMLNode.m: Move _URI to NSXMLNode.
	change dealloc accordingly.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34406 72102866-910b-0410-8b05-ffd578937521
2012-01-03 18:10:45 +00:00
gcasa
44399b36f4 * Source/NSXMLNode.m: Implement copyWithZone:
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34405 72102866-910b-0410-8b05-ffd578937521
2012-01-03 17:49:09 +00:00
gcasa
f83149b549 * Headers/Foundation/NSXMLNode.h: Add _stringValue
* Source/NSXMLNode.m: Change stringValue and setStringValue:
	resolvingEntities: to assign to _stringValue instead of _objectValue.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34404 72102866-910b-0410-8b05-ffd578937521
2012-01-03 17:23:44 +00:00
gcasa
8f97e14738 * Source/NSXMLDocument.m: Change stack implementation to
use lastObject/removeLastObject to implement the stack instead
	of inserting and deleting at index 0.
	* Source/NSXMLElement.m: Implemented XMLStringWithOptions:
	* Source/NSXMLNode.m: Implemented XMLStringWithOptions:,
	skeletal implementation of setStringValue:resolvingEntities:



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34403 72102866-910b-0410-8b05-ffd578937521
2012-01-03 17:15:29 +00:00
gcasa
73273b7e75 2012-01-02 02:26-EST Gregory John Casamento <greg.casamento@gmail.com>
* Source/NSXMLNode.m>: Minor correction. Move setName out of 
	private category.
	* Tests/base/NSXMLNode/children.m: Update test.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34385 72102866-910b-0410-8b05-ffd578937521
2012-01-02 07:27:56 +00:00
rfm
da19c7df2e trivial formating tweaks ... add missing white space
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34374 72102866-910b-0410-8b05-ffd578937521
2012-01-01 07:38:53 +00:00
gcasa
f2604e1d43 First cut at NSXMLDocument changes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34371 72102866-910b-0410-8b05-ffd578937521
2011-12-30 21:40:12 +00:00