2007-09-21  Wakaba  <wakaba@suika.fam.cx>

	* Makefile (clean): Don't remove generated files.

	* ManakaiNode.dis, ManakaiNodeTest.dis, PerlCode.dis,
	PerlCode.pm, ManakaiNode.pm, common.dis, DIS.dis, DIS.pm: Removed.

	* DIS/, AutoLoad/: Removed.

2007-08-25  Wakaba  <wakaba@suika.fam.cx>

	* Makefile (POD2HTML): Relative path was wrong.

2007-07-29  Wakaba  <wakaba@suika.fam.cx>

	* Makefile: Rules for DIS are removed.

2007-07-29  Wakaba  <wakaba@suika.fam.cx>

	* Makefile (all-document): New.
	(all): Do |all-document|.

2007-06-16  Wakaba  <wakaba@suika.fam.cx>

	* Error.pod: New documentation, split from |Error.pm|.

	* Error.pm: Documentations are removed.
	(new): |die| if |-type| option is not specified.
	(text, value, type): Do what |Message::Util::Error::DOMException| does,
	with some modification for compatibility with |Error| and 
	new naming convention for error type/subtype definitions.
	(code): New method.
	(subtype, type_def): New methods.

2006-12-31  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis: Support for |for| is entirely removed.  |forArg|
	parameters are removed.
	(createDISDocument): Removed.
	(tfurisToURI): Removed.
	(tfpurisToURI): The |for| URI slot is 
	fixed to |ManakaiDOM:all|.
	(tfqnamesToURI): Removed.
	(tfpqnamesToURI): The |defaultForURI| parameter
	is removed and the |for| URI slot is
	fixed to |ManakaiDOM:all|.
	(forURI): Removed.
	(forMatch): The first parameter, |forArg|, no
	longer takes effect.

	* PerlCode.dis (sourceFor): Removed.
	(stringify): Don't output comment with |sourceFor| URI.

2006-12-31  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (forMatch, readProperties): Support for the |For|
	property is removed.

2006-12-30  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (defaultForURI): Removed.

2006-12-30  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis, DIS.dis, ManakaiNode.dis,
	ManakaiNodeTest.dis: |For| specifications are removed.

	* common.dis: New module.

	* DIS.dis, PerlCode.dis, ManakaiNode.dis: |Util:| resource
	definitions are removed (and moved to |common.dis|).

	* DIS.dis (ForEmpty, ForLatest): Removed.

	* DIS.dis: |WithFor| and |DefaultFor| are removed.

2006-12-30  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis: |WithFor| and |DefaultFor| are removed.

2006-12-30  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis, PerlCode.dis: References to the |ManakaiDOM:ManakaiDOM|
	mode are removed.

2006-12-30  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (ModuleRole, ForRole, ResourceRole,
	DatabaseRole, ElementRole): Removed.
	(DISParser.new): Removed.
	(getFeature): Removed.
	(hasFeature): Removed.

	* Grove.dis: Removed.

2006-12-29  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis (createPCFile): Removed.
	(createPCDocument): New method.

2006-12-02  Wakaba  <wakaba@suika.fam.cx>

	* Makefile: |lib/Message/DOM/DOMString.pm| is added.

2006-11-05  Wakaba  <wakaba@suika.fam.cx>

	* Grove.dis (mg:nodeRefClass, mg:nodeRefInterfaces): Removed.

2006-11-04  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (ManakaiDISImplementation): It no longer
	inherits |ManakaiDISImplementationValue|,
	|ManakaiDISImplementationPerl|, and |ManakaiSWCFGImplementation|
	interfaces.  The class is now expected to be implemented
	by |DOMImplementation| objects.

	* PerlCode.dis (addImplementedFeature, addImplementedElementType):
	New methods.
	(PCHasFeature, PCElementType): New interfaces.
	(PCDocument): It no longer inherits the |ManakaiDOMDocument|; it
        is now expected to be implemented by |Document|
        objects.
	(PCImplementation): It no longer inherits the |ManakaiDOMImplementation|;
	it is now expected to be implemented by |DOMImplementation|
	objects.

2006-11-03  Wakaba  <wakaba@suika.fam.cx>

	* autoload/: New directory.

	* DIS.dis (getPropertyResourceList): Unused |defaultMediaType|
	parameter is deleted.  New |isaRecursivePropName|
	and |recursiveISAPropName| parameters are added.

	* PerlCode.dis (addRevISAPackageName, getRevISAPackageName):
	New methods.
	(stringify): Support for the rev-ISA packages is added.
	(getAutoloadDefinitionList): New method.

2006-08-15  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (parseString): New |for_arg| parameter is added.

2006-08-15  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (readProperties): New |implementation| parameters
	are added.  Support for the |lang:dcmodel| lexical
	type is added.
	(parseString): New method.

