| 437 |
sub clone_node ($;$) { |
sub clone_node ($;$) { |
| 438 |
my ($self, $deep) = @_; |
my ($self, $deep) = @_; |
| 439 |
|
|
| 440 |
## ISSUE: Need definitions for the cloning operation |
## TODO: Cloning operation |
| 441 |
## for ElementTypeDefinition, and AttributeDefinition nodes, |
## for ElementTypeDefinition, and AttributeDefinition nodes, |
| 442 |
## as well as new attributes introduced in DOM XML Document Type Definition |
## as well as new attributes introduced in DOM XML Document Type Definition |
| 443 |
## module. |
## module. |
| 444 |
## ISSUE: Define if default attributes and attributedefinition are inconsistent |
## TODO: if default attributes and attributedefinition are inconsistent |
| 445 |
|
|
| 446 |
local $Error::Depth = $Error::Depth + 1; |
local $Error::Depth = $Error::Depth + 1; |
| 447 |
my $od = $self->owner_document; |
my $od = $self->owner_document; |
| 600 |
## Too many thing to be done by a method! |
## Too many thing to be done by a method! |
| 601 |
## Maybe we should import simpler method implemented by IE. |
## Maybe we should import simpler method implemented by IE. |
| 602 |
|
|
| 603 |
## ISSUE: Need documentation for ElementTypeDefinition and AttributeDefinition |
## TODO: ElementTypeDefinition and AttributeDefinition |
|
## concerns |
|
| 604 |
|
|
| 605 |
my @acontainer = ($_[0]); |
my @acontainer = ($_[0]); |
| 606 |
my @bcontainer = ($_[1]); |
my @bcontainer = ($_[1]); |
| 958 |
} # manakai_append_text |
} # manakai_append_text |
| 959 |
|
|
| 960 |
sub is_default_namespace ($$) { |
sub is_default_namespace ($$) { |
|
## TODO: Document that ElementTypeDefinition and AttributeDefinition |
|
|
## are same as DocumentType |
|
|
|
|
| 961 |
local $Error::Depth = $Error::Depth + 1; |
local $Error::Depth = $Error::Depth + 1; |
| 962 |
my $namespace_uri = defined $_[1] ? $_[1] : ''; |
my $namespace_uri = defined $_[1] ? $_[1] : ''; |
| 963 |
my $nt = $_[0]->node_type; |
my $nt = $_[0]->node_type; |
| 1000 |
} # is_default_namespace |
} # is_default_namespace |
| 1001 |
|
|
| 1002 |
sub lookup_namespace_uri ($$) { |
sub lookup_namespace_uri ($$) { |
|
## TODO: Need definition for ElementTypeDefinition and AttributeDefinition |
|
|
|
|
| 1003 |
my ($self, $prefix) = @_; |
my ($self, $prefix) = @_; |
| 1004 |
$prefix = undef if defined $prefix and $prefix eq ''; |
$prefix = undef if defined $prefix and $prefix eq ''; |
| 1005 |
## NOTE: Implementation dependent. |
## NOTE: Implementation dependent. |
| 1056 |
} # lookup_namespace_uri |
} # lookup_namespace_uri |
| 1057 |
|
|
| 1058 |
sub lookup_prefix ($$) { |
sub lookup_prefix ($$) { |
|
## ISSUE: Document ElementTypeDefinition and AttributeDefinition |
|
|
## behavior (i.e. same as DocumentType) |
|
|
|
|
| 1059 |
my $namespace_uri = defined $_[1] ? $_[1] : ''; |
my $namespace_uri = defined $_[1] ? $_[1] : ''; |
| 1060 |
if ($namespace_uri eq '') { |
if ($namespace_uri eq '') { |
| 1061 |
return undef; |
return undef; |
| 1143 |
## Attributes |
## Attributes |
| 1144 |
$_->normalize for @{$self->attributes}; |
$_->normalize for @{$self->attributes}; |
| 1145 |
} elsif ($nt == DOCUMENT_TYPE_NODE) { |
} elsif ($nt == DOCUMENT_TYPE_NODE) { |
|
## ISSUE: Document these explicitly in DOM XML Document Type Definitions spec |
|
| 1146 |
## Element type definitions |
## Element type definitions |
| 1147 |
$_->normalize for @{$self->element_types}; |
$_->normalize for @{$self->element_types}; |
| 1148 |
## General entities |
## General entities |
| 1356 |
# registered to a node is later unregistered by setting |
# registered to a node is later unregistered by setting |
| 1357 |
# <DOM::null> as a data for the same key. |
# <DOM::null> as a data for the same key. |
| 1358 |
# |
# |
| 1359 |
sub set_user_data ($$$;$) { |
sub set_user_data ($$;$$) { |
| 1360 |
my ($self, $key, $data, $handler) = @_; |
my ($self, $key, $data, $handler) = @_; |
| 1361 |
|
|
| 1362 |
my $v = ($$self->{user_data} ||= {}); |
my $v = ($$self->{user_data} ||= {}); |