descriptionBob is an XML Data Binding tool. 'Bob' provides a convenient way to bind XML definitions to object representations.
ownertwashing@gmail.com
last changeFri, 26 Mar 2010 04:14:16 +0000 (26 00:14 -0400)
content tags
add:
README
Bob is an XML Data Binding tool. 'Bob' provides a convenient way to bind XML definitions to object representations. It can be used for:
    1. application prototyping
    2. rapid application development
    3. easily handling large amounts of xml data

The idea is to map out your business objects in xml. Xml tags with matching names and namespaces can be mentioned across many documents and still represent the same business object.

There are some articles that go into the utility and features if Data Binding tools:
http://www.xml.com/pub/a/2003/09/03/binding.html
http://www-106.ibm.com/developerworks/library/x-databdopt/index.html

'XML Data Binding Resources'
http://www.rpbourret.com/xml/XMLDataBinding.htm


FEATURES:
    -- 'n' documents. definition set generated from multiple documents
    -- same tag & namespace. is part of same definition across documents
    -- write objects out with 'toXML()'


USAGE:
    
    java -classpath $CP com.interrupt.bob.Main $xml_files

    options:
	gen - directory in which to put generated documents (deafult: gen)
	base - the base directory from which to run 'bob'   (default: .)
	end - select xml files with a given suffix	    (default: .xml)
	
	ex) 
	java -classpath $CP com.interrupt.bob.Main -gen gen/ -base . -end xml $xml_files


IBob:
    content/accessors
    attributes/accessors

    all
    adders
    removers
    finders

    toXML

    CDATA
    attribute type definition

    

LIBRARY DEPENDANCIES:

    Piccolo.jar (http://piccolo.sourceforge.net/)
    commons-cli-1.0.jar (http://jakarta.apache.org/commons/cli/)
    javafind.jar (http://sourceforge.net/projects/javafind/)
    velocity-1.3.1.jar (http://jakarta.apache.org/velocity/)
    velocity-dep-1.3.1.jar

    
ISSUES
    -- xml attributes cannot be named 'tagName' as this conflicts with bob internals
    -- xml attributes cannot have dashes in thier names
    -- tags cannot have more than 1 child with the same name (even with different packages)
    -- user should specify type of subclass to generated classes; default to 'GClazz' is 'Clazz'
	-- 'Bob' needs bob.jar to compile and begin the compile process. This is because the Queue & DocumentProcessor
		portion of the code uses generated 'Bob' classes, which need to be generated and compiled to be used. 
		This makes it neccessary to have 'bob.jar' as part of the required libraries of 'Bob'.



shortlog
2010-03-26 Timothy Washingtonreplaced all StringBuffers with StringBuilder to improv... master
2009-09-05 Timothy Washingtonadding BSD license file
2009-07-24 Timothy Washingtonfixing the XML handling and queuing process
2009-07-20 Timothy Washingtonfixing bob's queuing system
2009-07-13 Timothy Washingtonremoving log files from repo
2009-07-13 Timothy Washingtonadding an initialise() method to Bob objects
2009-07-01 Timothy Washingtonfixing checkout test wrt Bookkeeping
2009-06-27 Timothy Washingtonmaking changes to Util
2009-03-08 Timothy Washingtonremoving stale Spittoon class
2009-03-08 Timothy Washingtonironing out how definition files are loaded
2009-01-09 Timothy Washingtonzzz
2009-01-08 Timothy Washington-- finished basic finding with xpath expressions incl.
2009-01-07 Timothy Washingtoninitial and/or conditions for predicates
2009-01-05 Timothy Washingtonkeeping repository in sync
2009-01-03 Timothy Washingtonprogress in implementing basic root path and axis step...
2008-12-30 Timothy Washington-- removing expressionStack as a processing artifact...
...
heads
14 years ago master