2006-08-15  Wakaba  <wakaba@suika.fam.cx>
	
	* Makefile (.discore-all.pm): |../DOM/TreeStore.pm| is added
	to the list.

2006-05-28  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (Require): An explicit reference to the |MDOM:DOMCore|
	module is added.
	(readProperties): The support for the |DISCore:NSString| type
	is added.

2006-04-30  Wakaba  <wakaba@suika.fam.cx>

	* .cvsignore: Updated.

2006-04-16  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.t (CDATADOMString2): New reflecting datatype.
	(prototype): Returns |null| if it is not specified.

2006-04-16  Wakaba  <wakaba@suika.fam.cx>

	* Makefile (.discore-all.pm): |CharacterData.pm| is added.

2006-04-05  Wakaba  <wakaba@suika.fam.cx>

	* Grove.dis (generateUniqueID): Don't include random number; it
	is unnecessary as long as only local uniquness is required.
	(destroy): Delete singleton.

	* PerlCode.dis (createPCLiteral): A variable was not set.

2006-04-04  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (Require): Requires the |MDOM:TreeStore| module.
	(getNodeFromStorage, setNodeToStorage): New methods.

2006-04-04  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis (PropDef): Removed (they were not used).
	(appendPackage, appendCodeFragment): Removed.
	(PCImplementation.createPerl* factoty methods): Removed.
	(setSubNode, setOverloadSub): Removed.
	(Node setter attributes): They no longer call |adoptNode|
	method.
	(PCImplementation): Don't inherit |dx:ManakaiDefaultExceptionHandler|.
	(PCException): Removed.

	* Grove.dis (destroy): Threshold value experimentally changed.

2006-04-04  Wakaba  <wakaba@suika.fam.cx>

	* Grove.dis (collectGarbage): The gc algorithm has
	been changed (a variant of mark and sweep).

2006-04-04  Wakaba  <wakaba@suika.fam.cx>

	* Grove.dis (collectGarbage): Exit loops by |undef| from |each|.

2006-04-03  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (NO_PERL_CODE_IMPL_ERR): Removed.

	* ManakaiNode.dis (GetProp, SetProp): Removed.

2006-04-03  Wakaba  <wakaba@suika.fam.cx>

	* Grove.dis (mg:mutations): It is changed from array
	reference to hash reference.

	* PerlCode.dis (replaceVariable): The |pc2:| namespace
	support.
	(IN_USE_NODE_ERR, BAD_CHILD_ERR): Removed.
	(createPCIf, createPCPackage): New methods.
	(createPCFile): Renamed from |createPerlFile|.  Set
	configuration parameters.

2006-04-02  Wakaba  <wakaba@suika.fam.cx>

	* Makefile: Update to new modules.

2006-04-01  Wakaba  <wakaba@suika.fam.cx>

	* Grove.dis (destroy): Threshold value changed to 4096.

	* PerlCode.dis (PerlCode): Associated as the default
	class with |pc:*| and |pc2:*| element types.
	(currentPackage, currentChunkNumber, getNextChunkNumber): Removed.
	(ReflectCDATA): Reimplemented using standard |Element|
	methods.
	(sourceFile, sourceLine, currentSourceFile, currentSourceLine,
	skipLines): Removed.
	(pc:line): Removed.
	(stringify): Support for the |pc:line| configuration
	parameter is removed.

	* DIS.dis (isFeatureProvided): Removed.

2006-03-31  Wakaba  <wakaba@suika.fam.cx>

	* Makefile (clean-db): New rule.

	* Grove.dis (onunload): New internal property.
	(collectGarbage): Invoke the |mg:onunload| code if available.

2006-03-31  Wakaba  <wakaba@suika.fam.cx>

	* Grove.dis (getNodeStemProp0Node): The |$opt| option
	parameter is added.
	(mg:nodeRefInterfaces): New property.

2006-03-30  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (mvLocalName, mvNamespaceURI): Namespace
	unaware attribute name is supported.

	* Grove.dis (setOwnerPropRR, deleteOwnerProp, createNodeRefHashFromID):
	New codes.
	(nodeRefClass): New property (moved from the |MDOM:TreeCore|
	module).

2006-03-24  Wakaba  <wakaba@suika.fam.cx>

	* Grove.dis (getNodeRefPropValue, setNodeRefPropValue): New codes.

2006-03-21  Wakaba  <wakaba@suika.fam.cx>

	* Grove.dis (get++NodeStemPropValue, orSetNodeStemPropValue): New
	codes.

2006-03-19  Wakaba  <wakaba@suika.fam.cx>

	* Grove.dis (createNodeRefFromID): Encloses variables by |{}|.
	(getNodeID, getNodeStem): New codes.
	(collectGarbage): A bug is fiexed.
	(getNodeStemPropValueRef, setNodeStemProp0Node,
	deleteNodeStemPropValue, nodeIDMatch): New codes.

