2 Copyright (C) 2000-2005 SKYRIX Software AG
4 This file is part of SOPE.
6 SOPE is free software; you can redistribute it and/or modify it under
7 the terms of the GNU Lesser General Public License as published by the
8 Free Software Foundation; either version 2, or (at your option) any
11 SOPE is distributed in the hope that it will be useful, but WITHOUT ANY
12 WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
14 License for more details.
16 You should have received a copy of the GNU Lesser General Public
17 License along with SOPE; see the file COPYING. If not, write to the
18 Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
22 #include "DOMImplementation.h"
23 #include "DOMDocument.h"
24 #include "DOMDocumentFragment.h"
27 @implementation NGDOMImplementation
30 self->elementClass = NSClassFromString(@"NGDOMElement");
31 self->textNodeClass = NSClassFromString(@"NGDOMText");
32 self->attrClass = NSClassFromString(@"NGDOMAttribute");
36 - (Class)domDocumentClass {
37 return [NGDOMDocument class];
39 - (Class)domDocumentTypeClass {
40 return NSClassFromString(@"NGDOMDocumentType");
43 - (Class)domElementClass {
44 return self->elementClass;
46 - (Class)domElementNSClass {
47 return self->elementClass;
49 - (Class)domDocumentFragmentClass {
50 return NSClassFromString(@"NGDOMDocumentFragment");
52 - (Class)domTextNodeClass {
53 return self->textNodeClass;
55 - (Class)domCommentClass {
56 return NSClassFromString(@"NGDOMComment");
58 - (Class)domCDATAClass {
59 return NSClassFromString(@"NGDOMCDATA");
61 - (Class)domProcessingInstructionClass {
62 return NSClassFromString(@"NGDOMProcessingInstruction");
64 - (Class)domAttributeClass {
65 return self->attrClass;
67 - (Class)domAttributeNSClass {
68 return self->attrClass;
70 - (Class)domEntityReferenceClass {
71 return NSClassFromString(@"NGDOMEntityReference");
74 - (id)createDocumentWithName:(NSString *)_qname
75 namespaceURI:(NSString *)_uri
76 documentType:(id)_doctype
80 doc = [[[self domDocumentClass] alloc]
81 initWithName:_qname namespaceURI:_uri documentType:_doctype
84 return [doc autorelease];
87 - (id)createDocumentType:(NSString *)_qname
88 publicId:(NSString *)_pubId
89 systemId:(NSString *)_sysId
93 doc = [[[self domDocumentTypeClass] alloc]
94 initWithName:_qname publicId:_pubId systemId:_sysId dom:self];
96 return [doc autorelease];
99 @end /* NGDOMImplementation */