<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>And Maybe a Wee Bit More</title>
	<atom:link href="http://scottmball.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://scottmball.wordpress.com</link>
	<description>Just another WordPress.com weblog</description>
	<lastBuildDate>Wed, 19 Oct 2011 13:45:41 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='scottmball.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>And Maybe a Wee Bit More</title>
		<link>http://scottmball.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://scottmball.wordpress.com/osd.xml" title="And Maybe a Wee Bit More" />
	<atom:link rel='hub' href='http://scottmball.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Name change for Maria temporal XML project</title>
		<link>http://scottmball.wordpress.com/2010/06/23/name-change-for-maria-temporal-xml-project/</link>
		<comments>http://scottmball.wordpress.com/2010/06/23/name-change-for-maria-temporal-xml-project/#comments</comments>
		<pubDate>Wed, 23 Jun 2010 21:44:05 +0000</pubDate>
		<dc:creator>scott97007</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://scottmball.wordpress.com/?p=121</guid>
		<description><![CDATA[I was going to name my Java-based temporal XML database project &#8220;Maria.&#8221;  After looking around recently I learned that the MySQL project uses something called &#8220;Maria&#8221; for its back end.  That is too similar to my project, so I need a different name.  After doing some thinking and googling I think I&#8217;ll go with the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=scottmball.wordpress.com&amp;blog=6610563&amp;post=121&amp;subd=scottmball&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I was going to name my Java-based temporal XML database project &#8220;Maria.&#8221;  After looking around recently I learned that the MySQL project uses something called &#8220;Maria&#8221; for its back end.  That is too similar to my project, so I need a different name.  After doing some thinking and googling I think I&#8217;ll go with the name &#8220;Doc Smith&#8221; as an alternative.</p>
<p>The project is really aimed at documentation more than temporal XML.  Besides, when I talk to people about the &#8220;temporal XML&#8221; project I&#8217;m working on I get nice blank 1,000-mile stares and they promptly change the subject.  I think people would understand what a specialized &#8220;document processor&#8221; is.  The project is really about documents that are made mostly out of subdocuments with special tagging so that the subdocuments can be pulled into specialized reports.  The subdocuments can have database-like fields associated with them.  Everything is fully versioned.  The subdocuments and their associated fields are stored in a database so they can be pulled together into documents as alternate views using queries for special reporting needs.  This is useful for things like project management and requirements management.  The documents and alternate view documents can also be extracted from the database and put into formats like .PDF and xhtml so the data can be viewed easily over the Internet.</p>
<p>So now I have to change the name over in Assemebla where the source is stored, and I need to change the names and internal documentation from &#8220;maria&#8221; to &#8220;docsmith&#8221; in the source code.  Oh well. I needed to go through and clean up the code anyway.  Lots of documentation is needed, as well as more complete test cases.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/scottmball.wordpress.com/121/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/scottmball.wordpress.com/121/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/scottmball.wordpress.com/121/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/scottmball.wordpress.com/121/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/scottmball.wordpress.com/121/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/scottmball.wordpress.com/121/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/scottmball.wordpress.com/121/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/scottmball.wordpress.com/121/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/scottmball.wordpress.com/121/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/scottmball.wordpress.com/121/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/scottmball.wordpress.com/121/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/scottmball.wordpress.com/121/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/scottmball.wordpress.com/121/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/scottmball.wordpress.com/121/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=scottmball.wordpress.com&amp;blog=6610563&amp;post=121&amp;subd=scottmball&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://scottmball.wordpress.com/2010/06/23/name-change-for-maria-temporal-xml-project/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9fee556af336cd51a2e02eb7574f6ee8?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">scott97007</media:title>
		</media:content>
	</item>
		<item>
		<title>Oracle Certified SQL Expert exam completed</title>
		<link>http://scottmball.wordpress.com/2010/06/18/oracle-certified-sql-expert-exam-completed/</link>
		<comments>http://scottmball.wordpress.com/2010/06/18/oracle-certified-sql-expert-exam-completed/#comments</comments>
		<pubDate>Fri, 18 Jun 2010 15:58:04 +0000</pubDate>
		<dc:creator>scott97007</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://scottmball.wordpress.com/?p=114</guid>
		<description><![CDATA[I finally completed the Oracle Certified SQL Expert exam (1z0-047).  It was a pretty tough test, but I passed with flying colors. My previous experience with Oracle was as a QA tester for a software product that used Oracle 9i and 10g for data storage.  I never used Oracle SQL. I just installed and set [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=scottmball.wordpress.com&amp;blog=6610563&amp;post=114&amp;subd=scottmball&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I finally completed the Oracle Certified SQL Expert exam (1z0-047).  It was a pretty tough test, but I passed with flying colors.</p>
<p>My previous experience with Oracle was as a QA tester for a software product that used Oracle 9i and 10g for data storage.  I never used Oracle SQL. I just installed and set up Oracle on a system, installed the software product, and did blackbox testing on the software product.  Taking the exam helped fill a bunch of gaps in my knowledge of Oracle.</p>
<p>For my exam prep I used two exam preparation books.  One was Steve O&#8217;Hern&#8217;s <em><strong>SQL Certified Expert Exam Guide</strong></em>.  This book covered most, but not all, of the topics that were on the exam.  To study with this book I went through it once and took all the quizzes at the end of the chapters, writing down my answers on paper and then checking and saving the results.  After finishing the book I took all of the quizzes a second time, again saving the results.  Then I went over all of the answers I got wrong and made sure I understood the concepts.  Then I took the example test on the disk that came with the book.  The example test was a close approximation tothe actual Oracle exam.  The example test gave feedback on which questions I got wrong.   I reviewed the questions I missed and took the same example test a second time.</p>
<p>I also went through another exam prep book for the 1z0-051 exam, and looked for blogs and other Internet articles on the 1z0-047 exam.</p>
<p>Like I said, I passed with flying colors.</p>
<p>The one of the things missing from the exam prep books was the &#8220;q()&#8221; operator that is sometimes used for strings that contain single quotes.  Fortunately, one of the blog articles I found had covered the topic, so I got a question correct on the test because of my web research.</p>
<p>Some of the questions on the exam were almost impossible to get right because the questions were poorly worded.  When reading the questions I could see that one answer would be correct, but the test really wanted a different answer.  Fortunately, O&#8217;Hearn recognized this and gave sample questions that were of the same character, so when I took the real test I was able to give the &#8220;correct&#8221; answer, even though I knew that the real answer was a little different.  Also, the passing level of 66% correct seems a little generous at first, but in reality it helps compensate for the number of ambiguous questions.</p>
<p>The test isn&#8217;t perfect, but in the long haul it does what it sets out to do, which is to give us software guys a vehicle for upping our Oracle SQL skills and it gives employers and potential employers some objective measure of our SQL skills.  In my case I have used SQL to a small degree while working on mainframes, building DB driven web sites, and testing commercial software.  I would say that my knowledge of the details of SQL, especially with respect to Oracle has increased dramatically.</p>
<p>Was it worth the $195, plus two certification books?  I can resell the books and get most of my money back, so the total cost will be about $230.  I think the price is worth it.  I can now say that I am an Oracle certified SQL expert.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/scottmball.wordpress.com/114/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/scottmball.wordpress.com/114/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/scottmball.wordpress.com/114/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/scottmball.wordpress.com/114/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/scottmball.wordpress.com/114/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/scottmball.wordpress.com/114/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/scottmball.wordpress.com/114/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/scottmball.wordpress.com/114/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/scottmball.wordpress.com/114/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/scottmball.wordpress.com/114/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/scottmball.wordpress.com/114/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/scottmball.wordpress.com/114/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/scottmball.wordpress.com/114/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/scottmball.wordpress.com/114/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=scottmball.wordpress.com&amp;blog=6610563&amp;post=114&amp;subd=scottmball&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://scottmball.wordpress.com/2010/06/18/oracle-certified-sql-expert-exam-completed/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9fee556af336cd51a2e02eb7574f6ee8?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">scott97007</media:title>
		</media:content>
	</item>
		<item>
		<title>All Sedna primitives are working</title>
		<link>http://scottmball.wordpress.com/2010/04/23/all-sedna-primitives-are-working/</link>
		<comments>http://scottmball.wordpress.com/2010/04/23/all-sedna-primitives-are-working/#comments</comments>
		<pubDate>Fri, 23 Apr 2010 17:08:38 +0000</pubDate>
		<dc:creator>scott97007</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://scottmball.wordpress.com/?p=109</guid>
		<description><![CDATA[I wrote more Sedna db update primitives.  All of the core pieces of the DDL and DML (data manipulation language) are working.  Next up, clean up the code:  Add more negative tests to the Junit suite for the db operations, and add error handling to the DML code.  I just put everything into Assembla if [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=scottmball.wordpress.com&amp;blog=6610563&amp;post=109&amp;subd=scottmball&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I wrote more Sedna db update primitives.  All of the core pieces of the DDL and DML (data manipulation language) are working.  Next up, clean up the code:  Add more negative tests to the Junit suite for the db operations, and add error handling to the DML code. </p>
<p>I just put everything into Assembla if you are looking for code examples.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/scottmball.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/scottmball.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/scottmball.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/scottmball.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/scottmball.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/scottmball.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/scottmball.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/scottmball.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/scottmball.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/scottmball.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/scottmball.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/scottmball.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/scottmball.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/scottmball.wordpress.com/109/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=scottmball.wordpress.com&amp;blog=6610563&amp;post=109&amp;subd=scottmball&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://scottmball.wordpress.com/2010/04/23/all-sedna-primitives-are-working/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9fee556af336cd51a2e02eb7574f6ee8?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">scott97007</media:title>
		</media:content>
	</item>
		<item>
		<title>The Sedna Java base is complete</title>
		<link>http://scottmball.wordpress.com/2010/04/19/the-sedna-java-base-is-complete/</link>
		<comments>http://scottmball.wordpress.com/2010/04/19/the-sedna-java-base-is-complete/#comments</comments>
		<pubDate>Mon, 19 Apr 2010 20:49:53 +0000</pubDate>
		<dc:creator>scott97007</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[collection]]></category>
		<category><![CDATA[connecting]]></category>
		<category><![CDATA[document]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[module]]></category>
		<category><![CDATA[sedna]]></category>
		<category><![CDATA[xquery]]></category>

		<guid isPermaLink="false">http://scottmball.wordpress.com/?p=106</guid>
		<description><![CDATA[Most of the base is complete for a Sedna Java application.  I have committed it to assembla.  If you are learning to use Sedna with Java you might want to consider looking at today&#8217;s version.  It has most or all of the key components for connecting, creating documents and collections, loading and using modules.  Those [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=scottmball.wordpress.com&amp;blog=6610563&amp;post=106&amp;subd=scottmball&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Most of the base is complete for a Sedna Java application.  I have committed it to assembla.  If you are learning to use Sedna with Java you might want to consider looking at today&#8217;s version.  It has most or all of the key components for connecting, creating documents and collections, loading and using modules.  Those are the hard tasks when learning a database.</p>
<p>Look at &lt;<a href="https://www.assembla.com/code/mariaxmldb/subversion/nodes">https://www.assembla.com/code/mariaxmldb/subversion/nodes</a>&gt;.  </p>
<p>Open &#8220;Show revision log&#8221;.  </p>
<p>Open Revision 17 (with timestamp &#8220;2010/04/19 20:31&#8243;).  </p>
<p>Get the components. </p>
<p>Everything works for me as-is.  I put the config files and modules in my user root on my Mac OS X system.  I run Sedna on Windows 2000 running on Virtual Box.  I run the components out of Eclipse. </p>
<p>Review my notes in my earlier posts.</p>
<p>Good luck!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/scottmball.wordpress.com/106/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/scottmball.wordpress.com/106/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/scottmball.wordpress.com/106/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/scottmball.wordpress.com/106/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/scottmball.wordpress.com/106/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/scottmball.wordpress.com/106/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/scottmball.wordpress.com/106/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/scottmball.wordpress.com/106/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/scottmball.wordpress.com/106/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/scottmball.wordpress.com/106/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/scottmball.wordpress.com/106/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/scottmball.wordpress.com/106/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/scottmball.wordpress.com/106/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/scottmball.wordpress.com/106/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=scottmball.wordpress.com&amp;blog=6610563&amp;post=106&amp;subd=scottmball&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://scottmball.wordpress.com/2010/04/19/the-sedna-java-base-is-complete/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9fee556af336cd51a2e02eb7574f6ee8?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">scott97007</media:title>
		</media:content>
	</item>
		<item>
		<title>Xquery updates and modules in Sedna</title>
		<link>http://scottmball.wordpress.com/2010/04/19/xquery-updates-and-modules-in-sedna/</link>
		<comments>http://scottmball.wordpress.com/2010/04/19/xquery-updates-and-modules-in-sedna/#comments</comments>
		<pubDate>Mon, 19 Apr 2010 19:35:53 +0000</pubDate>
		<dc:creator>scott97007</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[sedna]]></category>
		<category><![CDATA[xquery update]]></category>

		<guid isPermaLink="false">http://scottmball.wordpress.com/?p=103</guid>
		<description><![CDATA[Just a couple of quick notes about Xquery updates and modules in Sedna.  I tried to write an Xquery function to execute updates, and I put the function into a module.  It wouldn&#8217;t load.  Updates don&#8217;t seem to run from functions in Sedna.  It goes against the Xquery syntax.   Apparently, updates are an extension [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=scottmball.wordpress.com&amp;blog=6610563&amp;post=103&amp;subd=scottmball&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Just a couple of quick notes about Xquery updates and modules in Sedna. </p>
<p>I tried to write an Xquery function to execute updates, and I put the function into a module.  It wouldn&#8217;t load. </p>
<p>Updates don&#8217;t seem to run from functions in Sedna.  It goes against the Xquery syntax.   Apparently, updates are an extension to Xquery, not an informal part of the syntax, so they don&#8217;t load.  </p>
<p>Updates have to be run like DDL statements; outside the Xquery mechanisms.</p>
<p>This presents a security problem. </p>
<p>With SQL you can update the database using functions and passing parameters into the function.  That clears up some potential security issues, especially since SQL languages have built-in commands that prevent function values from being executed as SQL. </p>
<p>With Sedna&#8217;s Update extensions there is no such built-in commands.  Any application using Sedna has to edit user data for security issues.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/scottmball.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/scottmball.wordpress.com/103/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/scottmball.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/scottmball.wordpress.com/103/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/scottmball.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/scottmball.wordpress.com/103/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/scottmball.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/scottmball.wordpress.com/103/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/scottmball.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/scottmball.wordpress.com/103/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/scottmball.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/scottmball.wordpress.com/103/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/scottmball.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/scottmball.wordpress.com/103/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=scottmball.wordpress.com&amp;blog=6610563&amp;post=103&amp;subd=scottmball&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://scottmball.wordpress.com/2010/04/19/xquery-updates-and-modules-in-sedna/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9fee556af336cd51a2e02eb7574f6ee8?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">scott97007</media:title>
		</media:content>
	</item>
		<item>
		<title>Adding a module in Sedna through the Java API on a remote server</title>
		<link>http://scottmball.wordpress.com/2010/04/17/adding-a-module-in-sedna-through-the-java-api-on-a-remote-server/</link>
		<comments>http://scottmball.wordpress.com/2010/04/17/adding-a-module-in-sedna-through-the-java-api-on-a-remote-server/#comments</comments>
		<pubDate>Sat, 17 Apr 2010 04:26:10 +0000</pubDate>
		<dc:creator>scott97007</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://scottmball.wordpress.com/?p=99</guid>
		<description><![CDATA[There is some information on the Internet covering the technique for adding a module to Sedna using Java.  What is missing, however, is the information on how to do this when the Java app is on one box and Sedna is running on a different box.  It took me a while to figure out how [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=scottmball.wordpress.com&amp;blog=6610563&amp;post=99&amp;subd=scottmball&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>There is some information on the Internet covering the technique for adding a module to Sedna using Java.  What is missing, however, is the information on how to do this when the Java app is on one box and Sedna is running on a different box.  It took me a while to figure out how because it isn&#8217;t as cut-and-dried as the examples for doing so on a single box. </p>
<p>The single box examples all use localhost as the Sedna server.  They also bring in a module from a file on the file system.  When I tried this on my systems I found an issue with this.  It isn&#8217;t clear from the Sedna documentation which box should have the file stored on it.  </p>
<p>I tried to load a module from the Sedna command prompt and had no problem.  Everything went well.  I copied the commands from the Sedna command prompt to a Java class to load the module from the API.  This failed.  A little trial-and-error showed me how to do it.  The file should be stored on the same box that is running the Java app, or at least on a system that the Java app box can access. </p>
<p>Here is the contents of the module file that I named &#8216;maria_functions.xquery&#8217;. I stored this on my Java app system in &#8216;/Users/smoo/maria_functions.xquery&#8217;.</p>
<blockquote><p>module namespace math = &#8220;http://mariatxmldb.org/math&#8221;;  </p>
<p>declare variable $math:pi as xs:decimal := 3.1415926;  </p>
<p>declare function math:increment($num as xs:decimal) as xs:decimal {  </p>
<p>    $num + 1  </p>
<p>};  </p>
<p> declare function math:square($num as xs:decimal) as xs:decimal {  </p>
<p>    $num * $num  </p>
<p>};</p></blockquote>
<p>Here is the main part of my test code that loads, runs and dumps it.  Sorry it isn&#8217;t clean, but I just worked this out and haven&#8217;t cleaned it up yet.</p>
<blockquote><p>public int setUpUserDB () throws MariaException  {</p>
<p>if (log.isDebugEnabled()) {</p>
<p>  log.debug(&#8220;&#8221;);</p>
<p>}</p>
<p>try {</p>
<p>    SednaStatement st1 = sednaConn.createStatement();</p>
<p>    sednaConn.begin(); </p>
<p>    try {</p>
<p>        st1.execute(&#8220;DROP MODULE &#8216;http://mariatxmldb.org/math&#8217;&#8221;);</p>
<p>        sednaConn.commit();</p>
<p>    } catch (DriverException e) { }</p>
<p>    sednaConn.begin(); </p>
<p>    try {</p>
<p>        st1.execute(&#8220;LOAD MODULE &#8216;/Users/smoo/maria_functions.xquery&#8217;&#8221;);</p>
<p>    } catch (DriverException e) {</p>
<p>        e.printStackTrace();</p>
<p>        throw new MariaException(e, -1, &#8220;&#8221;);</p>
<p>    }</p>
<p>    sednaConn.commit();</p>
<p>    DBOp dbOp = new DBOp(dbConn);</p>
<p>    try {</p>
<p>        dbOp.verifyDocumentCreationInCollection(conf.getLogger(), dbConn, </p>
<p>                &#8221;http://maria_functions.org/math&#8221;, &#8220;$modules&#8221;);</p>
<p>    } catch (Exception e) {</p>
<p>        e.printStackTrace();</p>
<p>    }</p>
<p>    sednaConn.begin(); </p>
<p>    boolean gotAResult = </p>
<p>    st1.execute(&#8220;import module namespace math =</p>
<p>        &#8217;http://mariatxmldb.org/math&#8217;;math:square($math:pi)&#8221;);</p>
<p>    if (gotAResult) {</p>
<p>        SednaSerializedResult pr1 = st1.getSerializedResult();</p>
<p>        String item;</p>
<p>        item = pr1.next();</p>
<p>        int count = 1;</p>
<p>        while(item!=null) {</p>
<p>             System.out.println(count+&#8221; item: &#8220;+item);</p>
<p>             item = pr1.next();</p>
<p>             System.out.println(&#8220;===================&#8221;);</p>
<p>            count++;</p>
<p>       }</p>
<p>   }</p>
<p>  sednaConn.commit();</p>
<p>  sednaConn.begin(); </p>
<p>  st1.execute(&#8220;DROP MODULE &#8216;http://mariatxmldb.org/math&#8217;&#8221;); // Clean up. </p>
<p>  sednaConn.commit();</p>
<p>} catch (DriverException e) {</p>
<p>    e.printStackTrace();</p>
<p>  } finally {</p>
<p>      try {</p>
<p>          if (sednaConn != null) sednaConn.close();</p>
<p>      } catch (DriverException e) {</p>
<p>          e.printStackTrace();</p>
<p>      }</p>
<p>} </p>
<p>return 1;  // stub</p>
<p>}</p></blockquote>
<p> </p>
<p>The module was stored on my Java app box, which is Mac Book.  The Sedna box is virtualized in Virtualbox and it is running in Windows 2000. </p>
<p>When I run the app in Eclipse, I get a return value of the math operation of &#8220;9.86960406437476&#8243;.</p>
<p>Hope this helps.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/scottmball.wordpress.com/99/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/scottmball.wordpress.com/99/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/scottmball.wordpress.com/99/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/scottmball.wordpress.com/99/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/scottmball.wordpress.com/99/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/scottmball.wordpress.com/99/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/scottmball.wordpress.com/99/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/scottmball.wordpress.com/99/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/scottmball.wordpress.com/99/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/scottmball.wordpress.com/99/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/scottmball.wordpress.com/99/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/scottmball.wordpress.com/99/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/scottmball.wordpress.com/99/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/scottmball.wordpress.com/99/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=scottmball.wordpress.com&amp;blog=6610563&amp;post=99&amp;subd=scottmball&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://scottmball.wordpress.com/2010/04/17/adding-a-module-in-sedna-through-the-java-api-on-a-remote-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9fee556af336cd51a2e02eb7574f6ee8?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">scott97007</media:title>
		</media:content>
	</item>
		<item>
		<title>Working with JUnit and Sedna</title>
		<link>http://scottmball.wordpress.com/2010/04/15/working-with-junit-and-sedna/</link>
		<comments>http://scottmball.wordpress.com/2010/04/15/working-with-junit-and-sedna/#comments</comments>
		<pubDate>Thu, 15 Apr 2010 23:54:44 +0000</pubDate>
		<dc:creator>scott97007</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[COBOL]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[junit]]></category>
		<category><![CDATA[log4j]]></category>
		<category><![CDATA[sedna]]></category>
		<category><![CDATA[temporal xml]]></category>
		<category><![CDATA[unit testing]]></category>

		<guid isPermaLink="false">http://scottmball.wordpress.com/?p=93</guid>
		<description><![CDATA[I&#8217;m starting to gain some traction with JUnit and Sedna.  And Java too.  I find it interesting how much code is not directly related to the end-product.  Easily, the majority of the product code in Java is code for exception handling.  The old batch mainframe programs I used to maintain were similar.  Most old COBOL [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=scottmball.wordpress.com&amp;blog=6610563&amp;post=93&amp;subd=scottmball&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m starting to gain some traction with JUnit and Sedna.  And Java too. </p>
<p>I find it interesting how much code is not directly related to the end-product.  Easily, the majority of the product code in Java is code for exception handling.  The old batch mainframe programs I used to maintain were similar.  Most old COBOL code is devoted to validating data and validating and verifying data operations.   Java is no different.  Only the syntax has changed.</p>
<p>Most of the overall Java code is for unit testing.  As I write a new Java class I also have to write the JUnit tests.  The JUnit test have more lines of code than the class being tested.   So less than 1/4th of the code that is written is actual product code.  The rest is error handling and V&amp;V.</p>
<p>Sedna is painful to pick up, at least at the start.  Some small, but critical, bits of information aren&#8217;t well documented.  Sedna uses a non-standard construct for referencing documents in collections.  It would be nice if they documented this better.  Standard document references look like this: </p>
<p>doc(&#8216;some-document-name&#8217;)</p>
<p>To reference a document in a collection, Sedna added a second parameter for the collection, like this:</p>
<p>doc(&#8216;some-document-name&#8217;, &#8216;some-collection-name&#8217;)</p>
<p>I spent about half a day figuring this out and figuring out how to work with it. </p>
<p>Some other useful things I picked up that also weren&#8217;t documented, or at least, weren&#8217;t documented clearly.</p>
<p>To get all of the documents and collections use &#8216;$document&#8217; in the doc() function.  &#8217;$document&#8217; is a  special variable for listing all of the documents and collections.  For some reason this function returns all of the collections as well as the documents: </p>
<p>doc(&#8216;$documents&#8217;)</p>
<p>To get just the collections use &#8216;$collections&#8217; in the doc() function:</p>
<p>doc(&#8216;$collections&#8217;)</p>
<p>To get just documents that are not in a collection is pretty easy:</p>
<p>doc(&#8216;$documents&#8217;)/documents/document</p>
<p>To get a list of collections use:</p>
<p>doc(&#8216;$collections&#8217;)/collections/collection</p>
<p>One notable problem I ran into was figuring out how to get a list of documents in a given collection.  The easiest way I found so far is:</p>
<p>for $x in doc (&#8216;$documents&#8217;)/documents/collection where $x/@name=&#8217;the-collection-name&#8217;  return $x</p>
<p><span style="color:#ff0000;">[UPDATE: April 27, 2010:  A simpler query to get a list of all documents in a collection:</span></p>
<p><span style="color:#ff0000;">doc('$documents')/documents/collection[@name='the-collection-name']/*/@name/string()</span></p>
<p><span style="color:#ff0000;">]</span></p>
<p>Determine whether a specific document is in a given collection is a little more complex:</p>
<p>count(for $x in doc (&#8216;$documents&#8217;)/documents/collection where ($x/@name=&#8217;the-collection-name&#8217; and $x/document/@name=&#8217;the-document-name&#8217;) return &#8216;something-to-count&#8217;)</p>
<p>If the return value is &#8217;0&#8242; the document is not in the collection.  If the return value is &#8217;1&#8242; the document is in the collection.  Let me know if you&#8217;ve found an easier way to do this.</p>
<p>Some of the examples and documentation I found on the Internet for literal strings used single-quotes, and others, such as the XML:DB documentation, used escaped double-quotes.  It took a little digging in the W3 XQuery specs to figure out that both single- and double-quotes work.  In my Java code I don&#8217;t need to surround literals with escaped double-quotes. </p>
<p>The error handling took a little researching.  I looked in the Sedna source code.  Sedna has almost 600 unique error codes.  My problem in designing the Maria Temporal XML DB system was figuring out how to handle these.  I finally figured out that I need to make the Maria the application  layer isolate the Sedna errors and translate them into a set of unique Maria exceptions.  If I move to a different database, such as DB2, I can do so more easily because the DB error codes are isolated from the application.  This approach also keeps the Sedna error codes away from the end users as much as possible, and allows me to write error messages that are more meaningful to my end users. </p>
<p>Everything I&#8217;ve done is in &lt;https://www.assembla.com/code/mariaxmldb/subversion/nodes/trunk?rev=12&gt; if you want to look a little closer. </p>
<p>The main things I have accomplished to-date are:</p>
<p>1) Getting a better handle how to use log4j.  I think I&#8217;ve set logging up fairly well in the Maria system.  I see some room for expansion in the near future, especially as I start designing for an online system with multiple users. </p>
<p>2) Getting a better handle on how to use JUnit.  There are still some mysteries to it that have to do with the magic of Java more than JUnit itself.</p>
<p>3) Figuring out how to do basic things in Sedna&#8217;s version of XQuery.  Like, how to access documents in collections.</p>
<p>4) Getting a better handle on Java in general.  I spent some time digging into log4j and how to use it.  Log4j gave me a better understanding of Java.</p>
<p>5) Figuring out how to use Eclipse with a remote Subversion repository. </p>
<p>In general I spent the last week and a half just coming up to speed on the basic technology.  I&#8217;m gaining some traction and now I can spend more time actually developing the meat of the Maria Temporal XML Database.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/scottmball.wordpress.com/93/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/scottmball.wordpress.com/93/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/scottmball.wordpress.com/93/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/scottmball.wordpress.com/93/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/scottmball.wordpress.com/93/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/scottmball.wordpress.com/93/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/scottmball.wordpress.com/93/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/scottmball.wordpress.com/93/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/scottmball.wordpress.com/93/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/scottmball.wordpress.com/93/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/scottmball.wordpress.com/93/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/scottmball.wordpress.com/93/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/scottmball.wordpress.com/93/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/scottmball.wordpress.com/93/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=scottmball.wordpress.com&amp;blog=6610563&amp;post=93&amp;subd=scottmball&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://scottmball.wordpress.com/2010/04/15/working-with-junit-and-sedna/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9fee556af336cd51a2e02eb7574f6ee8?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">scott97007</media:title>
		</media:content>
	</item>
		<item>
		<title>Temporal XML using Sedna, Java, and Eclipse</title>
		<link>http://scottmball.wordpress.com/2010/04/07/temporal-xml-using-sedna-java-and-eclipse/</link>
		<comments>http://scottmball.wordpress.com/2010/04/07/temporal-xml-using-sedna-java-and-eclipse/#comments</comments>
		<pubDate>Wed, 07 Apr 2010 00:41:08 +0000</pubDate>
		<dc:creator>scott97007</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Maria]]></category>

		<guid isPermaLink="false">http://scottmball.wordpress.com/?p=87</guid>
		<description><![CDATA[I&#8217;ve pretty much decided to use Sedna for the foundation for the XML database.  I&#8217;ll use Java for the middleware.  I&#8217;m using Eclipse with an SVN utility added into it to do editing and version control. I set up a basic framework in Java last week using Eclipse for creating a Java connection to a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=scottmball.wordpress.com&amp;blog=6610563&amp;post=87&amp;subd=scottmball&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve pretty much decided to use Sedna for the foundation for the XML database.  I&#8217;ll use Java for the middleware.  I&#8217;m using Eclipse with an SVN utility added into it to do editing and version control.</p>
<p>I set up a basic framework in Java last week using Eclipse for creating a Java connection to a Sedna installation running on a Windows server running in VirtualBox.  I set up the start of a jUnit testing environment.  The jUnit tests were able to connect to Sedna and run Xqueries to update and query the database.  With that much functionality complete I can move on to actually building the tXML database.  Most of the design for the back end is pretty much complete, so I don&#8217;t need to spend a lot more time designing.</p>
<p>I&#8217;m using a free Internet service to handle the source code.  You can view the SVN repository here on the minute chance that you are interested:</p>
<p><a href="http://svn2.assembla.com/svn/mariaxmldb">http://svn2.assembla.com/svn/mariaxmldb</a></p>
<p>I&#8217;ve sort of got Eclipse figured out.  I can do basic stuff with it like building packages and running unit tests.  I added an SVN component called <a href="http://subclipse.tigris.org/">Subclipse</a>.  Installing Subclipse taught me something.  There are two versions of Subclipse, 1.4 and 1.6.  I needed the version that match the version of Subversion running on the free Subversion hosting site, Assembla.  There was no documentation on Assembla about which version they use, so I had to guess.  I made the mistake of starting with version 1.6 of Subclipse.  1.6 was the wrong version of Subclipse, so I had to change to 1.4.  That was a minor headache because I had to manually find and uninstall all of the 1.6 components before I could install 1.4.  Next time when I have to guess like that I&#8217;ll try the earlier version first.  If it doesn&#8217;t work I can just upgrade to the newer version and save the unistallation headache.</p>
<p>Getting Subversion figured out was a little difficult.  I never used it before.  I spent a couple of hours trying to figure out how to get data to and from the web server.  I went through a about six tutorials, including the semiofficial one from red-bean, <a href="http://svnbook.red-bean.com/">Version Control with Subversion</a>.  None of them really helped.  They tried to teach the reader how to use Subversion by working with a preinstalled data set on a local server.  I was trying to create a new data set on a remote server.  I finally found <a href="http://www.jaredrichardson.net/articles/svn-cheat-sheet.html">a decent tutorial article written by Jared Richardson</a> that helped a bit.  Then I found <a href="http://www.yolinux.com/TUTORIALS/Subversion.html">a good cheatsheet of commands at yolinux.com</a> that explained a little better what the commands were doing.  I&#8217;m like a lot of techies.  I don&#8217;t want the user guide.  I want the well written, well documenting, raw technical manual.  &#8221;Here are the commands, here are the options, and here is what they do.&#8221;  If a reasonably competent programmer can&#8217;t figure it out using primarily the technical manual, the technical manual should be revised.  If I have time I&#8217;ll do an improved version of the yolinux cheatsheet.  That is stuff I need to know for the Maria project anyway.</p>
<p>I eventually figured out that to get started with Subclipse I had to put the source documents onto the Assembla repository before I could use them in Eclipse.  After the documents were on Assembla I could use Subclipse to bring them into Eclipse.</p>
<p>One of the tricky things I found was getting an Eclipse Java project to work with a Subclipse repository.  It took a bit of doing. In Eclipse I first created a generic project from my remote SVN repository.  Then I created a second project, this one a Java project.  While I was creating the Java project I added source links from the SVN folders in the O/S into the new Java project.  When everything was set up correctly I had a working Java project in Eclipse with an SVN repository in Eclipse.  Now I can do all of my edits, checkins, etc. from within the Eclipse environment.</p>
<p>What a day.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/scottmball.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/scottmball.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/scottmball.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/scottmball.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/scottmball.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/scottmball.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/scottmball.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/scottmball.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/scottmball.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/scottmball.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/scottmball.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/scottmball.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/scottmball.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/scottmball.wordpress.com/87/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=scottmball.wordpress.com&amp;blog=6610563&amp;post=87&amp;subd=scottmball&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://scottmball.wordpress.com/2010/04/07/temporal-xml-using-sedna-java-and-eclipse/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9fee556af336cd51a2e02eb7574f6ee8?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">scott97007</media:title>
		</media:content>
	</item>
		<item>
		<title>Installing Oracle 10g Express on Ubuntu Server 9.10 on VirtualBox on OS X</title>
		<link>http://scottmball.wordpress.com/2010/04/02/installing-oracle-10g-express-on-ubuntu-server-9-10-on-virtualbox-on-os-x/</link>
		<comments>http://scottmball.wordpress.com/2010/04/02/installing-oracle-10g-express-on-ubuntu-server-9-10-on-virtualbox-on-os-x/#comments</comments>
		<pubDate>Fri, 02 Apr 2010 21:46:48 +0000</pubDate>
		<dc:creator>scott97007</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://scottmball.wordpress.com/?p=82</guid>
		<description><![CDATA[I&#8217;ve decided to shoot for a basic Oracle certification.  To get this, I&#8217;m going to get Oracle running on my Mac laptop so I can look around at Oracle and practice stuff.  Oracle isn&#8217;t really supported on OS X, and even if it was I don&#8217;t want to pollute my laptop with too much complex [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=scottmball.wordpress.com&amp;blog=6610563&amp;post=82&amp;subd=scottmball&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve decided to shoot for a basic Oracle certification.  To get this, I&#8217;m going to get Oracle running on my Mac laptop so I can look around at Oracle and practice stuff.  Oracle isn&#8217;t really supported on OS X, and even if it was I don&#8217;t want to pollute my laptop with too much complex software.  I think it&#8217;s usually better to run stuff like Oracle in a virtual machine for non-production work.  Besides isolating the software from the host OS, I can also take image snapshots so I can restore to an earlier stable state if I need to, and I can freeze the server and close the image if I want to free up my laptop&#8217;s memory for a while without losing the state of the VM image.  </p>
<p>I decided to use VirtualBox for my virtual machine.  VB is a stable and robust VM. </p>
<p>Oracle runs on Ubuntu server, so I went with a Ubuntu server image. </p>
<p>Fortunately for me (and for you too, I assume), Eoin Woods has already written up an excellent How-To on his blog <a href="http://eoinwoods.wordpress.com/2009/02/17/oracle-on-osx-part-1/">Viewpointsperspectives and the rest </a>for installing Oracle 10g Express on Ubuntu server on VirtualBox on OS X.  I recommend that you read through my notes here and then follow Eoin&#8217;s article to do the install.  My documentation here contains caveats, updates and variations of what Eoin covered.  </p>
<p>One of the problems I ran into when walking through Eoin&#8217;s How-To had to do with Ubuntu versioning.  Eoin used the 8.1 Ubuntu server.  I am using the current version which is 9.10.  However, there are two builds, one for 64 bit systems and one for 32 bit systems.  I made the mistake of getting the 64 bit system.  I assumed that because my Mac has a 64 bit architecture I would be able to use the 64 bit Ubuntu server.   Oracle 10g Express is set up for 32 bit architecture and complained about the 64 bit architecture when I tried to install it.  There may be a way to make it work, but the way wasn&#8217;t obvious to me, so I deleted the image, downloaded the 32 bit server, created a new 32 bit Ubuntu VM for it, and went from there.</p>
<p>I created my Ubuntu server image with Bridged networking instead of NAT which Eoin did.  Eoin used a NAT network adapter in his network configuration as a way to keep connection issues to a minimum.  I want to be able to access the server directly from a real Windows computer in my home network.  Some software tools for Oracle are Windows based and I may want to use those.   So, anyway, I went with Bridged.  </p>
<p>With Bridged networking, the server is a part of the home network just like a real machine.  With NAT networking, only the computer that the VM is running on has direct access to the VM.  The main down side of Bridged VMs is that they can have problems keeping a consistent IP address after the VM is shut down and restarted.  The home router can assign it a different IP address arbitrarily, which is something you don&#8217;t want when you are connecting to a server by its by IP address.  I don&#8217;t believe NAT has the same problem with IP addresses.  So, I went with Bridged networking.  </p>
<p>Eoin installed SSH as one of the last things he did.  I installed SSH when I installed Ubuntu.  There is a checkbox in one of the Ubuntu 9.10 installer options that will take care of that for you at install time. </p>
<p>The default swap space for Ubuntu is not large enough for Oracle, and it needs to be enlarged.  There are at least two ways of doing this.  Where Eoin created a larger swap space using a few commands, I created a larger swap space at install time.  That wasn&#8217;t completely intuitive and it took me a couple of hours to figure out how, but it only takes a minute now that I know how.  I did the following steps to set up a swap space on an 8Gb hard disk:</p>
<p>1) When given the <strong>Disk Partition</strong> options appears during installation, choose the <strong>Manual</strong> option.</p>
<p>2) Select the <strong>Guided Partitioning </strong>option.</p>
<p>3) Select the <strong>SCSI1 &#8230;</strong> option.</p>
<p>4) <strong>Yes</strong>, create the new empty partition table.</p>
<p>5) Select the <strong>pri/log</strong> option.  It will all be FREE SPACE.</p>
<p>6) <strong>Create a new partition</strong>. </p>
<p>7) Make the new partition all of the disk space except for 1.1Gb. </p>
<p>8) Make the new partition <strong>Primary</strong>.</p>
<p>9) Make the new partition start at the <strong>Beginning</strong>.</p>
<p>10) Keep the defaults for the <strong>Partition Settings</strong>, and select <strong>Done setting up the partition</strong>.</p>
<p>11) Back on the main partitioning page, select remaining 1.1Gb of <strong>pri/log FREE SPACE</strong>.</p>
<p>12) <strong>Create a new parition</strong>.</p>
<p>13) Use the remaining 1.1Gb of free space.</p>
<p>14) Make the partition <strong>Primary</strong>. (I don&#8217;t think it really matters if it&#8217;s Primary or Logical.)</p>
<p>15) Select the <strong>Use as:</strong> option.</p>
<p>16) Select <strong>swap area</strong>.</p>
<p>17) Select <strong>Done setting up the partition</strong>.</p>
<p>&#8230; and <strong>Finish Partitioning &#8230; </strong>, <strong>Write the changes to disk</strong>, and continue the install from there.</p>
<p>Setting this up at Ubuntu&#8217;s install-time works, but Eoin&#8217;s four step, post-install approach seems simpler than the installer-based 17 steps.  I&#8217;m not an expert on Linux.  I wonder, what happened to the original swap space in Eoin&#8217;s system after he set up the new swap space?  Is that just unused disk space now?  I don&#8217;t know.  Anyway, both approaches work fine for our purposes.</p>
<p>One thing I did different was to update Ubuntu after installing it. Right after the installer finished I did:</p>
<p><strong>$ sudo apt-get update</strong></p>
<p>That brought the software in the system up-to-date.  </p>
<p>After Ubuntu was installed and set up I took a snapshot, so I have a clean system to revert back to if something went wrong when installing Oracle.  After Oracle was installed I took another snapshot so I have a clean system to revert back to if I totally hosed the system.</p>
<p>A few other points for us newbies. </p>
<p>I had problems using vi in this setup.  I couldn&#8217;t get the &#8220;: &#8221; command prompt to come up by pressing escape.  I found that pressing escape and then &#8216;Q&#8217; brought up the command prompt.  I don&#8217;t know what the story is here.  Maybe its just a lack of knowledge on my part, but I thought that pressing the escape key would bring up the prompt. </p>
<p>Getting an <strong>ssh</strong> connection from my Mac took a little bit of figuring out, because I haven&#8217;t used <strong>ssh</strong> before.  It&#8217;s easy.  <strong>ssh</strong> allows you to connect to another machine as a user of that machine.   On my Mac I am user <strong>scott</strong>.  On my Ubuntu server I&#8217;m user <strong>fred</strong>.  My Ubuntu server has IP address <strong>192.168.2.105</strong>.  To get an <strong>ssh</strong> connection from my <strong>scott</strong> user account on my Mac, I just opened the command prompt on my Mac and entered the command:</p>
<p><strong>$ ssh fred@192.168.2.105</strong></p>
<p>&#8230; not at all difficult once you know how.</p>
<p>Viewing more than a page of output in the terminal on the Ubuntu server took a little time to figure out.  To see previous lines, just use  Shift + fn + (up arrow or down arrow) to scroll up or down.</p>
<p>Good luck!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/scottmball.wordpress.com/82/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/scottmball.wordpress.com/82/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/scottmball.wordpress.com/82/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/scottmball.wordpress.com/82/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/scottmball.wordpress.com/82/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/scottmball.wordpress.com/82/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/scottmball.wordpress.com/82/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/scottmball.wordpress.com/82/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/scottmball.wordpress.com/82/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/scottmball.wordpress.com/82/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/scottmball.wordpress.com/82/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/scottmball.wordpress.com/82/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/scottmball.wordpress.com/82/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/scottmball.wordpress.com/82/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=scottmball.wordpress.com&amp;blog=6610563&amp;post=82&amp;subd=scottmball&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://scottmball.wordpress.com/2010/04/02/installing-oracle-10g-express-on-ubuntu-server-9-10-on-virtualbox-on-os-x/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9fee556af336cd51a2e02eb7574f6ee8?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">scott97007</media:title>
		</media:content>
	</item>
		<item>
		<title>I hate CSS</title>
		<link>http://scottmball.wordpress.com/2010/02/21/i-hate-css/</link>
		<comments>http://scottmball.wordpress.com/2010/02/21/i-hate-css/#comments</comments>
		<pubDate>Sun, 21 Feb 2010 07:06:31 +0000</pubDate>
		<dc:creator>scott97007</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[COBOL]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[IBM]]></category>
		<category><![CDATA[mainframe]]></category>

		<guid isPermaLink="false">http://scottmball.wordpress.com/?p=79</guid>
		<description><![CDATA[In theory CSS should be a great thing.  It allows web developers to create a standard template for a site.  To change the appearance of an entire site, just change the CSS.   &#8230; in theory &#8230; In reality, there are some problems with CSS.   Not all browsers support CSS the same way.  We [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=scottmball.wordpress.com&amp;blog=6610563&amp;post=79&amp;subd=scottmball&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>In theory CSS should be a great thing.  It allows web developers to create a standard template for a site.  To change the appearance of an entire site, just change the CSS.  </p>
<p>&#8230; in theory &#8230;</p>
<p>In reality, there are some problems with CSS.  </p>
<p>Not all browsers support CSS the same way.  We still have to write special codings for different browsers.  To create the special codings we have to take advantage of certain nuances of browser implementations. </p>
<p>CSS doesn&#8217;t always work as advertised.  I don&#8217;t create a lot of web sites from scratch, but I have yet to implement a style sheet that worked correctly.  The problem I keep running into is that I expect CSS to work as documented. Silly me.  There always seems to be something I do that the browser I&#8217;m using doesn&#8217;t support, or for some mysterious reason the CSS styling simply doesn&#8217;t work. </p>
<p>Add to those issues the problem with caching and CSS is a pain in the butt to work with.  </p>
<p>When I supported COBOL mainframe systems I always knew that my COBOL codings would work as documented.  That&#8217;s one of the reasons why COBOL is great as a programming language.  It may not be the most powerful in a technical sense, but mainframe COBOL is extremely powerful from a business sense.  You don&#8217;t spend a lot of time figuring out that the feature you are implementing doesn&#8217;t work on your mainframe.  The only exception I ever saw to this was when a programmer tested a program in a third party debugger and implemented it without the debugger.  It turned out the debugger did sorts slightly different than the regular compiler.  (The debugger used a different library than the regular system library.)  I believe that problem was fixed in more recent versions of IBM mainframe COBOL. </p>
<p>But I&#8217;ve come to hate CSS.  I like languages that work as advertised and CSS ain&#8217;t that.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/scottmball.wordpress.com/79/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/scottmball.wordpress.com/79/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/scottmball.wordpress.com/79/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/scottmball.wordpress.com/79/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/scottmball.wordpress.com/79/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/scottmball.wordpress.com/79/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/scottmball.wordpress.com/79/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/scottmball.wordpress.com/79/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/scottmball.wordpress.com/79/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/scottmball.wordpress.com/79/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/scottmball.wordpress.com/79/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/scottmball.wordpress.com/79/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/scottmball.wordpress.com/79/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/scottmball.wordpress.com/79/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=scottmball.wordpress.com&amp;blog=6610563&amp;post=79&amp;subd=scottmball&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://scottmball.wordpress.com/2010/02/21/i-hate-css/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9fee556af336cd51a2e02eb7574f6ee8?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">scott97007</media:title>
		</media:content>
	</item>
	</channel>
</rss>