2006-03-17  Wakaba  <wakaba@suika.fam.cx>

	* Grove.dis (createNodeStem): Set the reference
	to the |mg:nodeClass| property.
	(createNodeRefFromID): New code.
	(getNodeStemPropValue, setNodeStemPropValue, getNodeStemProp0Node):
	New codes.

2006-03-17  Wakaba  <wakaba@suika.fam.cx>

	* Grove.dis: New module.

2006-03-15  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (getMethodForType): Parameter |$resource|
	is changed to |$type_resource|.
	(getDOMConfigurationParameterName): New method.

2006-03-12  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (loadResource): Support for the |dis:aliasChild|
	property has been removed.

2006-03-12  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (loadResource): Sets the |srinfo| parameter
	of the |addTypeURI| method call.
	(addTypeURI): The |srinfo| parameter is added.  Sets
	the |srinfo| parameter of the |isSubsetOfURI| and |mergeAsAlias|
	method calls.

2006-03-11  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (loadResource): Don't set |isDefined|
	flag for aliases.

2006-03-10  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis (stringify): Inserts new line after |COMMA|s
	in lists (hash literals and array literals --- "lists" theirselves
	are excluded since they are usually not so long).

	* DIS.dis (loadResource): Don't throw error
	if an alias is alreadt defined for same URI.  Registers
	aliases from |srinfo| to the database. By these
	fixes aliases defined in another module from the canonical
	resource name's module can live even after the canonical's 
	module is updated.

2006-03-08  Wakaba  <wakaba@suika.fam.cx>

	* ManakaiNode.dis (destroy): Don't cause |uninitialized value
	as SCALAR reference| error even if the node is disposed
	and it no longer has tree id.

2006-03-05  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (mvOwnerElementResource): Allows an attribute
	with no owner element.

2006-02-26  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis (PerlStringLiteral.stringify): If some character
	are escaped, the string should have been quoted by |QUOTATION MARK|.

	* Makefile (.discore-all.pm): The parameter for |DIS/DPG.dis|
	module was misplaced.
	(distclean): New rule.
	(clean): Cleans subdirectories, too.

2006-02-26  Wakaba  <wakaba@suika.fam.cx>

	* ManakaiNodeTest.dis (Require): Missing reference
	to the |DISlib:Test| module is added.

	* Makefile: Revised for new |daf| database format.

	* DIS.dis (elementTypeMatch, isSubsetOfURI): The |srinfo|
	parameter is added.
	(getFor, getModule): Set reference rather than string
	itself to the |{for}| property.
	(loadResource): Passes |srinfo| parameter
	to |isSubsetOfURI|-calling methods.
	(mergeAsAlias): The |srinfo| parameter is added.

2006-02-26  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis (Require): Missing reference to the |DISlib:DISMarkup|
	module is added.

2006-02-25  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (lookupNamespacePrefix): Resolves prefix by
	namespace resolver if available.
	(disNamespaceResolver): New attribute.
	(loadModule): Sets |revision| attribute of the created module.
	(ownerModuleRef): Setter is added.
	(addTypeURI): Set |ownerModule| attribute if possible.
	(ManakaiDISModuleLite): The class no longer inherits |DISAnyResource|
	class and |ManakaiDefaultExceptionHandler| class.
	(mergeAsAlias): New |noEqualityCheck| parameter is added.

	* Makefile: New variables for |DAF| are added.

2006-02-24  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (loadModule): Adds name URIs of |Require|d
	modules to the list of such modules.
	(DIS:forURI): New property.
	(getReferringModuleURIList, addReferringModuleURI): New methods.
	(DIS:referringModule): New property.

2006-02-24  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (loadResource): URI registration by |addResourceList|
	was incorrect for aliases.
	(unloadResource): It did not support resources with
	no e.g. |{subOf}| hash.
	(addResourceURI): New method.
	(getResourceURIList): New method.

2006-02-23  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (loadResource, loadFor, loadModule): New |srinfo|
	parameter is added.  Restores super-resource information
	from |srinfo| if available.
	(unloadModule): New method.
	(getModuleResourceList): New method.
	(addResourceList): Adds all alias names to the list.
	(addForResource): New method analog to |addResourceList|.
	(getForResourceList): New method analog to |getResourceList|.
	(dx:Interface.getErrorInterfaceResource): New method
	implementation.

2006-02-22  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis (PCVariable.stringify): The |hashKey| 
	attribute was not reflected to the stringified representation.

	* DIS.dis (getErrorInterfaceResource): New method.
	(getErrorCodeResource): New method.

2006-02-20  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (MUErrorHandler): Missing |For| specification is added.

