2008-11-09 Wakaba * Element.pm (inner_html): Setter for HTML element nodes implemented. 2008-10-21 Wakaba * Document.pm (inner_html): Use Whatpm::XML::Parser for XML parsing. * Node.pm (manakai_html_language): New attribute. 2008-10-17 Wakaba * ElementTypeDefinition.pm (content_model_text): New attribute. 2008-04-12 Wakaba * Element.pm (create_element, create_element_ns): Inputs were not normalized into a string. 2008-02-17 Wakaba * Document.pm (manakai_html, manakai_head): New methods. 2008-02-11 Wakaba * CSSRule.pm (@import css_text): Implemented. 2008-02-10 Wakaba * CSSStyleSheet.pm (manakai_input_encoding): New. 2008-02-08 Wakaba * CSSRule.pm (@media, @import ____new): Bless media object with the appropriate class. (@media css_text): Getter implemented. * MediaList.pm (media_text): Getter implemented. 2008-02-03 Wakaba * CSSStyleDeclaration.pm ($serialize_value): Support for new value types. 2008-02-02 Wakaba * CSSStyleDeclaration.pm ($serialize_value): New (was part of Whatpm::CSS::Parser as $default_serializer). Use it instead of old 'serialize' parameter of CSS property definition. 2008-01-26 Wakaba * CSSStyleDeclaration.pm (css_text): Prepend | ! | before the priority token if any. (get_property_priority): Shorthand case implemented. 2008-01-26 Wakaba * CSSStyleDeclaration.pm: Use |serialize_shorthand| and |serialize_multiple| to serialize shorthand properties in reflecting attributes. Return value of the |serialzie_multiple| function has been changed. (non-computed css_text): Sort by property names. 2008-01-24 Wakaba * Window.pm (manakai_get_computed_style): Renamed from |get_computed_style|. * Element.pm (manakai_computed_style): Renamed from |current_style|. 2008-01-14 Wakaba * CSSStyleDeclaration.pm (AUTOLOAD): DOM attributes reflecting shorthand properties did croak (fixed but still they does not return correct result - they need to be fixed later). * Element.pm (query_selector, query_selector_all): Prototypes were missing. 2008-01-14 Wakaba * Window.pm (___reset_css): Typo fixed. 2008-01-14 Wakaba * CSSStyleDeclaration.pm: The classes now explicitly implement the |CSS2Properties| interface. (@{}, TIEARRAY, FETCH, FETCHSIZE, EXISTS, item, length): Implemented. 2008-01-14 Wakaba * CSSStyleDeclaration.pm (attributes reflecting CSS properties): Return an empty string if no value is assigned to the property. Insert a SPACE before '!' for compatibility with Firefox. 2008-01-14 Wakaba * CSSRule.pm (css_text): Trailing newline character is removed to avoid double empty lines in CSSStyleSheet->css_text. (selector_text): Namespace support is fixed. * CSSStyleSheet.pm (___new): Now it accepts |_nsmap| option. 2008-01-14 Wakaba * CSSRule.pm (selector_text): Use |serialize_selector_text| to get better result. 2008-01-13 Wakaba * Window.pm: New Perl module. * Document.pm (default_view): Implemented. * Element.pm (current_style): Implemented. 2008-01-06 Wakaba * CSSStyleDeclaration.pm (css_text): Allow to shorten a complete set of longhand properties. (get_property_priority): Implemented. (CSSComputedStyleDeclaration AUTOLOAD): Implemented for reflecting attributes. 2008-01-04 Wakaba * CSSStyleDeclaration.pm (css_text): Allow |{compute_multiple}| as well as |{compute}| as a way to filter out longhand properties. Sort properties by names for readability. 2008-01-01 Wakaba * CSSStyleDeclaration.pm (css_text): Output |undef| property information for debugging. * CSSStyleSheet.pm (manakai_base_uri): New attribute. 2008-01-01 Wakaba * CSSStyleDeclaration.pm (CSSComputedStyleDeclaration): New class. 2007-12-31 Wakaba * SelectorsAPI.pm, Document.pm (___query_selector_all): New internal method. 2007-12-31 Wakaba * SelectorsAPI.pm: Make simple-selector-sequence-matching an independent function. 2007-12-31 Wakaba * CSSStyleDeclaration.pm (AUTOLOAD): Getter for attributes reflecting CSS property is implemented. (css_text): Getter is implemented. 2007-12-24 Wakaba * CSSRule.pm (selector_text): Ad hoc support for namespace prefixes. (CSSNamespaceRule.css_text): Getter implemented. * CSSStyleSheet.pm (manakai_is_default_namespace, manakai_lookup_namespace_prefix): New methods. 2007-12-23 Wakaba * CSSRule.pm (@charset.css_text): Implemented. 2007-12-23 Wakaba * CSSRule.pm (type, css_text): Typo fixed. (____new): s/_selector/_selectors/g; (CSSStyleRule.css_text, selectors_text): Ad hoc implementation. * CSSStyleDeclaration.pm (css_text): Ad hoc implementation. * CSSStyleSheet.pm (new): s/new/____new/. (css_text): New attribute. 2007-12-22 Wakaba * MediaList.pm: New placeholder for a CSSOM interface. * CSSRule.pm, CSSStyleSheet.pm: Implementing the initial setting of owner* and parent* attributes; support for the |delete_rule| method. 2007-12-22 Wakaba * CSSStyleSheet.pm, CSSRule.pm, CSSRuleList.pm, CSSStyleDeclaration.pm: First version of CSSOM implementation. 2007-11-18 Wakaba * Document.pm, Entity.pm (manakai_has_bom, manakai_charset): New attributes. 2007-11-11 Wakaba * Document.pm, Element.pm (inner_html): Use |Whatpm::HTML::Serializer| for getter. 2007-10-27 Wakaba * Event.pm (init_event, init_event_ns, init_custom_event_ns): The |namespaceURI| attribute was not set correctly. * DOMEvents.dis: Removed. 2007-10-08 Wakaba * Event.pm, EventTarget.pm, EventTargetNode.pm, EventException.pm: Implemented (but not tested!). * DOMException.pm (MALFORMED_EVENT_TYPE_ERR, EVENT_INTERFACE_NOT_SUPPORTED_ERR, EXTERNAL_EVENT_ERR): New error subtypes. * DOMImplementation.pm ($HasFeature): The |Event| feature, version |3.0|, is added. * Document.pm, Node.pm: Event attributes and methods are implemented. 2007-10-07 Wakaba * SelectorsAPI.pm ($get_elements_by_selectors): Receive an additional argument for "current element". Support for |-manakai-current| and |-manakai-current(/s/)| pseudo-classes. 2007-09-29 Wakaba * SelectorsAPI.pm: Attribute selectors are implemented. 2007-09-29 Wakaba * SelectorsAPI.pm (ElementSelector): Implemented. 2007-09-29 Wakaba * SelectorsAPI.pm (query_selector): Implemented. 2007-09-29 Wakaba * SelectorsAPI.pm ($get_elements_by_selectors): Created from most part of |query_selector_all|. 2007-09-24 Wakaba * DOMException.pm (SYNTAX_ERR): New subtype is defined. (UNDECLARED_PREFIX_ERR): New subtype is defined. * Document.pm (Document): Implements the |DocumentSelector| interface. * Element.pm (Element): Implements the |ElementSelector| interface. * Node.pm (Node): Implements the |NSResolver| interface. * SelectorsAPI.pm: Now (hopefully) conform to the Selectors API Editor's Draft (only |query_selector_all| on |Document|, with limited selectors syntax support, though). 2007-09-23 Wakaba * SelectorsAPI.pm: Namespaced type/universal selectors are supported. 2007-09-23 Wakaba * SelectorsAPI.pm: New Perl module. 2007-08-25 Wakaba * Node.pm (manakai_language): Return the |manakai_language| of the |owner_document|, if any, as defined in the spec. 2007-08-25 Wakaba * Makefile: Relative path was wrong. 2007-07-29 Wakaba * HTML/: New directory. * Element.pm (create_element_ns): Return object implementing the |HTMLElement| interface for HTML elements. 2007-07-29 Wakaba * DOMImplementation.pod: New documentation. * Makefile: Make HTML document. 2007-07-29 Wakaba * XDoctype.dis, XDoctype.pm: Removed. * CharacterData.pm: Renamed from DOMCharacterData.pm. * Document.pm: Renamed from DOMDocument.pm. * Element.pm: Renamed from DOMElement.pm 2007-07-29 Wakaba * DOMString.dis, DOMString.pm, Document.dis, Document.pm, Element.dis, Element.pm, CharacterData.dis, CharacterData.pm, TreeCore.dis, TreeCore.pm, DOMCore.dis, DOMCore.pm, DOMFeature.dis, DOMFeature.pm, XML.dis, XML.pm, DOMMain.dis, DOMMain.pm, DOMLS.dis, GenericLS.dis, GenericLS.pm, SimpleLS.dis: Removed. * Makefile: Rules for DIS are removed. 2007-07-29 Wakaba * Text.pm: |Message::DOM::Traversal, an obsolete module, was referenced. 2007-07-29 Wakaba * DOMDocument.pm (inner_html): Setter in HTML document is implemented. 2007-07-29 Wakaba * DOMDocument.pm (inner_html): Setter in XML document is implemented. 2007-07-19 Wakaba * Attr.pm (DeclaredValueType): Added. * ProcessingInstruction.pm (data): Accept |undef| as a valid input, for |text_content| (maybe) allows it. * TypeInfo.pm (type_namespace): The implementation was wrong. 2007-07-16 Wakaba * DOMElement.pm: Incorrect module was referenced. * DOMImplementation.pm: References to the |Message::Charset::Encode| module has been removed. 2007-07-15 Wakaba * XMLParserTemp.pm: Use |Whatpm::Charset::DecodeHandle| instead of |Message::Charset::Encode|. 2007-07-15 Wakaba * DOMDocument.pm (inner_html): New attribute (beta). * DOMElement.pm (inner_html): New attribute (beta). 2007-07-15 Wakaba * DOMConfiguration.pm: Configuration parameter |create-child-element| implemented. * DOMElement.pm (create_element_ns): Support for Atom subclasses. * DOMImplementation.pm (DOMImplementation): Now implements the |AtomDOMImplementation| interface. ($HasFeature): Features |atom| and |atomthreading| are added. * NodeList.pm (StaticNodeList): Implemented. 2007-07-15 Wakaba * Atom/: New directory. 2007-07-15 Wakaba * TreeWalker.pm, SerialWalker.pm: New Perl modules. * Text.pm (whole_text): Parameter index number has been changed to support new |NodeFilter| Perl binding definition. 2007-07-14 Wakaba * AttributeDefinition.pm, DOMElement.pm, DocumentType.pm, ElementTypeDefinition.pm, Entity.pm, EntityReference.pm, Notation.pm, ProcessingInstruction.pm (AUTOLOAD): Don't croak even if an attempt is made to modify a read-only attribute. * DOMConfiguration.pm (can_set_parameter, set_parameter): Don't allow to set the value to a string other than (XML 1.0 DTD). * DOMDocument.pm (Message::IF::DocumentTraversal): New interface. (create_tree_walker, manakai_create_serial_walker): References and prototypes are added. * DOMException.pm (NULLPO_ERR): New error type:-). * DOMImplementation.pm ($HasFeature): Feature |Traversal|, version |2.0|, is added. 2007-07-14 Wakaba * CDATASection.pm: Removed (merged with |Text.pm|). * Text.pm (Message::DOM::Text::CDATASection): New. * Comment.pm: Removed (merged with |DOMCharacterData.pm|). * DOMCharacterData.pm (Message::DOM::CharacterData::Comment): New. 2007-07-14 Wakaba * DOMConfiguration.pm: Support for |schema-type| and |http://suika.fam.cx/www/2006/dom-config/xml-id|. * NamedNodeMap (TIEHASH): Were missing. 2007-07-14 Wakaba * AttributeDefinition.pm (node_value): Implemented. (create_attribute_definition): Implemented. * DOMConfiguration.pm (%{}, TIEHASH, get_parameter, set_parameter, can_set_parameter, EXISTS, DELETE, parameter_names, FETCH, STORE, FIRSTKEY, LASTKEY): Implemented. * DOMDocument.pm (____new): Set |error-handler| default. (get_elements_by_tag_name, get_elements_by_tag_name_ns): Implemented. * DOMElement.pm (get_elements_by_tag_name, get_elements_by_tag_name_ns): Implemented. * DOMException.pm: Error types for |DOMConfiguration| are added. * DOMStringList.pm (Message::DOM::DOMStringList::StaticList): New class. * DocumentType.pm (get_element_type_definition_node, get_general_entity_node, get_notation_node, set_element_type_definition_node, set_general_entity_node, set_notation_node, create_document_type_definition): Implemented. * ElementTypeDefinition.pm (get_attribute_definition_node, set_attribute_definition_node, create_element_type_definition): Implemented. * Entity.pm (create_general_entity): Implemented. * Node.pm: Constants in |OperationType| definition group are added. (manakai_language): Implemented. * NodeList.pm (Message::DOM::NodeList::GetElementsList): New class. * Notation.pm (create_notation): Implemented. 2007-07-14 Wakaba * TypeInfo.pm: New Perl module. * Attr.pm: Use |manakai_local_name| rather than |local_name| to avoid HTML5 case normalization. (is_id): Implemented. (manakai_name): New attribute. (schema_type_info): Implemented. (create_attribute_ns): Empty string as namespace URI was not supported. * DOMElement.pm (clone_node): Removed since now it is defined in |Node.pm|. (schema_type_info): Implemented. (manakai_tag_name): New attribute. (get_attribute, get_attribute_node, get_attribute_ns, get_attribute_node_ns, has_attribute, has_attribute_ns, remove_attribute, remove_attribute_ns, remove_attribute_node, set_attribute, set_attribute_ns, set_id_attribute, set_id_attribute_node, set_id_attribute_ns): Implemented. (create_element_ns): Empty string as namespace URI was not supported. 2007-07-12 Wakaba * AttributeDefinition.pm (owner_element_type_definition): Implemented. * DocumentType.pm (create_document_type_definition): Initialize |public_id|, |system_id|, and |internal_subset| attributes by empty strings for compatibility with Web browsers. (create_document_type): Initialize |internal_subset| attribute by an empty string for compatibility with Web browsers. * ElementTypeDefinition.pm, Entity.pm, Notation.pm (owner_document_type_definition): Implemented. 2007-07-08 Wakaba * DOMImplementation.pm ($HasFeature): |fe:XDoctypeDeclaration| feature is added for compatibility with |XMLParserTemp.pm|. 2007-07-08 Wakaba * Attr.pm (value, node_value): Now it is defined as |text_content| itself. * AttributeDefinition.pm, ElementTypeDefinition.pm, Node.pm (AUTOLOAD): Unused block is removed. * CDATASection.pm, DocumentFragment.pm (AUTOLOAD): Removed. Unused. * DocumentType.pm (internal_subset): Implemented. * Entity.pm (is_externally_declared, input_encoding, xml_version): Implemented. * ProcessingInstruction.pm (target, data): Implemented. 2007-07-08 Wakaba * DOMCharacterData.pm (AUTOLOAD): Removed. (data): Reimplemented. (delete_data, insert_data, replace_data, substring_data): There were a number of bugs. * Text.pm (AUTOLOAD): Removed. Unused. 2007-07-08 Wakaba * StringExtended.pm: New Perl module. * DOMCharacterData.pm (length, append_data, delete_data, insert_data, replace_data, substring_data): Implemented. * DOMException.pm (INDEX_SIZE_ERR): Implemented. * Text.pm (is_element_content_whitespace, whole_text, split_text): Implemented. 2007-07-08 Wakaba * DOMElement.pm (attributes): Implemented. * DOMException.pm (INUSE_DEFINITION_ERR): New error type. * DocumentType.pm (entities, general_entities, notations, element_types): Implemented. * ElementTypeDefinition.pm (attribute_definitions): Implemented. * NamedNodeMap.pm: New Perl module. 2007-07-08 Wakaba * Attr.pm, AttributeDefinition.pm, DOMCharacterData.pm, DOMDocument.pm, DocumentType.pm, ElementTypeDefinition.pm, Node.pm, Notation.pm, ProcessingInstruction.pm (append_child, insert_before, replace_child): Implemented. * DOMException.pm (HIERARCHY_REQUEST_ERR, NOT_FOUND_ERR): Implemented. * Node.pm (remove_child): Implemented. 2007-07-07 Wakaba * Node.pm (==, is_equal_node): Implemented. (is_same_node): Implemented. (get_feature, get_user_data, set_user_data): Implemented. (is_supported): Implemented. 2007-07-07 Wakaba * DOMDocument.pm (get_element_by_id): Implemented. (create_document): Implemented. * DOMException.pm (EXTERNAL_OBJECT_ERR, INUSE_DOCTYPE_ERR): New errors. (QNAME_NULLNS_ERR): New errors. * DocumenType.pm (create_document_type): Implemented. 2007-07-07 Wakaba * CDATASection.pm (is_element_content_whitespace): New. * DOMElement.pm (has_attribute): Alpha version. (create_element, create_element_ns): Implemented. * DocumentType.pm (get_general_entity_node): Alpha version. * EntityReference.pm (create_entity_reference): Implemented. * ProcessingInstruction.pm (create_processing_instruction): Implemented. 2007-07-07 Wakaba * Attr.pm (create_attribute, create_attribute_ns): Implemented. * DOMDocument.pm: Load character classes from |Char::Class::XML|. (compat_mode): Check |defined| not to be warned as "uninitialized" when |{manakai_compat_mode}| is |undef|. * DOMException.pm (INVALID_CHARACTER_ERR, NAMESPACE_ERR): Added. * DOMImplementationRegistry.pm, DOMImplementationSource.pm: Statements to set |$Error::Depth| are removed since they are result in "uninitialized" warnings unless the |Message::DOM::DOMException| module is loaded earlier. Usually methods invoked in these methods does not raise any exception so that it makes no difference. 2007-07-07 Wakaba * DOMDocument.pm (adopt_node): Implemented. (doctype): Implemented. * DOMElement.pm (remove_attribute_node): Alpha version. * DOMException.pm (ADOPT_NODE_TYPE_NOT_SUPPORTED_ERR): New error type. * Node.pm (set_user_data): Implemented. 2007-07-07 Wakaba * DOMImplementation.pm (new): New method name for |____new|. It will be defined in the DOM Perl Binding specification as part of |DOMImplementation| interface. ($HasFeature): Defined for features support. (has_feature, get_feature): Implemented. * DOMStringList.pm: Don't load the |Message::DOM::DOMException| module unless necessary. (___report_error): Removed since it is not used in fact. * DOMImplementationList.pm, DOMImplementationSource.pm, DOMImplementationRegistry.pm: New modules. 2007-07-07 Wakaba * AttributeDefinition.pm (allowed_tokens): Implemented. * DOMStringList.pm: New Perl module. 2007-06-26 Wakaba * DOMElement.pm (clone_node): Alpha version. It did not work at all. 2007-06-24 Wakaba * ProcessingInstruction.pm (data): Now it is a read-write attribute. 2007-06-23 Wakaba * DOMDocument.pm (compat_mode, manakai_compat_mode): Implemented. (manakai_is_html): Revised. (Document): Now it implements the |HTMLDocument| interface. (adopt_node): Alpha version. * AttributeDefinition.pm (allowed_tokens): |allowed_tokens|, not |allowed_token|! * ElementTypeDefinition.pm (attribute_definitions): Don't return an |undef| even if its |attribute_definitions| list is not created. 2007-06-21 Wakaba * Comment.pm (node_type): Node type was incorrect! * DOMConfiguration.pm (get_parameter): Alpha. * DOMImplementation.pm (create_mc_decode_handler, create_charset_name_from_uri, create_uri_from_charset_name): New autoload configuration. Note that the Message::Charset::Encode module is subject to change. * XMLParserTemp.pm: Now it can be used with new version of DOM implementation. Current plan is to replace it by an XML5 parser someday. 2007-06-21 Wakaba * DOMLocator.pm: New module. * DOMError.pm: New module. 2007-06-20 Wakaba * Node.pm (manakai_expanded_uri, manakai_parent_element, clone_node, compare_document_position, has_attributes, has_child_nodes, is_default_namespace, lookup_namespace_uri, lookup_prefix, normalize): Implemented. * DOMElement.pm (remove_attribute, set_attribute): Alpha version. * DOMException.pm (CLONE_NODE_TYPE_NOT_SUPPORTED_ERR): New error. 2007-06-17 Wakaba * AttributeDefinition.pm (____new): Set an empty list to the |allowed_tokens| attribute. (allowed_token): Alpha version. * DocumentType.pm (get_element_type_definition_node, get_notation_node): ALpha version. * ElementTypeDefinition.pm (attribute_definitions): Alpha 2 version. * Entity.pm (notation_name): Implemented. 2007-06-17 Wakaba * Attr.pm (____new): Initialize |specified| as 1. (base_uri, manakai_attribute_type, specified): Implemented. (prefix): Don't check read-only flag unless |strict_error_checking|. (value): Call |text_content| for now. * AttributeDefinition.pm (DeclaredValueType, DefaultValueType): Added. (declared_type, default_type): Implemented. * CharacterData.pm (____new): Allow a scalar reference as an input for the |data| attribute. (base_uri, manakai_append_text): Implemented. * DOMConfiguration.pm (set_parameter): Resetting implemented. * DOMDocument.pm (____new): Set default values to configuration parameter whose default is true. (document_uri, input_encoding): Implemented. (all_declarations_processed, manakai_is_html): Implemented. (base_uri, manakai_append_text, manakai_entity_base_uri, strict_error_checking, xml_encoding, xml_version, xml_standalone): Implemented. * DOMElement.pm (manakai_base_uri, base_uri): Implemented. (get_attribute, get_attribute_node): Alpha version. (set_attribute_node, set_attribute_node_ns): Implemented. (set_attribute_ns): Accept non-ARRAY qualified name. * DOMException.pm (___error_def): |WRONG_DOCUMENT_ERR|, |NOT_SUPPORTED_ERR|, and |INUSE_ATTRIBUTE_ERR| are added. * DocumentType.pm (public_id, system_id): Implemented. (base_uri, declaration_base_uri, manakai_declaration_base_uri, manakai_append_text): Implemented. (element_types, general_entities, notations, set_element_type_definition_node, set_general_entity_node, set_notation_node): Alpha version. * ElementTypeDefinition.pm (manakai_append_text): Implemented. (attribute_definitions, set_attribute_definition_node): Alpha version. * Entity.pm (has_replacement_tree, public_id, system_id, manakai_declaration_base_uri, manakai_entity_base_uri, manakai_entity_uri): Implemented. * EntityReference.pm (manakai_expanded, manakai_external): Implemented. (base_uri, manakai_entity_base_uri): Implemented. * Node.pm (base_uri): Implemented. (text_content): Don't check read-only or not unless |strict_error_checking|. (manakai_append_text): Implemented. (get_feature): Alpha. (manakai_set_read_only): Implemented. * Notation.pm (public_id, system_id, manakai_append_text, manakai_declaration_base_uri): Implemented. * ProcessingInstruction.pm (manakai_base_uri, base_uri, manakai_append_text): Implemented. 2007-06-16 Wakaba * DOMConfiguration.pm: New module. * Attr.pm (trivial accessor for read-write attributes): Throw an exception if the node is read-only. Delete the property if undef is specified. (prefix): Implemented. * DOMElement.pm (trivial accessor for read-write attributes): Throw an exception if the node is read-only. Delete the property if undef is specified. (prefix): Implemented. (text_content, manakai_append_text): Old implementations are removed. * DOMCharacterData.pm (text_content): Implemented. * DOMDocument.pm (____new): Initialize the strict-document-children parameter by true. (text_content): Reimplemented. (dom_config): New. * DOMException.pm (READ_ONLY_NODE_ERR): New subtype. * DocumentType.pm (text_content): Implemented. * ElementTypeDefinition.pm (text_content): Implemented. * Node.pm (___report_error): New method. (text_content): Implemented. (manakai_append_text): Copied from |DOMElement.pm|. * Notation.pm (text_content): Implemented. * ProcessingInstruction.pm (text_content): Implemented. * Text.pm (is_element_content_whitespace): Alpha version. 2007-06-16 Wakaba * DOMException.pm (Message::IF::DOMException): Extends the |Message::Util::Error| class. * NodeList.pm (Message::DOM::NodeList): Extends the |Tie::Array| class. (CLEAR): Not all items were removed. 2007-06-16 Wakaba * Attr.pm, AttributeDefinition.pm, DocumentFragment.pm, DocumentType.pm, Entity.pm, EntityReference.pm (____new): Initialize |child_nodes| by an empty list. * Node.pm, DOMCharacterData.pm, ElementTypeDefinition.pm, Notation.pm, ProcessingInstruction.pm (child_nodes): Implemetned. * DOMDocument.pm (AUTOLOAD): Typo fixed. * Node.pm (==, !=): Implemented. (manakai_read_only): Implemented. (is_same_node): Implemented. (is_equal_node): Alpha version. (manakai_set_read_only): Alpha version. (child_nodes, first_child, last_child, previous_sibling): Duplicate definitions are removed. 2007-06-16 Wakaba * Node.pm: First alpha version of implementation of attributes. 2007-06-15 Wakaba * ProcessingInstruction.pm, EntityReference.pm, CDATASection, DocumentFragment.pm, DOMDocument.pm, Entity.pm, ElementTypeDefinition.pm, AttributeDefinition.pm, DocumentType.pm, DOMElement.pm, Attr.pm, CharacterData.pm, Text.pm, Comment.pm (node_name, node_value, node_type): Implemented. 2007-06-14 Wakaba * Notation.pm, Entity.pm, EntityReference.pm, ProcessingInstruction.pm, CDATASection.pm, DocumentFragment.pm, ElementTypeDefinition.pm, AttributeDefinition.pm: New modules. * DOMDocument.pm (@ISA): 'Message::IF::DocumentXDoctype' added. (create_attribute_definition, create_element_type_definition, create_document_type_definition, create_cdata_section, create_processing_instruction, create_entity_reference, create_general_entity, create_notation): Prototypes added. * DOMImplementation.pm (create_document_type): Prototype added. * DocumentType.pm (@ISA), 'Message::IF::DocumentTypeDefinition' and 'Message::IF::DocumentTypeDeclaration' added. (create_document_type, create_document_type_definition): New methods. 2007-06-13 Wakaba * DOMImplementation.pm, Node.pm, DOMDocument.pm, DOMElement.pm, Attr.pm, DocumentType.pm, DOMCharacterData.pm, Text.pm, Comment.pm: Copied from . 2007-06-10 Wakaba * XMLParser.dis: Default to "1.0" if specifies unknown value and trys to recover from the error. 2007-05-13 Wakaba * TreeCore.dis (manakaiLocalName): New attribute. 2007-01-02 Wakaba * GenericLS.dis (GLSException): New interface. 2006-12-31 Wakaba * |InputProcessor|s and |OutputProcessor|s are named so that |report| statements in Perl module outputs can be identified by name. |dis:dataType|s of |DISCore:TFQNames| are all replaced by |DISCore:QName|. 2006-12-31 Wakaba * Element.dis (createElementNS): If an array reference is specified as the |qualifiedName| parameter, don't set the first item as the local name even if the second item is not specified (or specified as |undef|). (createElementNS, setAttribute, setAttributeNS, removeAttribute, removeAttributeNS, setAttributeNode, setAttributeNodeNS, removeAttributeNode, removeAttributeNodeNS): Sets or removes the |tc:contentAttributeList| value. * TreeCore.dis (AttrMap.item): Caches the result of sorting of content attribute names. (getAttrMap, getElementTypeDefNodeMap, getAttrDefNodeMap, getEntityNodeMap, getNotationNodeMap): Removed. (tc:contentAttributeList): New property. 2006-12-30 Wakaba * DOMFeature.dis (ForDef): Removed. (f:provides, f:through): Removed. (Version): Removed. (implementFeature): Removed. 2006-12-30 Wakaba * CharacterData.dis, DOMCore.dis, DOMFeature.dis, GenericLS.dis, TreeCore.dis, DOMString.dis, XML.dis, Element.dis, Document.dis, TreeStore,dis, Traversal.dis, XDoctype.dis, XMLParser.dis, DOMLS.dis, SimpleLS.dis, DOMMain.dis, XDP.dis: |For| specifications are removed. 2006-12-30 Wakaba * CharacterData.dis, DOMCore.dis, DOMFeature.dis, GenericLS.dis, TreeCore.dis, DOMString.dis, XML.dis, Element.dis, Document.dis, TreeStore,dis, Traversal.dis, XDoctype.dis, XMLParser.dis, DOMLS.dis, SimpleLS.dis, DOMMain.dis, XDP.dis: |WithFor| specifications and |DefaultFor|s are removed. 2006-12-30 Wakaba * CharacterData.dis, DOMCore.dis, DOMFeature.dis, GenericLS.dis, TreeCore.dis, DOMString.dis, XML.dis, Element.dis, Document.dis, TreeStore,dis, Traversal.dis, XDoctype.dis, XMLParser.dis, DOMLS.dis, SimpleLS.dis, DOMMain.dis: References to the |ManakaiDOM:ManakaiDOM|, |ManakaiDOM:ManakaiDOM1|, |ManakaiDOM:ManakaiDOM2|, and |ManakaiDOM:ManakaiDOM3| modes are removed. 2006-12-30 Wakaba * CharacterData.dis, TreeCore.dis (Require): References to the |Grove.dis| module are removed. 2006-12-30 Wakaba * DOMFeature.dis (f:implementation, f:revImplementation): Removed. (Require): Reference to the |Grove.dis| module is removed. 2006-12-30 Wakaba * DOMCore.dis (ManakaiDOMImplementation): The class is no longer plays the role of a |mg:NodeRefRole|. Redundant |f:provides| properties are removed. 2006-12-29 Wakaba * TreeCore.dis, DOMCore.dis, Document.dis, Element.dis, CharacterData.dis, XML.dis, XDoctype.dis, DOMString.dis, TreeStore.dis, XMLParser.dis: Use Perl native hashs and |Scalar::Util|'s weak references in favor of |Grove.dis| for DOM nodes. See also . 2006-12-03 Wakaba * DOMFeature.dis, TreeCore.dis: Unused |role|s are removed. 2006-12-02 Wakaba * DOMString.dis: New module. * DOMString.pm: New file. * DOMCore.dis (min): Moved from |DOMFeature.dis|. (ImplementationRegistryVariable): Moved from |DOMFeature.dis|. Now it references the |DOMImplementationRegistry| object. (DOMImplementationRegistryVariable): Moved from |DOMMain.dis|. (DOMImplementationRegistry): New interface and class, reformed from |ImplementationRegistry| in |DOMFeature.dis| and |DOMImplementationRegistry| in |DOMMain.dis|. Note that the class no longer support |get_implementation| and |get_implementation_list| methods from the |ImplementationRegistry| interface. (DOMImplementationList): Class implemented; no longer inherits from |ImplementationList|. (DOMImplementationSource): Class implemented; no longer inherits from |ImplementationSource|. Note that the class no longer support |get_implementation| and |get_implementation_list| methods from the |ImplementationSource| interface. (DOMStringList): Removed. * DOMFeature.dis (min, ManakaiDOM:DOMHTMLFeature, ManakaiDOM:DOMEventsFeature, ManakaiDOM:DOMXMLFeature, ManakaiDOM:DOMXMLFeatureXML11, most part of documentation for obsolete DOM Level 3 Minimum Implementation module, obsolete property name aliases, ImplemenationRegistryVar, ImplementationRegistry, DEBUG, MIString, ImplementationList, ImplementationSource, ManakaiDOM:implID): Removed. * DOMMain.dis (Redefine, RedefinedBy, Redefined): Removed. (DOMString): Removed. (DOMImplementationRegistryVar, DOMImplementationRegistry): Removed. * Makefile: |DOMString.pm| is added. * TreeCore.dis (is_default_namespace): |null| was returned where a false is expected (|null| is a false in Perl, but real |false| is appropriate here). 2006-11-05 Wakaba * DOMCore.dis (TypeInfo, UserDataHandler): Removed. * Element.dis (TypeInfo): Moved from |DOMCore.dis|. * TreeCore.dis (UserDataHandler): Moved from |DOMCore.dis|. 2006-11-05 Wakaba * DOMFeature.dis (ImplementationList, ImplementationSource, ImplementationRegistry): Parameters |features| now allow |null| (equivalent to an empty string). 2006-11-05 Wakaba * CharacterData.dis (ManakaiDOMDocumentCharacterData): New class. Factory methods |createTextNode| and |createComment| are moved from |ManakaiDOMDocument|. * DOMCore.dis: References to |ManakaiDOMObject| are removed. (tc:createImplForTest): Moved from |TreeCore.dis|. (DOMImplementation.___create_node_ref): Support for the |mg:nodeRefClass| option is removed. (ManakaiDOMConfiguration.___report_error): Moved from |ManakaiDOMObject| class. * DOMFeature.dis (domidl:extends): New property. (f:getFeatureImpl): Support for |+| classes is removed. * DOMMain.dis (DOMMain:docSupportsXMLFeature): Removed. (ManakaiDOM:ManakaiDOMObject): Removed. (DOMDataType): Removed. * Document.dis (ManakaiDOMImplementationDocument): The |createDocument| method is moved from the |ManakaiDOMImplementationTC| in |TreeCore.dis|. (ManakaiDOMDocument.___create_node_ref): Removed. (createElement, createElementNS, createAttribute, createAttributeNS, createTextNode, createComment, createCDATASection, createEntityReference, createProcessingInstruction): Class implementations are moved to each module. * Element.dis (ManakaiDOMImplementationElement): Factory methods are moved from |Document.dis|. (ManakaiDOMElement.___create_node_ref): Support for old class registry is removed. (ManakaiDOMAttr.___create_node_ref): Removed. (Attr.baseURI): Implementation for |xml:base| attribute is merged. (Attr.nodeValue, Attr.value): Implementation for |xml:id| attribute is merged. * TreeCore.dis (ManakaiDOMImplementationTC): Removed. * XDoctype.dis (ManakaiDOMImplementationXDoctype): The definition for |createDocumentType| method is moved from |TreeCore.dis|. * XML.dis (ManakaiDOMXMLDocument): Factory methods are moved from |Document.dis|. (ManakaiDOMXMLBaseAttr, ManakaiDOMXMLIdAttr): Removed (merged into |ManakaiDOMAttr| in |Element.dis|). 2006-11-05 Wakaba * Element.dis (___get_node_ref): |eval|ed |require| statement was broken. * DOMFeature.dis (getImplementationList): Argument is not passed to the |getImplementation| method. * TreeStore.dis (DOMImplementationTreeStore): It did not |f:implements| the |TSFeature30| feature. * XMLParser.dis: Use |create_uri_reference| method instead of internal |_new| method to create a URI reference object. 2006-11-04 Wakaba * DOMCore.dis (ManakaiDOMImplementation): No longer explicitly inherits |urigen:ManakaiURIImplementation| (and the |f:ManakaiMinimumImplementation| class inherited by it). The |f:Minimum| feature is ever implemented for compatibility (but is expected to be removed). Internal methods such as |___report_error| are copied from obsolete |f:MinimumImplementation| class. DOM3 methods |hasFeature| and |getFeature| are also moved from that class, but they now support no foreign classes. * DOMFeature.dis (ManakaiImplementationSource): It now |p:require|s |Message::Util::AutoLoad::Registry|. The class no longer support classes other than |ManakaiDOMImplementation|. Note that the |ImplementationRegistry| object does continue to support foreign classes via foreign classes implementing |ImplementationSource| or |DOMImplementationSource| interface. (MinimumImplementation): Removed. * DOMLS.dis (ManakaiDOMImplementationLS): It no longer inherit the |ManakaiDOMImplementation|; it is now expected to be implemented by |DOMImplementation| objects. * DOMMain.dis (null): Removed. * Document.dis (___create_node_ref): It no longer support foreign classes other than |Message::DOM::Document::ManakaiDOMDocument|. Note that document format specific DOM interfaces, if supported, should be all instances of the |Document| interface in the implementation, as defined in the Web Applications 1.0 specification (where the |HTMLDocument| interface must be implemented by all |Document| objects, even if the |Document| contains no HTML element). * GenericLS.dis (GLSImplementation): It no longer inherit the |MinimumImplementation|; it is now expected to be implemented by |DOMImplementation| objects. (createGLSParser, createGLSSerializer): Load module implementing parser or serializer if necessary. * Traversal.dis (ManakaiDOMDocumentTraversal): It no longer inherits the |ManakaiDOMDocument|; it is now expected to be implemented by |Document| objects. * XDP.dis (XDPDocument): It no longer inherits the |Document|; it is now expected to be implemented by all |Document| objects. * XDoctype.dis (ManakaiDOMDocumentXDoctype): It no longer inherits the |ManakaiDOMDocument|; it is now expected to be implemented by |Document| objects. 2006-11-04 Wakaba * DOMCore.dis (ManakaiDOMImplementation): No longer explicitly inherits |tc:ManakaiDOMImplementationTC|. (ManakaiDOMImplementation.AUTOLOAD): New method definition. * TreeCore.dis (ManakaiDOMImplementationTC): Extends the |ManakaiDOMImplementation| class. 2006-11-03 Wakaba * DOMFeature.dis: Definitions for various concepts are added. * GenericLS.dis (GLSImplementation): It no longer inherits the |MinimumImplementation|; rather, any |ManakaiMinimumImplementation| object also implements |GLSImplementation| methods. * TreeStore.dis (DOMImplementationTreeStore): It no longer inherits the |DOMImplementation|; rather, any |ManakaiDOMImplementation| object also implements |DOMImplementationTreeStore| methods. 2006-08-15 Wakaba * TreeStore.pm: Added to the CVS repository to enable for the dis database to contain XML fragments. * Makefile (DOT_CORE_DIS_FILES): |TreeStore.pm| is added. * TreeStore.dis (Namespace): Namespace URI was incorrect. 2006-06-18 Wakaba * Traversal.dis (expandEntityReferences): Syntax was incorrect. * TreeCore.dis (manakaiReadOnly): Test assertion was incorrect. * XDP.dis (dtdText): Test assertion was incorrect. 2006-05-21 Wakaba * XDP.dis (XDPEntityValue.stringify): Don't escape any |%|s in |xdp:attr-definition| children. 2006-05-20 Wakaba * XDP.dis (createXDPRNIKeyword): The Perl method name property is added. 2006-05-20 Wakaba * XDP.dis (createXDPIf): New method. (XDPIfElement): New interface. 2006-05-15 Wakaba * XDP.dis (createXDPElement, createXDPAttlist, createXDPAttrDefinition): New methods. 2006-05-15 Wakaba * XDP.dis (XDPDocument): A number of constructor methods are added. (XDPTextDecl.dtdText): The |xml| target was missing. 2006-05-14 Wakaba * Traversal.dis (SerialWalker): New interface. (manakaiCreateSerialWalker): New method. 2006-05-13 Wakaba * Traversal.dis (testNode): Calls |acceptNode| method rather than |&{}| dereferencing. (acceptNode): Implemented. 2006-05-13 Wakaba * XDP.dis: New module. * Makefile: |XDP.dis| is added. * Traversal.dis (NodeFilter): |InputProcessor| and |OutputProcessor| are added. 2006-05-13 Wakaba * Traversal.dis (MANAKAI_FILTER_OPAQUE): New |AcceptNode| value. (TreeWalker): The |MANAKAI_FILTER_OPAQUE| value support is added. The |FILTER_REJECT| value is treated as |FILTER_ACCEPT| if the |currentNode| is in the rejected subtree as specified in the spec. 2006-05-05 Wakaba * SimpleLS.dis: An |xmlns:| prefix was missing. 2006-05-04 Wakaba * SimpleLS.dis: Namespace bugs are fixed. 2006-04-30 Wakaba * .cvsignore: Updated. * Traversal.dis: Unused declarations are removed. 2006-04-30 Wakaba * CharacterData.dis (Require): A reference to the |MDOM:Traversal| module is added. (wholeText): Implemented. 2006-04-30 Wakaba * Makefile: |Traversal.dis| is added. * Traversal.dis: New module. * TreeCore.dis (___report_error): Return value was not propagated. 2006-04-29 Wakaba * Element.dis (removeAttributeNS): A runtime error was occurred if there was no specified attribute node. * TreeCore.dis (manakaiLanguage): New attribute. 2006-04-28 Wakaba * TreeCore.dis (NodeList.manakaiReadOnly, NamedNodeMap.manakaiReadOnly): New attributes. (StaticNodeList): New interface. 2006-04-24 Wakaba * DOMCore.dis (c:SET_TO_NULL_ERR): New error code. 2006-04-22 Wakaba * SimpleLS.dis: Reimplemented. 2006-04-22 Wakaba * DOMCore.dis (NO_MODIFICATION_ALLOWED_ERR): It is now a qualified name. (tc:EXTERNAL_NODE_COMPARISON_ERR): New error type. * TreeCore.dis (compareDocumentPosition): Implemented. (normalize): Implemented. (STORESIZE, CLEAR): Were not implemented for |EmptyNodeList| class. 2006-04-16 Wakaba * DOMCore.dis (OUT_OF_BOUND_ERR, NEGATIVE_INDEX_ERR): Removed. 2006-04-16 Wakaba * CharacterData.dis (length, insertData, substringData, appendData, deleteData, replaceData, splitText): Reimplemented. * DOMCore.dis (NEGATIVE_LENGTH_ERR): New error. (c:index): The definition was missing. (c:length): New property. 2006-04-16 Wakaba * XMLParser.dis (close): Invoke |close| method rather than |close| function. 2006-04-16 Wakaba * CharacterData.dis: New module split from |TreeCore.dis|. * CharacterData.pm: Added to the CVS repository. * TreeCore.dis: The |CharacterData|, |Text|, and |Comment| interfaces are removed. (Require): A reference to the |MDOM:CharacterData| module is added. * DOMMain.dis (StringExtended, StringOutOfBoundsException): Removed. * DOMCore.dis (StringOutOfBoundsException): New error. * Makefile: |CharacterData.pm| is added. 2006-04-09 Wakaba * XMLParser.dis (Require): Requires the |MCharset:Encode| module. (parse): Set the |inputEncoding| attribute of the generated document object. (resolveLSInput default implementation): The |byteStream| and |encoding| attributes of the |LSInput| interface are now supported. (resolveLSInput): Parameters |impl| and |parser| are added. (InputFile.inputEncoding): New attribute. 2006-04-04 Wakaba * Document.dis (adoptNode test): Documents were made by different documents. 2006-04-04 Wakaba * XMLParser.dis: The |cfg:dtd-default-attributes| configuration parameter is changed to |cfg:dtd-default-attribute|. 2006-04-04 Wakaba * TreeCore.dis: The |DOMMain:raiseException| elements are replaced by |disPerl:EXCEPTION|s. 2006-04-03 Wakaba * DOMMain.dis (GetPropNode, CheckReadOnly): Removed. * Node.dis (cfg:dtd-default-attribute): The configuration parameter |cfg:dtd-default-attributes| is renamed as |cfg:dtd-default-attribute|. (Roles): Definitions are changed so that classes that implement those classes MUST implement the |Node| and its subinterfaces. (cfg:dtd-attribute-type): New configuration parameter. * Document.dis (adoptNode): Don't throw exception if |strictErrorChecking| is |false|. * Element.dis (setAttribute, setAttributeNS): Don't set [attribute type] if the |cfg:dtd-attribute-type| configuration parameter is set to |false|. (removeAttribute, removeAttributeNS, removeAttributeNode): Don't regenerate default attribute nodes if the |cfg:dtd-default-attribute| configuration parameter is set to |false|. 2006-04-02 Wakaba * TreeStore.dis: New module. * Makefile: |TreeStore.dis| is added. 2006-04-02 Wakaba * XMLParser.dis: Updated so that it can be used with |TreeCore.pm|, |Document.pm|, |Element.pm|, and |XML.pm|. Set the read-only flag to the |DocumentType|, |Entity|, and |EntityReference| noes. * Node.dis (textContent): It did not handle descendant element and entity reference nodes. * Element.dis, XML.dis (manakaiBaseURI.get): Its definition has been changed to return only explicit base URI specification. * DOMLS.dis (LSInput, LSOutput): They no longer inherits the |ManakaiDOM:ManakaiDOMObject| class. * Tree.dis, DOMXML.dis, ManakaiDOMLS2003.dis: Removed. * Tree.pm, DOMXML.pm: Removed. * TreeCore.pm, Document.pm, Element.pm: Added to the CVS repository since they are necessary to build the dis library. * Makefile: Sync'ed to new modules disposition. 2006-04-02 Wakaba * Makefile: Rules for |Tree.pm| and |DOMXML.pm| are removed. For |Element.pm| and |Document.pm| are added. * Document.dis, Element.dis: New module split from |TreeCore.dis|. * TreeCore.dis (Document, DocumentFragment, Element, Attr): Removed. 2006-04-01 Wakaba * DOMFeature.dis (getImplementation, getImplementationList): Support for new class information variables. (DOMLS:Generic): This old feature name is removed. * GenericLS.dis (createGLSParser, createGLSSerializer): Support for new class information variables. * TreeCore.dis (manakaiExpandedURI): New attribute. (Document, Element.___create_node_ref): New method implementations. 2006-04-01 Wakaba * TreeCore.dis (setIdAttribute, setIdAttributeNS, setIdAttributeNode): Reimplemented. (isId): Setter is added. (Element.normalize): Definition copied from the |MDOM:Tree| module. 2006-03-31 Wakaba * Makefile (clean-db): New rule. * TreeCore.dis (setUserData): Schedule to invoke the user data handler when the node is removed from the memory. (setAttribute, setAttributeNS): Set the [attribute type] if DTD attribute definition is available. (CharacterData members): Definitions copied from the |MDOM:Tree| module. 2006-03-31 Wakaba * DOMCore.dis (DOMStringList.==): New overloaded operator. * DOMFeature.dis (ManakaiHasFeatureByGetFeature): The class did not implement the |GetFeature| interface. (hasFeature): The |+| prefix was not taken into account. * TreeCore.dis (Node): The class now inherits the |ManakaiHasFeatureByGetFeature| class. It now implements the |f:GetFeature| and |ecore:MUErrorTarget| interfaces. (CreateNodeRefMethod): The |mg:nodeRefInterfaces| option is supported. (lookupNamespaceURI, lookupPrefix, isDefaultNamespace): Reimplemented. (manakaiParentElement): New attribute. * XDoctype.dis (d:Feature): Old feature name |ManakaiDOM:XDoctype| is removed. (lookupPrefix): Old method implementation is removed. * XML.dis (CDATASection): The |mg:NodeRefRole| was missing because of the |DISCore:stopISARecursive| property. * TreeCore.dis, XML.dis, XDoctype.dis, DOMCore.dis, DOMFeature.dis: They now pass all tests included in those modules! 2006-03-30 Wakaba * DOMCore.dis (Require): A reference to the |MURI:Generic| module is added. (ManakaiDOMStringList.DESTROY): Removed (no longer necessary). (ManakaiDOMImplementation): It now inherits the |urigen:ManakaiURIImplementation| class and implements the |ecore:MUErrorTarget| interface. It no longer inherits the |ManakaiDOM:ManakaiDOMObject| class. (ManakaiDOMImplementation.___report_error): New method. * DOMFeature.dis (Require): It now references the |Util:Grove| module instead of |Util:ManakaiNode| module. (DOMMetaImpl:ManakaiDOMImplementationRole): Removed. (f:ManakaiMinimumImplementationCompatible): New role. (ManakaiMinimumImplementation): Now it is built on the new |Util:Grove| module rather than the |Util:ManakaiNode| module. (f:getFeatureImpl): Moved from the |MDOM:TreeCore| module. (c:implementation): Removed. (f:implementation, f:revImplementation): New properties. * DOMMain.dis (checkNamespacePrefix): DOM2 codes are removed. * Tree.dis (cfg:clone-entity-reference-subtree, cfg:dtd-default-attributes, cfg:xml-id, cfg:strict-document-children): Removed (moved to the |MDOM:TreeCore| module). * TreeCore.dis (Require): The reference to the |MURI:Generic| module is removed. (ManakaiDOMImplementationTC): Some members are removed since they are incorporated to the |c:ManakaiDOMImplementation| or the |f:ManakaiMinimumImplementation|. (tc:nodeRefClass): Removed (moved to the |Util:Grove| module). (replaceChildImpl1): A typo on the removing the parent node of the old child node is fixed. (f:getFeatureImpl): Removed (moved to the |MDOM:DOMFeature| module). (tc:implementation, tc:revImplementation): Removed (moved to the |MDOM:DOMFeature| module). (Document.appendChild, insertBefore, replaceChild): Sets the |ownerDocument| attribute of the |tx:DocumentType| nodes. (Attr.prefix, Element.prefix): Don't raise "uninitialized" when the new value is |null|. (Attr.___create_node_ref): Attribute name and owner element type specific classes are supported (it was partially implemented but was incorrect). (ManakaiDOMGetElementsNodeList.item): Don't return a node if the |index| is negative. (setNamedItem): Various typos are fixed. (removeNamedItem): The node was not removed orz (cfg:clone-entity-reference-subtree, cfg:dtd-default-attributes, cfg:xml-id, cfg:strict-document-children): Definitions are moved from the |MDOM:Tree| module. Note that the tests for default attributes still fail. (ErrDef, IntPropDef): Moved from the |MDOM:Tree| module. (Attr): Role name was incorrect. * XDoctype.dis (setDefinitionNode): Return value was not set. (AttributeDefinition): Role name was incorrect. * XML.dis (Require): A reference to the |DISlib:DISMarkup| module is added. (Notation.appendChild, insertBefore, replaceChild): New method implementations. (Entity.appendChild, insertBefore, replaceChild): New method implementations. (EntityReference.appendChild, insertBefore, replaceChild): Now they are defined as copies of ones in the |Entity| class. (XMLBaseAttribute, XMLIdAttribute): Now they are namespace unaware attributes. (XMLBaseAttributeNS, XMLIdAttributeNS): New attributes. (ManakaiDOMXMLBaseAttr, ManakaiDOMXMLIdAttr): References to namespace aware attributes are added. 2006-03-29 Wakaba * DOMCore.dis: Namespace prefixes are changed to new ones. * TreeCore.dis (createDocument, createDocumentType): Reimplemented (but untested). (___report_error): Reimplemented (untested). (manakaiSetReadOnly): New method. (Attr.___create_node_ref): New method (untested). (Document.getFeature): |require|s the |MDOM:XML| Perl module. (createEntityReference, cloneNode): Support for the |cfg:entity-reference-read-only| configuration parameter is removed; newly created entity references are always read-only and use the |manakaiSetReadOnly| method if desired. (Element.manakaiBaseURI): Reimplemented (untested). * XDoctype.dis (createGeneralEntity, createNotation): |require|s the |MDOM:XML| Perl module. (DocumentTypeDefinition.___create_node_stem): Sets the |tc:implementation| internal property if its value is provided. The |infoset:content| internal property name was incorrect. (DocumentTypeDefinition, ElementTypeDefinition): |MUST|s on read-only |NodeList| and |DOMStringList| are added for clarification. 2006-03-26 Wakaba * DOMCore.dis (Require): Reference to the |MDOM:TreeCore| module is added. (DOMStringList): Reimplemented for new |d:AttributeDefinition| implementation (untested). * TreeCore.dis (baseURI): Reimplemented (untested). (Roles): Definitions added. * XDoctype.dis (Require): References to the |MDOM:TreeCore| and |MDOM:XML| modules are added. Reference to the |MDOM:Tree| module is removed. (DocumentXDoctype): Reimplemented (untested). (DocumentTypeDefinition, DocumentTypeDeclaration): Reimlemented (untested). (ElementTypeDefinition, AttributeDefinition): Reimplemented (untested). * XML.dis (FeatureDef): New features (definitions copied from the |MDOM:DOMXML| module). (DocumentType): New interface (definition copied from the |MDOM:DOMXML| module). (CDATASection, Notation, Entity, EntityReference, ProcessingInstruction): Reimplemented (untested). (ManakaiDOMXMLBaseAttr, ManakaiDOMXMLIdAttr): Reimplemented (untested). 2006-03-25 Wakaba * TreeCore.dis (Document): Most methods are reimplemented (untested). 2006-03-25 Wakaba * TreeCore.dis (Document): Attributes are reimplemented (untested). (Text, DocumentFragment, Comment): Most members are reimplemented (untested). 2006-03-24 Wakaba * DOMMain.dis (checkXMLNamesQName): Some checks are removed to sync with DOM Level 3 Core specification. * TreeCore.dis (Element): Most methods are reimplemented (untested). (GetElementsNodeList): Reimplemented (untested). 2006-03-23 Wakaba * Tree.dis (cfg:strict-document-children): The configuration parameter must also affect on |manakaiAppendText| and |textContent| on |Document| nodes. * TreeCore.dis (Node.CreateNodeRefMethod): The |tc:nodeRefClass| parameter changes the class to |bless|. (Node): Most methods are reimplemented. (Untested) (CharacterData, Attr): Most methods and attributes are reimplemented. (Untested) * XML.dis, XDoctype.dis: Most |Node| methods are reimplemented (untested). 2006-03-23 Wakaba * TreeCore.dis, XML.dis, XDoctype.dis (Node.textContent): Reimplemented (untested). 2006-03-22 Wakaba * DOMCore.dis (DOMSTRING_SIZE_ERR): It now has a qualified name. * DOMMain.dis (ensureNamespacePrefix): Undefines the prefix if it is an empty string. (Note that it is defined as implementation dependent in DOM Level 3 Core specification). * TreeCore.dis (Require): It now references the |MDOM:XDoctype| module. (Node): Attributes are reimplemented (untested). * XML.dis (Require): It now references the |MDOMX:XDoctype| module. (Node): Attributes are reimplemented (untested). (Entity, Notation): New interfaces. * XDoctype.dis (Node): Attributes are reimplemented (untested). 2006-03-19 Wakaba * TreeCore.dis (childNodes, firstChild, lastChild, nextSibling, previousSibling, appendChild, insertBefore, replaceChild, removeChild, createDocumentFragment, createEntityReference, createProcessingInstruction, domConfig, documentElement, implementation, manakaiAppendText): New. (NodeList, DocumentFragment): New interfaces. * XML.dis (EntityReference, ProcessingInstruction): New interface. 2006-03-18 Wakaba * TreeCore.dis (Require): The |MDOM:XML| module is added. (createAttributeNS, createTextNode, createComment, createCDATASection): New methods. (Attr, Text, Comment, CharacterData): New interfaces. * Makefile: |XML.dis| is added. * XML.dis: New module. 2006-03-17 Wakaba * TreeCore.dis (manakaiReadOnly): New attribute. 2006-03-17 Wakaba * TreeCore.dis (NodeType, nodeType, localName, namespaceURI, prefix, isSameNode, ownerDocument, parentNode): New. (Element): New interface. (createElementNS): New method. (strictErrorChecking): New. 2006-03-17 Wakaba * Makefile: |TreeCore.dis| is added. * TreeCore.dis: New module. 2006-03-16 Wakaba * XMLParser.dis (cfg:entity-replacement-tree): New configuration parameter. * DOMXML.dis (manakaiExpanded): Renamed from |isExpanded|. * DOMCore.dis, Tree.dis, DOMLS.dis, XMLParser.dis: Lexical data types added to configuration parameters. 2006-03-15 Wakaba * DOMCore.dis (c:DOMConfigurationParameter): Now it is a |DISSource:ResourceProperty|. (c:anyDOMConfigurationParameter): New property. (CParam, boolCParam): Now they are all |dis:subsetOf| the |c:anyDOMConfigurationParameter| property. (ForDocument, ForParser, ForSerializer): Removed. * DOMLS.dis, XMLParser.dis: Likewise. 2006-03-12 Wakaba * DOMMain.dis, Tree.dis: Unused |dis:aliasChild| properties are removed. * GenericLS.pm: Added to the CVS repository since it is necessary to create the |Message::Util::DIS::DPG| module. 2006-03-10 Wakaba * DOMCore.dis, DOMXML.dis, XDoctype.dis (manakaiAppendText): New method. * XMLParser.dis: Don't create adjacent text nodes. 2006-03-09 Wakaba * DOMCore.dis (HIERARCHY_DOCUMENT_FRAGMENT_ITSELF_ERR): New error. * DOMXML.dis (appendChild, insertBefore, replaceChild): Method implementations are added. * XDoctype.dis (appendChild, insertBefore, replaceChild): Method implementations are added. * Tree.dis (appendChild, insertBefore, replaceChild): Method implementations are added. (IFCls1Def, NodeTypeDef): Don't define |ManakaiDOM:ForClass| resources unless for |ManakaiDOM:ManakaiDOMLatest|. (cfg:strict-document-children): New configuration parameter. 2006-03-08 Wakaba * XDoctype.dis (replaceChild): Method implementations are added. * Tree.dis (replaceChild): Method implementations are added. * DOMXML.dis (replaceChild): Method implementations are added. 2006-03-07 Wakaba * Tree.dis (ForAppendChild, ForInsertBefore, ForReplaceChild): New |for| definitions. * XDoctype.dis (insertBefore): New method implementation. 2006-03-06 Wakaba * DOMXML.dis (insertBefore): Method implementations for |ProcessingInstruction| and |Notation| nodes are added. * Tree.dis (insertBefore): Method implementation for |CharacterData| nodes is added. * XDoctype.dis (insertBefore): Method implementation for |ElementTypeDefinition| nodes is added. 2006-03-06 Wakaba * XDoctype.dis (appendChild): New method implementation. 2006-03-06 Wakaba * DOMCore.dis (HIERARCHY_WRONG_DOCTYPE_ERR): New error. (REMOVE_DOCUMENT_ELEMENT_ERR): New error. (REMOVE_DOCUMENT_TYPE_ERR): New error. * DOMXML.dis (ManakaiDOMDocumentType): Removed. (ProcessingInstruction.appendChild, CDATASection.appendChild, Notation.appendChild): New method implementation. * Tree.dis (CharacterData.appendChild): New method implementation. * XDoctype.dis: Tests moved from |MDOM:DOMXML| module. 2006-03-06 Wakaba * DOMXML.dis (ManakaiDOMXMLIdAttr): New class. * Tree.dis (createAttribute, createAttributeNS, setAttribute, setAttributeNS): They now supports the |cfg:xml-id| configuration parameter. (cfg:xml-id): New configuration parameter. * XDoctype.dis (createAttributeDefinition): It now supports the |cfg:xml-id| configuration parameter. * XMLParser.dis (parse): It now supports the |cfg:xml-id| configuration parameter. 2006-03-05 Wakaba * XMLParser.dis (parse): Sets |Document.documentURI| and |Document.manakaiEntityBaseURI| attributes of the document created. (_ProcessingInstructionDTD): Sets the |manakaiBaseURI| property of the created node. (_SystemLiteral): Sets the |manakaiDeclarationBaseURI| of the created node. (ls-input-to-input-file.default): Sets the resolved system identifier to the |documentURI| attribute if available. Sets the |baseURI| attribute if available. 2006-03-05 Wakaba * XDoctype.dis (DocumentTypeDefinition.implementation): New attribute. (Node.baseURI): New attribute implementations. (declarationBaseURI): Setter is added. (manakaiDeclarationBaseURI): New attribute. * Tree.dis (Require): A reference to the |MURI:Generic| module is added. (Node.baseURI): The implementation is revised. (getNodeReference): Attribute node classes specialized to attribute names are supported. (contentBaseURI, htmlBaseURI): Removed. (manakaiEntityBaseURI): New attribute. (ManakaiDOMImplementationDocument): It now inherits the |urigen:URIImplementation| class. * DOMMain.dis (isRelativeDOMURI): The definition of the URI scheme is synced with |Message::URI::Generic|'s one. * DOMXML.dis (Require): A reference to |DISlib:DISMarkup| module is added. (DocumentType.implementation): New attribute. (Node.baseURI): Implementations are added. (manakaiDeclarationBaseURI): New attributes. (manakaiEntityBaseURI): New attributes. (manakaiEntityURI): New attribute. (manakaiExternal): New attribute. (manakaiBaseURI): New attribute. (ManakaiDOMXMLBaseAttr): New class. 2006-02-26 Wakaba * SimpleLS.dis (Require): Reference to the |MDOM:Tree| module was missing. * ManakaiDOMLS2003.dis: Some property names was incorrect. * Makefile (distclean): New rule. 2006-02-26 Wakaba * DOMLS.dis: Removed from the CVS repository, since it has been no longer required to make the |daf| system itself. 2006-02-26 Wakaba * Makefile: Revised for new |daf| database format. 2006-02-25 Wakaba * DOMFeature.dis (Require): Missing reference to |DISlib:Test| module is added. 2006-02-22 Wakaba * DOMLS.dis: Constants were typed as |dx:ErrorCode| by mistake. 2006-02-18 Wakaba * XMLParser.dis (ManakaiDOMXMLParser): Implements |DOMLS:ParseString10| feature. * DOMCore.dis (c:LSPARSER_NOT_FOUND_ERR): New exception type. * DOMLS.dis (DOMLS:ParseString): New (moved from |SimpleLS.dis|). (DOMImplementationLS.createLSParser): Implemented. (DOMImplementationLS.createLSInput): Revised. (LSInput): Note on relationship with |GenericLS| is added. * SimpleLS.dis (DOMLS:ParseString): Removed (moved to |SimpleLS.dis|). 2006-02-17 Wakaba * XMLParser.dis (domConfig): New |targetType| of |xp:ManakaiDOMXMLParser| is introduced. (async, busy): Implemented. (parseString): Removed. (parse, parseURI): Implemented. (xp:ls-input-to-input-file): New configuration parameter. (shiftChar): Gets character from current file handle rather than replacement text. Don't normalize line break characters for internal entities. Don't throw |xp:wf-legal-literal-character| error for |RestrictedChar| appearing in internal entities. (DISPerl:dpgDef): Call |close| for each entity filehandler. (_EntityDeclaration): Copy document URI and base URI to the entity's |$decl| object. (ParseError): New code fragment. (getCopyOfEntityState): Creates filehandle from replacement text. (xp-error-lines): Don't appends text if no replacement text is available. (error-handler): New configuration parameter application resource. (ManakaiDOMLSInputToInputFile): New class. (ManakaiDOMInputFile): New class. * Tree.dis (getNodeReference): A dereferencing was missing. * DOMLS.dis (DOMLS:busy, DOMLS:lsKey): New properties. 2006-02-17 Wakaba * XMLParser.dis: Default attribute are now namespace aware. (parseString): Don't output |Document| warnings during tree construction to standard error output. 2006-02-16 Wakaba * XMLParser.dis: Name check for XML 1.0, XML Namespace 1.0, and XML Namespace 1.1 is implemented. Namespace well-formedness error detection is implemented. Generates |Notation| nodes from notation declarations. (checkNCName, checkQName): New code fragments. * XDoctype.dis (DocumentXDoctype): Factory methods don't check |MDOMX:MDOM_BAD_NAME| if |Document.strictErrorChecking| is |false|. * DOMCore.dis (wf-invalid-character-in-node-name, wf-invalid-character): Removed (moved to |MDOM:Tree| module). * Tree.dis '(wf-invalid-character-in-node-name, wf-invalid-character): New errors (from |MDOM:DOMCore| module). (Attr.specified): Setter added. (cfg:dtd-default-attributes): New configuration parameter. (Document.createEntityReference): Don't check |MDOMX:MDOM_BAD_NAME| if |Document.strictErrorChecking| is |false|. 2006-02-15 Wakaba * XMLParser.dis: Set |allDeclarationsProcessed| attribute of the |Document| node. Don't process entity and attribute definition list declarations after unread parameter entity reference. Warns if an attribute definition is ignored (|xp:warning-attribute-definition-ignored|). Set flags whether predefined entities are declared or not. WFC error |xp:wf-pes-in-internal-subset| is implemented. 2006-02-15 Wakaba * XMLParser.dis: Issues |xp:error-internal-predefined-entity| error if a predefined entity declaration references an external entity. Issues |xp:error-malformed-predefined-entity| error if a predefined entity declaration defines different thing than one as in XML specification. Issies |xp:warning-entity-declaration-ignored| warning if more than one entity declarations for an entity is found. (WFErrDef): Now all well-formedness errors are marked as |SEVERITY_FATAL_ERROR|. * XDoctype.dis (DocumentXDoctype.createDocumentTypeDefinition): Creates predefined entity declarations. (DocumentXDoctype.createNotation): New method. (DocumentTypeDefinition.notations): New attribute. (DocumentTypeDefinition.getNotationNode): New method. (DocumentTypeDefinition.setNotationNode): New method. (newNotationForTest): New code fragment. * Tree.dis (ManakaiDOMXML:ManakaiDOMNotations): Removed. (c:ManakaiDOMNotationMap): New class. (c:ManakaiDOMNotationMapArray): New class. (Document.allDeclarationsProcessed): New attribute. * DOMXML.dis (DocumentType.notations): Implemented. (Notation): Revised. (Notation.ownerDocumentTypeDefinition): New attribute. 2006-02-14 Wakaba * XMLParser.dis: The |xp:wf-parsed-entity| and the |xp:wf-no-recursion| WFC errors are implemented. Reports a |xp:wf-syntax-error| if a parameter entity declaration contains |NDATA| keyword. (setEmptyEntityState): Set |name| attribute. * Tree.dis (createEntityReference): Don't enter into inifinite loop even if entity replacement tree contains recursive reference directly or indirectly. 2006-02-13 Wakaba * XMLParser.dis (_GeneralEntityReferenceAE): The |xp:wf-entity-declared| WFC error is implemented. 2006-02-13 Wakaba * XMLParser.dis: Set |cfg:clone-entity-reference-subtree| configuration parameter |true| during tree construction to ensure default attribute value is cloned as is including entity reference subtree. * Tree.dis (cfg:clone-entity-reference-subtree): New configuration parameter. (Node.cloneNode): The |cfg:clone-entity-reference-subtree| configuration parameter support is added. 2006-02-12 Wakaba * XMLParser.dis (parseString): General |Entity| replacement tree is not constructed because of a typo. Clears |EntityReference| content before constructing |Entity| replacement tree. The |xp:wf-entity-declared| well-formedness constraint for entity references in attribute value literal is implemented. 2006-02-11 Wakaba * XMLParser.dis: |xp:wf-entity-declared| well-formedness constaraint for entity references that appear in content of elements is implemented. Set |EntityReference.isExpanded| attribute. (getEmptyEntityState): New code. * XDoctype.dis (DocumentTypeDefinition.nodeType): Duplicate definition is removed. * DOMXML.dis (Entity.isExternallyDeclared): New attribute. (EntityReference.isExpanded): Setter is added. 2006-02-11 Wakaba * XMLParser.dis: |xp:wf-no-lt-in-attribute-values| and |xp:wf-no-external-entity-references| well-formedness constraints are implemented. 2006-02-11 Wakaba * XMLParser.dis ($self->{has_error}): Removed. (parseString): Don't throw |DOMLS:PARSE_ERR| if all fatal errors (including well-formedness constraint errors) are traped by the error handler. (PubidLiteral, SystemLiteral): Set |publicId| or |systemId| attribute of the node. Reports an error if |publidLiteral| contains a non-|pubidChar|. * XDoctype.dis (d:DeclFeature30): New feature (|fe:XDoctypeDeclaration| version |3.0|). (ManakaiDOMDocumentTypeDefinition): The class no longer inherits |x:ManakaiDOMDocumentType| class. Instead, it inherits |d:ManakaiDOMDocumentTypeDeclaration| and |t:ManakaiDOMNOde| classes. It still implements |x:DocumentType| interface (except unimplemented |notations| and |internalSubset| attributes). (ManakaiDOMDocumentTypeDefinition.entities): New attribute for compatibility with |x:DocumentType| interface. (ManakaiDOMDocumentTypeDefinition.lookupPrefix): New method. (ManakaiDOMDocumentTypeDefinition.getFeature): New method. (ManakaiDOMDocumentTypeDefinition.nodeType, ManakaiDOMDocumentTypeDefinition.textContent): New attributes. (DocumentTypeDeclaration): New interface. * Tree.dis (Node/@f:implements): Typos fixed. (Node.MUErrorHandler): Missing |last A| statement is added. (createDocumentType): Throws an exception if |qualifiedName| is illegal. Calls |DocumentTypeDefinition.newObject| instead of obsolete |DocumentType.newObject|. * DOMXML.dis (DocumentType.name, DocumentType.entities, DocumentType.publicId, DocumentType.systemId, DocumentType.lookupPrefix, DocumentType.getFeature): Now they are defined as clones of similar attributes or methods in |MDOM:XDoctype| module. (DocumentType.newObject): Removed (use |DocumentTypeDefinition.newObject| instead). (DocumentType.childNodes): Removed (|Node.childNodes| definition is used). 2006-02-10 Wakaba * XMLParser.dis (xp:fatal-xml11-end-of-line-in-xml-declaration): New fatal error. 2006-02-09 Wakaba * XMLParser.dis (CommentDeclaration): |STRING| is now defined as a |?default-token|. (XMLTests): Tests for |Char - RestrictedChar| matchness, comment declarations, cdata sections, and |MSE| in |content| added. (XMLTests/PerlDef): Bug fixed: |pop| -> |shift|. (get-location-from-token): |$token->{location_d}| for |?default-token| column counting support added. * DOMCore.dis (c:erred): It is now a |DISCore:OrderedList| property. 2006-02-08 Wakaba * Tree.dis (createProcessingInstruction): Don't throw |MDOMX:MDOM_BAD_NAME| exception if |Document.strictErrorChecking| is |false|. * XMLParser.dis (parseString): Initializes |$self->{location}|. It enables improved error position report. (XDO): It now includes |S+| following target name |xml| as part of the token. (PI with target starting with |xml| was unable to be placed at the beginning of the document entity.) (_ProcessingInstruction, _ProcessingInstructionDTD): Creates a processing instruction node with |#INVALID| node name if target name is not given and recovered from the error. (S): Variable |$s| added. (XMLTests): Tests for XML declarations and processing instructions are added. Prints error type name if unexpected error with severity of error or fatal error has been reported. Catch unexpected exceptions thrown in parser (different from |LSException|), prints its message, and invoke |$test->not_ok| for the ease of testing. (xp:get-location-from-token): Location values now take |$self->{char}| stack into acount. 2006-02-08 Wakaba * XMLParser.dis (shiftChar): Line and column number counting is fixed. Although the DOM Level 3 Core specification is unclear about whether the first number is zero or one, in most programs the first line is "one" and the first column is "one", manakai follows the practice. (_XMLDeclaration): Don't set |xmlStandalone| value if |standalone| pseudo-attribute value is |no|. XML declaration tests (successful cases) added. (xp:get-location-from-token): Sets |lineNumber| and |columnNumber| properties. 2006-02-08 Wakaba * XMLParser.dis (XMLTests): Tests for |c:erred| is supported. 2006-02-06 Wakaba * DOMCore.dis (c:erred): New property. (c:DOMErrorType): It should have been a subset of |ecore:AnyErrorCode|. * XMLParser.dis (XMLTests): Empty input tests added. 2006-01-30 Wakaba * XDoctype.dis (d:Feature): New canonical feature name |fe:XDoctype| is added. * XMLParser.dis: Predefined general entity references are implemented. Creates |Entity| nodes from general entities declared in internal subset. |Entity| nodes created from internal general parsed entities now have replacement tree. Sets |cfg:entity-reference-read-only| flag off during the tree generation. Some parsing rules use |$self->{doc}| rather than |$doc| parameter. Similarly, |$self->{docx}| (document node with |fe:XDoctype| feature) and |$self->{dtdef}| are introduced. General entity references in attribute value literal are supported. 2006-01-29 Wakaba * Tree.dis (ManakaiDOM:entity-reference-read-only): Configuration parameter name changed to |cfg:entity-reference-read-only|. (createEntityReference): Set |c:read-only| flag of the created entity reference, too. * DOMLS.dis (min): New canonical feature name |fe:Min| added. * GenericLS.dis: Don't refer |DOMMain:DOMString|; use |f:MIString| from |DOMFeature| module instead. Use |idl:Object| instead of |DOMMain:DOMObject| as well. (Generic): New canonical feature name |fe:GenericLS| added. (DOMLS:ParserRole, DOMLS:SerializerRole): Their canonical name changed to |gls:ParserRole| and |gls:SerializerRole| respectively. * DOMXML.dis (entities, notations): Perl code removed. It will be reimplemented using |DocumentTypeDefinition| class from |XDoctype| module. * DOMFeature.dis, DOMCore.dis, DOMMain.dis, DOMXML.dis, Tree.dis, DOMLS.dis, GenericLS.dis, ManakaiDOMLS2003.dis, SimpleLS.dis: Cleaned up unused definitions. * DOMCore.dis, DOMLS.dis (CParam): Definitions for LS module moved from |DOMCore| module to |DOMLS| module. This change makes |DOMCore| to |DOMLS| dependency removed. * .cvsignore (.html.pm, .ls.pm): Removed. * Makefile (.html.pm, .ls.pm): Removed. (feature.dae): Include |GenericLS| module. (core.dae): Don't include |DOMLS| and |GenericLS| module. (ls.dae): Include |DOMLS| module. 2006-01-29 Wakaba * XMLParser.dis: Tests on default attributes and their |specified| attribute are added. * XDoctype.dis (createGeneralEntity): New method. (generalEntities): New attribute. (getGeneralEntityNode, setGeneralEntityNode): New methods. * Tree.dis (ManakaiDOMEntities): Removed. (ManakaiDOMEntityMap): New class. (ManakaiDOM:entity-reference-read-only): New configuration parameter. (createEntityReference): If there is a corresponding |Entity| node in the document type definition, then copies its subtree. * DOMXML.dis (Entity): Documentation updated. (publicId, systemId, notationName, xmlEncoding, xmlVersion): These attributes are now settable if |ManakaiDOM:ManakaiDOMLatest| mode. (hasReplacementTree): New attribute for |ManakaiDOM:ManakaiDOMLatest| mode. (ownerDocumentTypeDefinition): New attribute for |ManakaiDOM:ManakaiDOMLatest| mode. (isExpanded): New attribute for |ManakaiDOM:ManakaiDOMLatest| mode. 2006-01-28 Wakaba * DOMCore.dis (ErrDef): Missing |ecore:textFormatter| property added. * DOMMain.dis (ErrDef): Missing |ecore:textFormatter| property added. * Tree.dis (ErrDef): Missing |ecore:textFormatter| property added. (ManakaiDOMAttributes): Removed. (ManakaiDOMAttrMap): New class. (ManakaiDOMAttrMapArray): New class. (namespaceURI): Bug to return a string representation of a reference to the namespace URI string is fixed. (selectAttrNodeObject, selectAttrNodeObjectNodeNS): Reimplemented. (removeAttribute, removeAttributeNS): DTD default attributes are supported. Don't throw |NO_MODIFICATION_ALLOWED_ERR| if there is no attribute node. (createElement, createElementNS): DTD default attributes are supported. (setAttributeNode): Reimplemented. 2006-01-27 Wakaba * DOMCore.dis (ManakaiDOMDTDTypeInfo): New class. * Tree.dis (STORESIZE): Index bound bug fixed. (Attr.value): Redefined to consist with |AttributeDefinition.nodeValue|. (schemaTypeInfo): Implemented for XML DTD. (isId): Returns |true| if [attribute type] is |ID|. (setAttribute, setAttributeNS): Sets [attribute type] of the newly created |Attr| node (if any) when attribute definition is available. (doctype, documentElement): Reimplemented with tests. * XMLParser.dis: Sets [attribute type] information to created |Attr| nodes. Normalize namespace URIs when such information are available (unlikely but legal). (_HexadecimalCharacterReference): Number to character convertion bug fixed. (_DocumentTypeDeclaration): Sets |schema-type| configuration parameter to XML DTD URI. 2006-01-26 Wakaba * XMLParser.dis (_AttlistDeclaration): Now it can generate attribute definition nodes. * XDoctype.dis: |UNKNOWN_ATTR| is renamed as |NO_TYPE_ATTR| and another |UNKNOWN_ATTR| constant is introduced for consistency with XML Infoset. * DOMCore.dis (TypeInfo): Documentation updated. 2006-01-26 Wakaba * XDoctype.dis: A bug in test code fixed. * Tree.dis (NamedNodeMap): Element type or attribute definition named node maps now can be dereferenced as if they are array or hash references. (removeNamedItem, item, ___report_error): Implemented for element type or attribute definitions. (length): Tests added. (NamedNodeMapArray): New classes. 2006-01-25 Wakaba * XDoctype.dis (setElementTypeDefinitionNode, setAttributeDefinitionNode): Throws |c:INUSE_DEFINITION_ERR| if the new node is already used for another definition. (DocumentTypeDefinition, ElementTypeDefinition): Node property name was incorrect. (elementTypes, attributeDefinitions): Checks to ensure the collection is empty added. * Tree.dis: Property name typos fixed. (setNamedItem, setAttributeNode): Don't return any node if it replace itself. (c:userDeterminedId): Missing definition added. * DOMXML.dis (Notation): Missing property specification of|c:ownerDocument| as |mn:xrefnode0| is added. 2006-01-23 Wakaba * DOMCore.dis (Test): Missing argument added. (setNamedItem): If |DocumentType| with no |ownerDocument|, addition always fails with |WRONG_DOCUMENT_ERR|. Some error conditions were incorrect. * .cvsignore: Dummy files added. 2006-01-22 Wakaba * DOMCore.dis (NO_NAMED_NODE_ERR, NO_NAMED_NODE_NS_ERR, INUSE_DEFINITION_ERR, NO_NS_NAMEDNODEMAP_ERR): New error subtypes. * DOMMain.dis (ensureXMLName): Checks definesness of |$XMLVERSION| to avoid uninitialized value warning. * Tree.dis (ManakaiDOMElementTypeDefMap, ManakaiDOMAttrDefMap): New classes (work in progress). * XDoctype.dis (elementTypes, attributeDefinitions): New attributes. 2006-01-22 Wakaba * Tree.dis (getAttribute): Returns |null| if there is no attribute in |ManakaiDOM:DOMLatest| for compatibility with Web browser implementations. (getAttributeNS): It returned |null| if there is no attribute in any |For| unintentionally. It now returns an empty string in DOM levels less than or equals to three. * XMLParser.dis (shiftChar): Fixed not to be warned as uninitialized value or substring out of range. 2006-01-21 Wakaba * DOMXML.dis (DocumentType.childNodes): Removed from |ManakaiDOM:ManakaiDOMLatest| variant. * XMLParser.dis: Parsing of general internal entities implemented. (_DocumentTypeDeclaration): Appends a document type definition node to the document. (_ProcessingInstructionDTD): Appends a processing instruction node to the document type definition. (Element_): Document element could not be an |EmptyElemTag|. 2006-01-21 Wakaba * DOMFeature.dis (featuresParamToFeaturesHash): New block code (seprated from |InputProcessor|). Now a |features| parameter's version can be specified by an array reference that contains a set of version numbers. A test added. * XMLParser.dis: A test added. 2006-01-07 Wakaba * DOMCore.dis (Test): Don't invoke |DESTROY| method because it does not work with dummy object used in the test code. 2006-01-07 Wakaba * DOMMain.dis (checkXMLNamesQName): Checks whether namespace URI is defined for not being warned. * XDoctype.dis: New module. * DOMCore.dis (DOMStringList): Test added. * Makefile: |XDoctype.pm| added. * Tree.dis (Require): Requires |XDoctype.dis|. (ManakaiDOMNodeObjectNode.eq): Added. (Test): |DOMError.location| must return a |DOMLocator| object (it was incorrectly tested to return |null|). (EmptyNodeList.DESTROY): Removed. 2006-01-04 Wakaba * Tree.dis (NodeType): |ELEMENT_TYPE_DEFINITION_NODE| and |ATTRIBUTE_DEFINITION_NODE| node types added. (appendChild, insertBefore, replaceChild): New two node types added and processing instruction nodes as document type definition node child is allowed in |ManakaiDOM:ManakaiDOMLatest| mode. (getNodeReference): New |interface| parameter to filter classes by interface is added. (ElementTypeDefinitionRole): New role. (AttributeDefinitionRole): New role. 2006-01-02 Wakaba * DOMCore.dis (DOMStringList): Reimplemented as tied array. 2005-12-31 Wakaba * DOMCore.dis (DOMError.location): Returns an empty |DOMLocator| if it is not provided. * XMLParser.dis: Parsing methods to skip document type declaration is added. 2005-12-29 Wakaba * XMLParser.dis (shiftChar): Checks characters are legal or not. Normalize end-of-lines. (rule _XMLDeclaration_): Implemented. (WFErrDef): Well-formedness error |wf-syntax-error|, |wf-pi-target-is-xml|, |wf-no-end-tag|, |wf-unsupported-xml-version|, |wf-malformed-enc-name|, |wf-malformed-xml-standalone|, |wf-legal-literal-character|, |wf-element-type-match|, |wf-unique-att-spec|, |wf-legal-character| added. (%character-code-point): New formatter rule. * Tree.dis (Document.xmlEncoding): It is now read-write attribute. * DOMCore.dis (DOMError.stringify): Added. (error-handler.default): Returns |false| (don't continue) when the error severity is |SEVERITY_FATAL_ERROR|. 2005-12-28 Wakaba * XMLParser.dis (DocumentEntity): Typos fixed. (|lexmode|s): New |?default-token| statements are used so that tokenizer description has been simplified and CDATA sections now can be parsed. 2005-12-28 Wakaba * XMLParser.dis: Some modifications made. 2005-12-27 Wakaba * DOMLS.dis (PARSE_ERR, SERIALIZE_ERR): They are now a global named resource. * Makefile: Rules to make |XMLParser.pm| is added. * XMLParser.dis: New file. 2005-12-24 Wakaba * DOMCore.dis (ManakaiDOMError._FORMATTER_PACKAGE_): Error message formatter can now vary by error types. (DOMLocator.utf32Offset): New (manakai extended) attribute. 2005-12-23 Wakaba * DOMCore.dis (DOMLocator): Implemented. 2005-12-21 Wakaba * DOMCore.dis (DOMConfigurationParameterApplication, domConfigurationParameter): New resources. 2005-11-25 Wakaba * Tree.dis (NodeList.___report_error, NamedNodeMap.___report_error): New methods. 2005-11-24 Wakaba * DOMMain.dis, DOMLS.dis, DOMXML.dis, Tree.dis: Old |__WARNING__| blocks are replaced by |DOMError|-based |__DOMCore:ERROR__| blocks. * DOMMain.dis (___report_error): Throws the error unkess it is a |DOMCore:DOMError| object. 2005-11-24 Wakaba * DOMCore.dis (severity, type): Getters return value from the definition of the current error (i.e. |-def| hash). (___error_def): New method. (errorType): |dis:dataType| changed to |DISCore:TFQNames| to ease natural reference to constant value. (error-handler.default): Prints the error message by |warn|. * Tree.dis (nodeValue.set): Reimplemented so that it warns as setting has no effect. (___report_error): New method. (It had been only implemented in superclass.) (setting-node-value-no-effect): New error type. 2005-11-23 Wakaba * DOMCore.dis: Error codes added. * Tree.dis (destroyNodeStem): New method implementation. 2005-11-22 Wakaba * Tree.dis (cloneNode): User data handlers implemented. (adoptNode): User data handlers implemented. 2005-11-21 Wakaba * DOMCore.dis (UserDataHandler): A constraint for Perl binding added. * Tree.dis (cloneNode): Invoking of |UserDataHandler|s are implemented. (getUserData, setUserData): Implemented. 2005-11-20 Wakaba * DOMCore.dis (UserDataHandler): Implemented. (DOMErrorHandler): Blessed package name bug fixed. * ManakaiDOMLS2003.dis: Reference to |Node| subclasses changed to |Tree.dis|. 2005-11-20 Wakaba * DOMMain.dis: Unused declarations and definitions removed. * DOMCore.dis: DOM document tree related interfaces removed. * Tree.dis: New module separated from |DOMCore.dis|. * DOMXML.dis: Some referent changed to |Tree.dis|. * Makefile: |Tree.dis| added. 2005-11-16 Wakaba * .cvsignore: Revised. 2005-11-16 Wakaba * ManakaiDOMLS2003.dis: Tests added. (domConfig): Method name in the code fixed to |flag|. * DOMMain.dis (findOffset32): Missing |^| in regular expressions added. * DOMCore.dis (hasChildNodes): Returns |false| if the node type is defined not to have any children. (CharacterData): Typos in element type names and function names fixed. 2005-11-15 Wakaba * DOMFeature.dis (MinimumImplementation.eq): Added. * DOMMain.dis: |DISPerl:ISA| reference fixed. * Generic.dis: Implements new |DOMLS:Generic| feature. 2005-11-15 Wakaba * DOMFeature.dis (stringifyFeatures): Don't double |SPACE| characters between feature names and versions. 2005-11-13 Wakaba * DOMFeature.dis (stringifyFeatures): A test code added. 2005-10-26 Wakaba * SimpleLS.dis (writeToString): Don't stop serializing when an |false| value appears in |@src|. 2005-10-16 Wakaba * DOMCore.dis (DOMError, DOMErrorHandler): Reimplemented. (ErrDef): Redefined. * DOMLS.dis (ErrDef): Redefined. 2005-10-16 Wakaba * DOMCore.dis (DOMConfiguration): Extends "ManakaiDOM:ManakaiDOMObject". 2005-10-15 Wakaba * DOMCore.dis (Require): References "DOMLS.dis" module. (CParam): Definitions for LS module added. * DOMLS.dis (ManakaiDOMLSInput): The input processor is also an output processor now. (ManakaiDOMLSResourceResolver): Implemented. (CParam): Definitions updated. 2005-10-14 Wakaba * DOMCore.dis (NOT_RECOGNIZED_CONFIG_PARAM_ERR, NOT_SUPPORTED_CONFIG_VALUE_ERR, INCOMPATIBLE_CONFIG_VALUE_ERR): New error subcodes. (DOMConfiguration): Implemented. (CParam): Definitions updated. * DOMMain.dis (DOMURIs): New data type. 2005-10-13 Wakaba * DOMCore.dis (setAttrValueNS): New code. 2005-10-12 Wakaba * DOMCore.dis: Don't set "infoset:prefix" internal property unless it has non-null value. (newObject): "refNode" parameter introduced. (ManakaiDOMNode.newObject): Calls "NodeStem.newNode" method if "refNode" parameter is specified. (cloneNode): Don't set "read-only" flag. (getNodeReference): Caches the result. (selectAttributeNodeForRemove): Don't removes any other non-namespace-aware attribute nodes. 2005-10-11 Wakaba * DOMCore.dis (appendChild, createElementNS, createAttributeNS, setAttribute, setAttributeNS): "strictErrorChecking" attribute supported. (doStrictErrorChecking): New code. * DOMMain.dis (XML10Name, XML11Name): "strictErrorChecking" attribute supported. * Makefile: Rule to make "DOMFeature.pm" restored. 2005-10-10 Wakaba * DOMCore.dis (ADOPT_NODE_TYPE_NOT_SUPPORTED_ERR): New error subcode. (adoptNode): Implemented. 2005-10-09 Wakaba * DOMHTML.dis, DOMWebForms.dis: Typos in element type prefix fixed. * DOMFeature.dis (DOMCore:implementation): Short name added. * DOMCore.dis (CLONE_NODE_TYPE_NOT_SUPPORTED_ERR): New error subcode. (DOMCore:node): New error parameter. (DOMCore:ownerDocument): Changed from "mn:irefnode0" to "mn:xrefnode0". For this reason, all assignments to this property have been rewritten to references to code "mn:setXRefNode". (cloneNode): Implemented. (setAttributeNode): A missing "importTree" method call added. (setAttributeNodeNS): Perl code removed and changed to a reference to "setAttributeNode" method code. * DOMXML.dis (DOMCore:ownerDocument): Changed from "mn:irefnode0" property to "mn:xrefnode0" property. 2005-10-08 Wakaba * DOMCore.dis, DOMLS.dis: Now constant values are defined only in interfaces. 2005-10-06 Wakaba * DOMCore.dis (ManakaiDOMEmptyNodeList): New class. (ManakaiDOMCharacterData): Methods reimplemented. (splitText): Reimplemented. (childNodes): Returns a "ManakaiDOMEmptyNodeList" for non-parent node types. * DOMXML.dis (childNodes): Returns a "ManakaiDOMEmptyNodeList" for non-parent node types. 2005-10-05 Wakaba * ManakaiDOMLS2003.dis: Revised to new format. * GenericLS.dis (DOMLS:ParseString): New feature. 2005-10-05 Wakaba * DOMFeature.dis: Description added and revised. (Still more work required.) 2005-10-04 Wakaba * DOMMain.dis (DOMString): The "idl:perl" attribute value has been changed from "DISPerl:String" to "DISPerl:CharacterString" to clarify its semantics. 2005-10-03 Wakaba * DOMFeature.dis (MIString): Java, ECMAScript, and Perl bound type properties added. * DOMMain.dis (DataType): Java, ECMAScript, and Perl bound type properties added. 2005-10-02 Wakaba * DOMFeature.dis (Module): "idl:prefix" and "idl:moduleName" properties added. 2005-10-01 Wakaba * DOMFeature.dis: Documentation added (still work in progress). (MIString): New type. * DOMCore.dis (namespaceURI): Fixed to return the namespace URI value, not a reference to it. 2005-09-30 Wakaba * DOMCore.dis, SimpleLS.dis: Shares namespace URIs and local names where possible. * DOMFeature.dis: Documentation for DOM Minimum Implementation added (still work in progress). * Makefile (feature.dae, feature-spec.dae): New rules. 2005-09-27 Wakaba * DOMCore.dis (DOMCore:nodeProp): New property. * DOMCore.dis, DOMXML.dis: Codes to set properties "TreeCore:*" is removed. 2005-09-26 Wakaba * DOMCore.dis, DOMXML.dis: New mn:* properties added. 2005-09-25 Wakaba * Makefile (DAC_SUFFIX): Changed to ".dae". (DAEM_SUFFIX): New. 2005-09-24 Wakaba * DOMMain.dis (MDOM:): Reintroduced for "ManakaiDOM:ManakaiDOM1" and "ManakaiDOM:ManakaiDOM2". * DOMFeature.dis, DOMMain.dis, DOMCore.dis, DOMXML.dis, DOMLS.dis, SimpleLS.dis, GenericLS.dis: Use disPerl:H instead of disPerl:Q for internal property hash keys. * DOMFeature.dis, DOMCore.dis, DOMXML.dis: Missing property definitions added. * DOMCore.dis (DOMCore:TextNode, DOMCore:DocumentFragmentNode): New resources. * DOMXML.dis (DOMXML:EntityNode, DOMXML:EntityReferenceNode): New resources. 2005-09-23 Wakaba * GenericLS.dis, SimpleLS.dis: New modules separated from DOMLS.dis. * DOMFeature.dis, DOMMain.dis: "MDOM:" and "for" definitions moved from DOMMain to DOMFeature. Now DOMFeature has no dependency on DOMMain. * DOMFeature.dis (DEBUG): New variable. 2005-09-22 Wakaba * Makefile: DAC_SUFFIX changed to ".dad". 2005-09-21 Wakaba * DOMCore.pm (DOMImplementation): Provides "XML" and "XMLVersion" features if it is "for" ManakaiDOM:DOMXMLFeature. * DOMMain.pm (StringExtend): Code portions of raising StringOutOfBoundsException is temporary disabled since it is not a DOM-style exception supported by current implementation of ManakaiNode - it will be recovered in later revision. 2005-09-20 Wakaba * DOMFeature.pm: Debug output code copied from Attic/DOMMetaImpl.pm (Should these code incorporated to source dis file?). 2005-09-19 Wakaba * DOMMain.dis (ManakaiDOM:DOMMethod, ManakaiDOM:DOMMethodReturn, ManakaiDOM:DOMAttribute, ManakaiDOM:DOMAttrGet, ManakaiDOM:DOMAttrSet, ManakaiDOM:DOMMethodParam): Removed. (ManakaiDOMTimeStamp): Removed. * DOMBoot.dis, DOMMetaImpl.dis, DOMMetaImpl.pm: Removed (they are no longer in use). 2005-09-18 Wakaba * DOMMain.dis (StringOutOfBoundsException): New exception. 2005-09-15 Wakaba * DOMFeature.dis: dis:dataType and dis:multipleProperties properties added to properties. 2005-09-08 Wakaba * Makefile: Rules renewaled. 2005-09-07 Wakaba * DOMCore.dis, DOMXML.dis, DOMLS.dis: Inheritance information fixed. 2005-09-05 Wakaba * DOMMain.dis (DOMImplementationRegistry, DOMImplementationRegistryVar): New. * DOMFeature.dis (DOMImplementationRegistry, DOMImplementationRegistryVar): Removed. (ImplementationRegistry): New class. 2005-09-04 Wakaba * DOMFeature.dis: New module. * DOMMetaImpl.dis (ManakaiDOM:ManakaiDOMObject): Removed. * DOMMain.dis (ManakaiDOM:ManakaiDOMObject): New. (DOMString, DOMTimeStamp): Now they are not interfaces but datatypes. (DOMUserData, DOMObject, DOMUserData): Now they are subtypes rather than aliases of their "real" type in IDL. * DOMCore.dis (DOMImplementationList, DOMImplementationSource): New interfaces and classes. 2005-09-01 Wakaba * DOMCore.dis (setTextNodeContent): Sets the infoset:parent property of the new Text node. 2005-08-29 Wakaba * Makefile: Loads "NaturalLanguage.dis". 2005-08-26 Wakaba * DOMCore.dis (createDocument): Set "ownerDocument" attribute to the root element created by the method. (It was forgotten!!) 2005-08-15 Wakaba * DOMCore.dis (appendChild, insertBefore, replaceChild): Typo in the code of removing the newChild from the previous parent of that node is fixed. 2005-05-29 Wakaba * DOMLS.dis (SimpleSerializer): End tag was sometimes missing. Use namespace prefix of element type if it is not declared but not used else. A shift is replaced by pop:). * DOMCore.dis (getFeature): The getFeature method for Node-derived classes implemented. * DOMXML.dis (getFeature): Ditto. 2005-05-21 Wakaba * DOMCore.dis (getNodeReference): Use HTMLDocument class if a document node has no document element node but has support for the "HTML" feature. 2005-03-03 Wakaba * DOMMetaImpl.dis (features input normalizer): Variable name typo fixed. (ManakaiDOMImplementationSource.getDOMImplementation): Fixed bug so that version specification for "+"'ed feature name does work now. 2005-03-02 Wakaba * DOMBoot.dis (ResourceDef): Definitions for DOMFeature are removed (now defined in DOMMetaImpl). 2005-02-21 Wakaba * DOMMetaImpl.dis (IFClsDef[ManakaiDOMMinimumImplementation]): New. * Makefile: Rules for DOMMetaImpl module added. 2005-02-20 Wakaba * DOMMetaImpl.dis: New module (split from DOMCore and DOMMain). 2005-02-18 Wakaba * DOMCore.dis (getFeature): ManakaiDOM:ManakaiDOMNodeObject.newReference is an instance method, not a class method. * DOMMain.dis (ResourceTypeDef[ManakaiDOM:Const, ManakaiDOM:ConstGroup]): Removed (moved to "lib/manakai/DISLang.dis"). (Exception-related definitions): Removed (moved to "lib/Message/Util/Error/DOMException.dis"). (ForDef[ManakaiDOM:ForIF, ManakaiDOM:ForClass]): Removed (moved to DISLang). 2005-02-17 Wakaba * DOMMain.dis: Definitions for "ManakaiDOM:ManakaiDOMNodeObject" and "ManakaiDOM:ManakaiDOMNodeReference" are removed (moved to "lib/Message/Util/ManakaiNode.dis"). (ResourceDef[ManakaiDOM:DataType]): Removed (moved to "lib/manakai/DISCore.dis"). (ResourceTypeDef[ManakaiDOM:IF, ManakaiDOM:Class, ManakaiDOM:PrimitiveTypeClass]): Removed (moved to "lib/manakai/DISLang.dis"). 2005-02-16 Wakaba * DOMMain.dis (ForDef[ManakaiDOM:Perl]): Removed (moved to DISPerl module). 2005-01-07 Wakaba * DOMCore.dis: Each "delete array-item" replaced to a "splice". 2005-01-06 Wakaba * DOMMain.dis (ensureXMLName): Test as if XML 1.0 if it is not an XML document. 2005-01-05 Wakaba * DOMMain.dis (ManakaiDOMExceptionOrWarning.stringify): New method. (IntMethod[isExternallyReferred]): Rewritten. (IntMethod[isExternallyReferredDownward]): Removed. (Checking XML name legallity): Fix true or false mistakes. (destroy, importTree, orphanate): Rewritten. (destroyDownward, changeTreeIDDownward): Removed. (TreeCore:urefnode property): Removed since not used. * DOMCore.dis: Tying array for NodeList implemented. 2005-01-02 Wakaba * DOMHTML.dis (HTMLDOMImplementation): New interface. * DOMViews.dis: Documentation for properties are added. 2004-12-29 Wakaba * Makefile: DOMXML, DOMEvents, DOMLS and ManakaiDOMLS2003 added. * ManakaiDOMCore.dis: Removed (merged with DOMCore.dis). 2004-12-28 Wakaba * ManakaiDOMXML.dis: Removed (merged with DOMXML.dis). 2004-12-01 Wakaba * ManakaiDOMMain.dis: Removed (merged with DOMMain.dis). 2004-11-03 Wakaba * .cvsignore: Ignore pod files. 2004-10-31 Wakaba * DOMXML.dis (ProcessingInstruction.data): Property name error fixed. * DOMMain.dis: Don't call DOMString->__INT{length}__ - it should be DOMString->length. * DOMCore.dis (Element.getElementsByTagName, Node.getElementsByTagName, Element.getElementsByTagNameNS, Node.getElementsByTagNameNS): Implemented. (Element.getAttributeNode, Element.getAttributeNodeNS): Check whether defined. 2004-10-18 Wakaba * DOMWebForms.dis: New module. 2004-10-17 Wakaba * DOMBasicEvents.dis, DOMHTMLEvents.dis, DOMViews.dis, DOMHTML.dis: New modules. 2004-10-16 Wakaba * DOMMouseEvents.dis, DOMTextEvents.dis: New module. 2004-10-11 Wakaba * ManakaiDOMMain.dis: 'TreeCore:anydata2' property type added. (DataType[ManakaiDOMKeyIdentifier, ManakaiDOMKeyIdentifiers]): added. 2004-10-10 Wakaba * DOMEvents.dis: New module. * ManakaiDOMCore.dis (ManakaiDOMAttributes.item): Return node reference. * ManakaiDOMLS2003.dis (error_handler): '$caller' changed to '$self' for correct error reporting and not to leak memory. * Makefile (DIS2PM_PL): Path to dis2pm.pl changed. * dis2pm.pl, idl2dis.pl: Removed (moved to ../../bin/). 2004-10-09 Wakaba * DOMCore.dis (ConfigParam): Moved from ManakaiDOMCore. * ManakaiDOMCore.dis (ConfigParam): Removed. * dis2pm.pl: Functions to create perl/pod structures are moved to ../../bin/genlib.pl. (disdoc2pod, disdoc2text): Allow LESS-THAN SIGN as the first character of a paragraph. * ManakaiDOMLS2003.dis (ManakaiXMLParser2003/parse:#comment): Set ownerDocument as parent if parent.ownerDocument is null. * dis2pm.pl (dis2perl): Report if DIS code has value. 2004-10-06 Wakaba * ManakaiDOMCore.dis (IFs): Inherit non-conditional version of ManakaiDOMMain interfaces. * DOMCore.dis (Node.childNodes): Typo fixed. * ManakaiDOMLS2003.dis (parse): Check whether the namespace prefix is null. * dis2pm.pl (perl_builtin_code): Allow hash reference as 'features'. (Condition): Don't generate condition inheritance for DOM1, DOM2 and DOM3. 2004-09-30 Wakaba * dis2pm.pl (disdoc_inline2pod, disdoc_inline2text): New element type 'FILE' added. * ManakaiDOMMain.dis (ManakaiDOMExceptionOrWarning, ManakaiDOMException, ManakaiDOMWarning): New classes. (ManakaiDOMObject/___report_error): Implemented. * dis2pm.pl (perl_builtin_code:ParseFeature): Recognize leading '+'. 2004-09-29 Wakaba * dis2pm.pl (get_redef_description, attr2perl, method2perl, if2perl): New attribute 'IsAbstract', 'IsFinal' and 'ImplByApp' added. 2004-09-27 Wakaba * .cvsignore: New file. 2004-09-27 Wakaba * DOMLS.dis, ManakaiDOMLS2003: New file. * dis2pm.pl (MAIN): Output "AUTHOR" pod section; support Perl+MPL license. (disdoc2pod, disdoc2text): New 'DFN', 'SA', 'SE', 'HA', 'HE', 'XA', 'XE', 'Prefix', 'ERR', 'EV' and 'CP' element types supported. (perl_name): Die if uninitialized value. (constgroup2perl): Support constant group without machine-name. (pod_item): Die if uninitialized value. (qname_label): Don't output default prefix. * idl2dis.pl: Output module name and prefix as 'BindingName' and 'FileName'. 2004-09-26 Wakaba * dis2pm.pl (constgroup2perl): Capitalize name. * idl2dis.pl (type, raise): Prepend namespace prefix if type is 'DOMString' or 'DOMException' and it is not defined. (MAIN): Make empty 'Return' element even if return value is void. (supply_incase): New. (const): Use 'FullName' in favor of 'Description' if the name of the const group is not a machine-friendly name. 2004-09-26 Wakaba * dis2pm.pl (get_incase_label): Error if label is undef. 2004-09-25 Wakaba * dis2pm.pl: Generate TODO list. (method2perl): Use "dis". (disdoc2pod, disdoc2text): 'HTML', 'InfosetP' element types added. (perl_builtin_code): New code 'isRelativeDOMURI' added. * ManakaiDOMMain.dis (MDOM_REPLACE_BY_ITSELF_NO_EFFECT): New warning code. * dis2pm.pl (attr2perl, method2perl): Output 'undef;' if the method or attribute(set) does not return a value. (perl_code): New macro 'WHEN' added. Macro 'INT{}' now allow parameter. 2004-09-24 Wakaba * dis2pm.pl (perl_exception): New 'subtype' parameter added. (param2poditem): New. (MAIN): Write 'NAMESPACE BINDINGS' pod section if necessary. (perl_builtin_code): More developer-friendly error report. (perl_code): New 'REQUIRE' statement added. (disdoc2text, disdoc2pod): New 'QUOTE' element type added. (get_value_literal): Default for unknown type is now 'undef'. 2004-09-22 Wakaba * dis2pm.pl (perl_builtin_code): New 'CheckName' and 'XMLVersion' added. 2004-09-20 Wakaba * dis2pm.pl (get_redef_description): See 'RedefinedBy' elements even if it is 'ReMethod' and 'ReAttr' element. 2004-09-20 Wakaba * dis2pm.pl (type_label): New option 'is_pod' implemented. (get_redef_description): New function. (get_isa_description): New function. (disdoc2pod, disdoc2text): New. (get_description): DISDOC support. (valid_err, valid_err): New option 'node' implemented. * ManakaiDOMCore.dis (IF[ManakaiDOMNodeObjectNode]): New. 2004-09-19 Wakaba * dis2pm.pl (condition_match): Report error if the condition not defined. * ManakaiDOMMain.dis (MDOM_IMPL_BY_APP): New exception code. * dis2pm.pl (datatype2perl, datatypealias2perl): "FullName" attribute introduced. (constgroup2perl): Define is-a relationship between group Name and its Type. (constgroup2perl): "IsBitMask" attribute introduced. * ManakaiDOMMain.dis: Renamed from "ManakaiDOM.dis". * dis2pm.pl (type_label): Type label for unsigned-long and unsigned-short added. (perl_code): Die if uninitialized value is given. (is_all_implemented): New function. * ManakaiDOMXML.dis: New module. * ManakaiDOMCore.dis: New module. * dis2pm.pl (dis2perl): 'Overridden' added. 2004-09-18 Wakaba * ManakaiDOM.dis (MDOM_NEWCHILD_IS_REFCHILD): New warning. (ManakaiDOMNodeObject->orphanate): New internal method. (Interface[ManakaiDOMNodeObject, ManakaiDOMNodeReference]): All calls of internal methods are now qualified by the package name. 2004-09-17 Wakaba * DOMMain.dis: 'SpecLevel' attribute added. * idl2dis.pl (level): Set 'SpecLevel' attribute as well as 'Level'. * dis2pm.pl (get_level_description): Attribute name to see is changed from 'Level' to 'SpecLevel' (const2perl): Don't hardlink constant not to be warned by perl -w. (ops2perl): Declare subroutine 'DESTROY' not to be warned by perl -w. (get_internal_code): Support of lang:dis. * ManakaiDOM.dis (newReference): New parameter 'class' introduced. * dis2pm.pl (perl_builtin_code:): Separeted from "DOMString". (if2perl, attr2perl): Don't cast to DOMString. 2004-09-15 Wakaba * dis2pm.pl (perl_builtin_code): __CODE{CheckNCName}__ implemented. (perl_if): Don't indent if preprocessing direction found. (perl_code_source): Add \n before the #line directive. 2004-09-14 Wakaba * dis2pm.pl (get_internal_code): __INT{{name}}__ syntax now support attribute. (perl_code): __SUPER{name}__ syntax implemented. 2004-09-13 Wakaba * dis2pm.pl (dis2perl): New. 2004-09-12 Wakaba * dis2pm.pl (get_warning_perl_code): New. 2004-09-10 Wakaba * ManakaiDOM.dis (MDOM_NS_EMPTY_URI): New Exception type. (ManakaiDOMNamespaceURI): New DataType. * DOMCore.dis: Most part of DOMImplementation interface is implemented. * dis2pm.pl (method2perl): Description for returned value is changed to be grouped. (get_value_literal): Don't quote "null" even if it is a DOMString. (perl_exception): Don't output terminating semicolon. (perl_builtin_code): ManakaiDOM:ManakaiDOMNamespaceURI is supported. 2004-09-09 Wakaba * dis2pm.pl (method2perl, attr2perl): '(Return | Get | Set)/Exception' implemented. * idl2dis.pl (type): Don't output Require element for DOMMain module (now it is implicitly required by default). 2004-09-01 Wakaba * idl2dis.pl (level): Use 'Level' instead of 'ModifiedLevel'. 2004-08-31 Wakaba * dis2pm.pl (const2perl, constgroup2perl): New. * idl2dis.pl (idlna): New. 2004-08-30 Wakaba * dis2pm.pl: Versioned implementation of "IF" supported (see also Manakai Development Memo : 2004-08-29 ). * idl2dis.pl (register_required_module): ISA is now converted to elements, not a list attribute. 2004-08-22 Wakaba * idl2dis.pl (register_required_module): Top-level element type name "Type" and "TypeAlias" changed to "DataType" and "DataTypeAlias". * dis2pm.pl (perl_code_source): New function. 2004-08-21 Wakaba * ChangeLog: New file. * Makefile, DOMMain.dis, DOMCore.dis, DOMXML.dis, dis2pm.pl, idl2dis.pl: New files (Moved from ../Markup/XML/DOM/).