2006-02-20  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (getMethodForType): Bug fixed.

2006-02-20  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (isPropertyElement): The |DISCore:resourceType|
	element type is now recognized as a property.  In addition,
	element types that are a |DISSource:Property| are
	properties.
	(DIS:AnyMethod, DIS:Method, DIS:Attribute): New types.
	(DIS:targetType): New property.
	(DISModule, DISFor, DISResource, DISDatabase): These
	classes no longer inherits |ManakaiDISExceptionTarget|.
	(DISDatabase.loadResource): Reads |DISCore:resourceType| property
	as well as |rdf:type| property.
	(DISAnyResource.MUErrorHandler, DISDatabase.MUErrorHandler): New
	methods.
	(DISDatabase.domConfig): New attribute.
	(error-handler): New configuration parameter.
	(getMethodForType): New code fragment.
	(DIS:more-than-one-methods-for-a-type): New error.
	(ManakaiDISExceptionTarget): Removed.

2006-02-19  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (composeSubsetURI): New code fragment.
	(getResource, getModule, getFor, loadResource): Old |rdf:type| settking
	code is removed.
	(isSubsetOfURI): Old compatibility code removed.
	(addTypeURI): Bugs fixed.

2006-02-19  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (getResource, getFor, getModule): Set |DIS:typeURI|
	property on creation of an object.
	(isAnonymous): Setter is added.
	(isTypeURI): Redefined using |typeResource| and |isSubsetOfURI|.
	(getTypeURIList): New method.
	(typeResource): New attribute.
	(addTypeURI): New method.
	(DISModule.isAnonymous, DISFor.isAnonymous): Removed.  Now |for|s
	and modules as well as normal resources can be anonymous.
	(getSuperResourceURIList): New method.

2006-02-18  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (revision): New attribute.

2006-02-09  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis (PerlStringLiteral.stringify): |pc:preserve-line-break|
	configuration parameter support is added.
	(pc:preserve-line-break): New configuration option.

	* DIS.dis (readProperties): |DISCore:UString| lextype support added.

2006-02-08  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis (PCReference.stringify): Reference operator |\|
	was missing.
	
2006-02-08  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis (getNameListAttrR): Non-|pc:|-namespace elements
	and their descendants were ignored.
	(getNameListAttrRM): New variant derived from |getNameListAttrR|,
	for |getUsePerlModuleNameList| and |getUseCharClassNameList|.
	(getUsePerlModuleNameList, getUseCharClassNameList): Don't 
	include |pc:package| and their descendants to the target.
	(PerlFile.stringify): Outputs |use| statements
	for Perl modules and character classes not part of any package,
	if any.

	* DIS.dis: |lang:tdterr|'s |DVNSValue| convertion is supported.

2006-02-06  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (loadModule): Loads a "daem" submodule file
	if exists.

2006-01-30  Wakaba  <wakaba@suika.fam.cx>

	* Makefile: Typo fixed.

2006-01-29  Wakaba  <wakaba@suika.fam.cx>

	* Makefile: Updated to be consist with |../DOM/Makefile|.

	* DIS.dis (parse): Parameter |input|'s type is 
	changed from |DOMLS:LSInput| to |DISPerl:HASH| to
	remove dependency on |MDOM:DOMLS| module.

2006-01-29  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis (skipLines): Its code was incorrect.
	(createPCLiteral): Creates a |undef| keyword node
	for an |undef| value.  Tests added.

2006-01-25  Wakaba  <wakaba@suika.fam.cx>

	* ManakaiNodeTest.dis: Tests for |mn:subnode2| hash-hash added.

2006-01-24  Wakaba  <wakaba@suika.fam.cx>

	* ManakaiNodeTest.dis: Tests added.

2006-01-23  Wakaba  <wakaba@suika.fam.cx>

	* .cvsignore: |ManakaiNodeTest.pm| added.

2006-01-23  Wakaba  <wakaba@suika.fam.cx>

	* ManakaiNodeTest.dis: New module.

	* Makefile: |ManakaiNodeTest.dis| added.

2006-01-22  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis: Fixed not |getAttributeNS| to cause 
	uninitialized value warnings.

2006-01-19  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis (PCPackage.stringify): Appends a string
	representation of non-|pc:*| element children for
	the stringified value.

2006-01-07  Wakaba  <wakaba@suika.fam.cx>

	* Makefile: |../DOM/XDoctype.dis| added.

2005-12-27  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis (PCReference): New interface.

2005-12-24  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis (PerlSub.clearPerlName): New method.
	(PCDocument.createPCLiteral): Adopts |PerlCode| node
	if it is a foreign one.

	* DIS.dis (underscoreNameToCamelCaseName): A |HYPHEN-MINUS|
	character is replaced to |UNDERLINE| character.

2005-12-21  Wakaba  <wakaba@suika.fam.cx>

	* Makefile: |dpg.dae| rule merged into |discore.dae| rule.

2005-12-20  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis: DPG format support added.

2005-12-18  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis (PCDocument.createPerlSub): New method.

	* Makefile: Rules to make |DIS/DPG.pm| added.

2005-12-18  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis (PCExpression.stringify): More operators supported.
	(PCDocument.createPCStatement): New method.

2005-12-17  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis (PCWhen): New interface.

2005-12-16  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis (PCNumberLiteral, PCDereference, PCApply): New interfaces.
	(arrayRefLiteral, hashRefLiteral): Typos in element type names fixed.
	(PCExpression.stringify): Outputs children other than expression.
	Inserts space before and after operators if desired.

2005-12-15  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis (PCCondition, PCBlock): New interface.
	(ManakaiPCBlock): Renamed as |ManakaiPerlCodeBlock| to
	distingulish new |ManakaiPCBlock| class implementing new |PCBlock|
	interface.

2005-12-14  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis (PCExpression, PCChoose, PCWhen, PCOtherwise): New
	interfaces and element types.
	(getChildElementByType): New code.
	(PCFunctionCall): New interface and element type.

2005-11-24  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (stringify): Returns |DIS:uri| error parameter if available.

2005-11-23  Wakaba  <wakaba@suika.fam.cx>

	* Error.pm (new): Sets |-stacktrace_| property if debug
	or verbose mode.
	(stringify): Appends longer trace if debug or verbose mode.
	($VERBOSE): New flag.

	* DIS.dis: Bugs on error depth fixed.
	
2005-11-23  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (text): New attribute implementation.

	* ManakaiNode.dis (destroyNodeStem): New method.

2005-11-20  Wakaba  <wakaba@suika.fam.cx>

	* Makefile: |../DOM/Tree.dis| added.

2005-11-17  Wakaba  <wakaba@suika.fam.cx>

	* Makefile: |Formatter/Muf2003.dis| added to file list.

	* DIS.dis (DISModuleLite): Typo in |ISA| property fixed.

2005-11-16  Wakaba  <wakaba@suika.fam.cx>

	* .cvsignore: New file.
	
2005-11-16  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis: A test code added.  Typos in |ISA|
	properties fixed.
	(PerlSub.stringify): Generates prototype specification
	even if |prototype| attribute value's length is zero
	in case the |pc:prototype| attribute /is/ found.

2005-11-15  Wakaba  <wakaba@suika.fam.cx>

	* Makefile: Missing rule to make |Message/DOM/core.dae| added.

2005-11-15  Wakaba  <wakaba@suika.fam.cx>

	* Makefile: Rules to make |DIS/Test.pm| added. |DIS/common.dis| rules
	added.

	* DIS.dis (DIS:): Removed (moved to |DIS/common.dis|).

2005-11-13  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis (PCList, PCArrayRefLiteral, PCHashRefLiteral):
	New interfaces.
	(createPCLiteral, appendNewPCLiteral): New methods.
	(PCDocument): New interface.
	(factory methods): Namespace URI and local name of document
	element arguments added to |createDocument| to obtain
	an instance of |PCDocument|.

2005-10-16  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis (pc:line): New configuration parameter.
	(stringify): Don't output "#line" directive
	unless "pc:line" parameter is set to "true".
	(pc:split-resolver): New configuration parameter.

2005-10-14  Wakaba  <wakaba@suika.fam.cx>

	* ManakaiNode.dis (anydata0): New property type.

	* PerlCode.dis (stringify): Prints node id if file name 
	is not available.
	(perlLiteral): Prints as is if the value is blessed
	with "manakai::code" package.

2005-10-13  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis (CDATADOMString): Changed to use code
	fragment defined in DOMCore module directly.

2005-10-12  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis (ForClassCompat): Removed.

	* ManakaiNode.dis (ManakaiDOMNodeObject, ManakaiDOMNodeReference):
	Removed.
	(newNode): New method.
	(generateUniqueID): Algorithm has changed to save random
	string generation time.

	* DIS.dis (AUTOLOAD): "$Error::Level" fixed to "$Error::Depth".

2005-10-11  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis (IfClsDef, IFClsETDef): New version of classes based
	on DOMCore and element type definitions added.
	(localName): Renamed to "pcLocalName" to avoid
	conflict with "Node.localName" attribute.

2005-10-10  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (Require): Unused reference to "PerlCode.dis" removed.

	* Makefile: Rules to make "PerlCode.pm" separated
	from ones for "DIS.pm".

	* ManakaiNode.dis (mn:unsetXRefNode): "$referent"
	parameter is replaced with "$referrer->{$propName}".

	* PerlCode.dis (Require): References "DOMCore.dis".
	(DefaultFor): Changed to "ManakaiDOM:ManakaiDOMLatest".
	(Util: for ManakaiDOM:ManakaiDOM): New.

2005-10-09  Wakaba  <wakaba@suika.fam.cx>

	* ManakaiNode.dis: New "mn:xrefnode0" property type has
	been introduced and methods are fixed to support it.
	(mn:setXRefNode, mn:unsetXRefNode): New codes.

	* DIS.dis (loadResource): Skips a root resource definition
	if it is an alias and it has "dis:Name" attribute and
	referenced canonical definition is already read.  (Note
	that similar case that the resource definition has "dis:QName"
	attribute is already fixed in the same way.)

2005-10-08  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (readProperties): Recognizes hexdecimal 
	in "DISCore:Integer" (prefixed by "0x").

2005-10-08  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis (getExceptionInterfacePackageNameList,
	addExceptionInterfacePackageName): New methods.
	(ToString): Sorts hash keys where they result in
	the order of statements in result code.

	* Error.pm ($DEBUG): New option variable.
	(___get_error_def): Calls "___error_def" method in second or later "@ISA"
	package even if elder package has "___error_def" method.

	* DIS.dis: Now constant values are only defined
	in interfaces.
	(DIS:NO_EXCEPTION_CLASS_ERR): New exception subcode.

2005-10-06  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (getAnyResourceURIList, getModuleURIList): New methods.

2005-10-02  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (getAnyResource): New method.
	(isTypeURI): Now it is a method of "DIS:DISAnyResource" interface.
	(getPropertyResource, getPropertyResourceList): Now
	they uses "getAnyResource" method.
	(getPropertyModuleList): Removed.

2005-09-30  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (readProperties): Saves property name to values.
	(getPropertyModuleList): New method.

2005-09-29  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis: Shares local name, namespace URI and for URI
	if possible.

	* PerlCode.dis (stringify): Sorts "require" statements by module
	name.

2005-09-28  Wakaba  <wakaba@suika.fam.cx>

        * PerlCode.dis (perlLiteral): Sorts output by hash key.
	
	* ManakaiNode.dis (new): Sets "mn:groveReferenceCounter"
	property.
	(getNewReference): Increments "mn:groveReferenceCounter"
	property.
	(ManakaiDOM:ManakaiDOMNodeObject, ManakaiNodeStem): Don't
	check "defined" to allow "undef" value in "while" condition.
	(mn:isGroveReferenced): New code.
	(changeTreeID): New "groveRC" parameter added.
	(importTree, changeTreeID): Updates "mn:groveReferenceCounter"
	properties.
	(destroy): Uses "mn:isGroveReferenced" instead of "isExternallyReferred".
	(mn:groveReferenceCounter): New property.

2005-09-28  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis: Use "tag:" URI for internal URIs.

2005-09-27  Wakaba  <wakaba@suika.fam.cx>

	* ManakaiNode.dis (ManakaiNodeStem->new): Don't set "TreeCore:*"
	properties.
	(generateUniqueID): Use "tag:" URI.

	* DIS.dis (targetNamespaceURI): New attribute.
	(ManakaiDISModuleLite): Extends dx:ManakaiDefaultErrorHandler.
	(ManakaiDISModuleLite->AUTOLOAD): Don't load module
	if method name is "DESTROY".

2005-09-27  Wakaba  <wakaba@suika.fam.cx>

	* ManakaiNode.dis (ManakaiNodeStem): Use per-class
	variable for searching noderel properties instead 
	of per-node properties.

2005-09-26  Wakaba  <wakaba@suika.fam.cx>

	* ManakaiNode.dis (new): New "className" parameter added.
	(mn:NodeRefRole): New role.
	(mn:type): New property.
	(mn:subnode0, mn:subnode1, mn:subnode2, mn:irefnode0,
	mn:origin0, mn:anydata1, mn:anydata2, mn:noderef): New properties.

	* Makefile: Rules to make "DIS/DISDump" is separeted
	from "DIS/DISDoc".

	* DIS.dis (getFor): Loads database module if unread
	"for" is referenced.
	(addResourceList, getResourceList): New method.
	(ManakaiDISModuleLite): New class.

2005-09-25  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (RESOURCE_NOT_DEFINED_ERR): New error code.
	(getResource): New "dae" and "daem" database format support.
	(DISResourceList): New type.
	(uriRef, ownerModuleURI, ownerModuleURIRef): New attributes.
	(addChildResource, addDynamicChildResource): New methods.
	(getChildResourceList, getDynamicChildResourceList): New method.
	(getChildResourceListByType): New method.
	(parentResource, dynamicParentResource): New attributes.

	* Makefile (DAC_SUFFIX): Changed to ".dae".
	(DAEM_SUFFIX): New.


2005-09-24  Wakaba  <wakaba@suika.fam.cx>

	* ManakaiNode.dis: Use "disPerl:H" instead
	of "disPerl:Q" for hash keys.
	(NodeStem): Property value "mn:treeID"
	has changed to scalar reference. 

2005-09-24  Wakaba  <wakaba@suika.fam.cx>

	* ManakaiNode.dis (mn:node, mn:nodeID, mn:treeID): New
	properties.
	(mn:stemName, mn:refName): New properties.

	* Makefile (.discore-all.pm): New rule to create dis-related
	Perl module files at once.

	* DIS.dis (PERL_HASH_KEY_ALREADY_DEFINED_ERR): New error code.
	(hashKeyName, hashKeyScope, anotherURI): New error parameters.

	* ManakaiNode.dis, DIS.dis, PerlCode.dis: Use "disPerl:H" instead
	of "disPerl:Q" for hash keys.

2005-09-23  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (DISParser.new): New method.
	(hasFeature): Removed.  ManakaiDISAnyResource now
	extends DOMFeature:ManakaiHasFeatureByGetFeature.
	(readProperties): Support for property value data
	types DISLang:MemberRef and dx:XCRef added.
	(ManakaiDISExceptionTarget): It is now an alias
	for dx:ManakaiDefaultExceptionHandler.

2005-09-22  Wakaba  <wakaba@suika.fam.cx>

	* Makefile: DAC_SUFFIX changed to ".dad".

	* DIS.dis (Util:): Added for DIS|ForEmpty and DIS|ForLatest.
	(disIsNullable): Reimplemented.

2005-09-21  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (addNamespaceBinding): New method.

2005-09-20  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis: Use valueRef and nodeIDRef where possible so
	that dad file can share text data if possible.
	For resources, {subOf} and {supOf} is now optional.
	(sourceNodeIDRef): New attribute.

2005-09-19  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis: Parameter "databaseArg" added to various
	methods to support objects that have no associated
	database.
	(getNamespaceBindingList, getDefaultNamespaceURIRef): New
	methods.
	(NO_RDF_TYPE_ERR): New error type.
	(loadResource): Throws NO_RDF_TYPE_ERR if no rdf:type
	attribute specified for a resource definition.

2005-09-16  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (DISResourceProp): Methods reimplemented to
	support DIS/Value values.

2005-09-15  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (readProperties): New methods.  Emploies DIS/Value
	classes for internal data structure.

2005-09-14  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis: Now references DIS/Value.dis.
	(DISAnyResource): New interface separeted from DISModule.
	DISFor and DISResource.

2005-09-13  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis: Perl-related methods are moved to a separate
	module "DIS/Perl.dis".

2005-09-08  Wakaba  <wakaba@suika.fam.cx>

	* Makefile: Renewaled.

	* ManakaiNode.dis (free): New method.

2005-09-07  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis: Interfaces added.
	(free): New method.

	* PerlCode.dis: Interfaces added.

2005-09-06  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (plName): Use AppName attribute, if any,
	for ManakaiDOM:ConstGroup resources.

2005-09-05  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (plGeneratePerlModuleFile): Don't generate code for
	the same class or variable twice whose alias is defined
	in the same module.

2005-09-04  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis (ManakaiPerlSub.IntClone): Copies pc:localName
	and pc:prortotype properties.

	* DIS.dis (plAdditionalISAPackages): New attribute.

2005-09-01  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (plCodeFragment): The ManakaiDOM:boolean datatype
	supported.

2005-08-31  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (uris): New attribute.

2005-08-30  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (plFilePathStem): New attribute.

2005-08-29  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (plFileNameStem): New attribute.

2005-08-28  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (plCodeFragment): Type ManakaiDOM:InCase supported.

2005-08-26  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis: Typo fixed for replacing namespace URI and local name
	in reflecting code.
	(mvLocalName, mvNamespaceURI): Use "localName" and "namespaceURI"
	attribute values as their default.
	(mvPrefix, qnameValuePrefix): New attributes.

	* ManakaiNode.dis: Tests whether "defined" rather than true or not
	in "while" conditions.

2005-08-15  Wakaba  <wakaba@suika.fam.cx>

	* ManakaiNode.dis (Util:): Now Perl package name for interfaces
	is defined.

	* DIS.dis (mediaTypeURI): Returns $defaultMediaType
	parameter value if dis:ContentType attribute is missing.

	* ManakaiNode.dis (importTree): Use "isa" function
	to check whether a object is an instance of the manakai
	node model.
	(NodeStem, NodeRef): New lightweight variant 
	of ManakaiDOM:ManakaiDOMNodeObject 
	and ManakaiDOM:ManakaiDOMNodeReference.

2005-05-29  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (plGeneratePerlModuleFile): Bug fixed so that
	even if DOMMetaImpl:provideFeature has child nodes but
	they are not DOMMetaImpl:providedThrough a ImplFeature
	statement is generated.
	(plCodeFragment): Bug fixed so that dis:SetProp works correctly.

2005-05-26  Wakaba  <wakaba@suika.fam.cx>

	* Makefile: Rules for DISDoc module added.

2005-05-23  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (ManakaiDISResourceDefinition, ManakaiDISForDefinition,
	ManakaiDISModuleDefinition): "getFeature" method added.

2005-03-06  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (Require): Loads PerlCode module.

2005-03-05  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis: Operator overloading is implemented.

2005-03-04  Wakaba  <wakaba@suika.fam.cx>

	* ManakaiNode.dis: Checks type, to support SuikaWikiConfig21
	module's binding properties. 

2005-03-03  Wakaba  <wakaba@suika.fam.cx>

	* PerlCode.dis: New module.

2005-02-26  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (DISModuleResolver): New interface.

2005-02-21  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis: New module.

	* ManakaiNode.dis: New "subnode0" property category introduced. 

2005-02-17  Wakaba  <wakaba@suika.fam.cx>

	* ManakaiNode.dis: New module.

2005-01-05  Wakaba  <wakaba@suika.fam.cx>

	* Error.pm (___rule_def[p]): Don't output anything if not exists
	that parameter.

2004-09-30  Wakaba  <wakaba@suika.fam.cx>

	* Error.pm (___rule_def): "p" added; now "t" is obsolete.

2004-04-02  Wakaba  <wakaba@suika.fam.cx>

	* Error.pm (report): Error depth fixed.
	(___rule_def:t): New parameters empty and undef introduced.

2004-01-17  Wakaba  <wakaba@suika.fam.cx>

	* Error.pm: Some fixes w.r.t. Error::Depth.

2003-12-06  Wakaba  <wakaba@suika.fam.cx>

	* Error.pm (___error_def): Renamed from ___errors.

2003-12-01  Wakaba  <wakaba@suika.fam.cx>

	* Error.pm (___get_error_def): Now support inherit. (It was not work.)

2003-11-15  Wakaba  <wakaba@suika.fam.cx>

	* Error.pm: Use Message::Util::Formatter::Text to construct error messages.

2003-11-13  Wakaba  <wakaba@suika.fam.cx>

	* Formatter: New directory.

2003-11-12  Wakaba  <wakaba@suika.fam.cx>

	* Error.pm: Rewritten.

2003-10-25  Wakaba  <wakaba@suika.fam.cx>

	* Formatter.pm (replace): Allow '%foo () ;'.

2003-09-17  Wakaba  <wakaba@suika.fam.cx>

	* HostPermit.pm: New module.

2003-08-05  Wakaba  <wakaba@suika.fam.cx>

	* Error.pm (_default_error_handler): Syntax fix.

	* Error/: New directory.

2003-07-29  Wakaba  <wakaba@suika.fam.cx>

	* Error.pm: New module.

2003-05-10  Wakaba  <w@offweb.ddo.jp>

	* Formatter.pm (replace): Bug fix of pattern.

2003-04-29  Wakaba  <w@offweb.ddo.jp>

	* Formatter.pm (replace): {...} block is supported.
	(Message::Util::Formatter::_returned): New package.  It is very very tiny
	subset of SuikaWiki::Markup::XML.
	(replace): Return structured string, not bare string.  This function is
	useful to make tree (such as XML's) from formatting template (and its nested
	parameters).

2003-03-28  Wakaba  <w@offweb.ddo.jp>

	* Formatter.pm (replace): Treat oo of "str"oo of attr value as option and parse attr value if 'p' option is specified.
	(replace): Replace '-' to '_' in attr name.

2003-01-26  Wakaba  <w@cube.wakaba.ssm>

	* Formatter.pm (replace): Trim attribute name/value pair.

2003-01-04  Wakaba  <w@suika.fam.cx>

	* Formatter.pm (replace): Don't split by ',' in quoted-strings.

2002-12-15  Wakaba  <w@suika.fam.cx>

	* Formatter.pm (%char;): Removed.

2002-12-05  Wakaba  <w@suika.fam.cx>

	* Formatter.pm (%FMT2TXT): New (internal) initial format rule,
	"-bare_text".
	(replace): "Replace" non-%-text with "-bare_text" rule.
	(pod): Methods and initial rules are documented.

2002-12-04  Wakaba  <w@suika.fam.cx>

	* Formatter.pm (replace): Accept ")" in quoted-string.

2002-11-13  Wakaba <w@suika.fam.cx>

	* ChangeLog: New file.
	* Formatter.pm: New module.
