format-number(number(.), '00000').
Here is an example of the input and output:
| Input | Output |
|---|---|
| 1 | 00001 |
| 12 | 00012 |
| 123 | 00123 |
| 1234 | 01234 |
| 12345 | 12345 |
Ruminations on NoSQL, XRX, XQuery, Semantics, STEM, Arduino, Internet-of-Things (IoT) and empowering the non-programmer.
| Input | Output |
|---|---|
| 1 | 00001 |
| 12 | 00012 |
| 123 | 00123 |
| 1234 | 01234 |
| 12345 | 12345 |
I had several good comments about my posting about the increasing role of semantics in the "Era of Tera". I did not mention some of the key concepts that the Intel paper discussed and the impact these concepts will have on IT strategy. Here is an excerpt:
The problem is ordinary computers don't model things. Aside from supercomputers, today's computers aren't capable of developing mathematical models of complex objects, systems or processes. Nor are they powerful or fast enough to perform such tasks at speeds people demand. We can't plug in a statistical model for a rare malignant tumor or the behavioral pattern of a shoplifting employee and search for similar instances of the model in a data set. To benefit from the wealth of data building up in the world, we need to be able to communicate with computers in more abstract terms (high-level concepts or semantics). We need to speak in terms of models.
I believe that the core problem is that there will be a HUGE demand for highly-skilled data-modelers/ontologists in five years. But there will not be a large supply since this skill is not something that can be learned from a single class in college. Rather it is more of a tacit skill that is not easily codifiable.
That being said, there are many best practices that ARE codifiable. You can already purchase books on OWL/RDF and metadata registries, although most of them are mired in relational database models or written by academics with little real-world experience. You can read the Wikipedia articles on “Data Stewardship”. What is still needed is a single set of best practices and tools for creating families of machine-readable data models that can be use as a basis for creating exchange models. And we need to do this without having to learn how to represent all 12 types of UML diagrams in XMI and transform them. The NIEM subset generator is a good example of the solid XML-Schema-driven front-end of this process of selecting elements from a metadata registry and putting them in your shopping cart.
The bottom line is that this is really about empowerment. And unless organizations introduce semantic web technologies into their organizations at a grass-root level and support them at the CEO level, many organizations will be left behind in the Era of the Tera.
I read in the New York Times yesterday that Intel has produced a chip with 80 core processors giving it a total computing power of 1.3 teraflops. So the natural question is what could you use 80 CPUs for? The article referred to a 2005 Intel Paper titled Recognition, Mining and Synthesis Moves Computers to the Era of Tera by Pradeep Dubey. This article opened with the following quote: “The great strength of computers is that they can reliably manipulate vast amounts of data very quickly. Their great weakness is that they don’t have a clue as to what any of that data actually means.” Stephen Cass, “A Fountain of Knowledge,” IEEE Spectrum, January 2004. When I saw this quote, I realized even the hardware engineers agree semantics is now the critical factor limiting our ability to effectively use computers I realized that we must continue our mission to promote semantic mapping concepts. So let me summarize my feelings after reading this article:
If want to be able to leverage the power coming in the Era of the Tera, you must start with semantics – recoding the meaning of your data.
And if you don’t yet have a metadata registry…get one!
Right next to the CEO, CIO, and CFO in the board room should be your CDO (Chief Data Officer).
I was reading Ambient Findabilty and I saw a reference to a concept called “whuffie”. After checking out the Wikipedia article on whuffie, I discovered that whuffie was reputation-based currency used in Cory Doctorow's sci-fi novel, Down and Out in the Magic Kingdom. This future history book describes a post-scarcity economy where people purchase goods and services based on their reputation, not just cash.
I was interested in this topic because I think that in the future new keywords with precise semantic mappings will be introduced into declarative systems based on social networks. Right now it just takes too long for new tags to appear in an XML standard. Just think of how long it takes for the w3c to create a new XML tag for something like a menu tab! Up to 10 years based on the rate that the XForms standard is being adopted.
Anyway the book was a great mind-opener. One of the first science fictions books that takes nanotechnology and social networking into account. I have always loved cyber-punk: Neil Stephenson’s Diamond Age being one of my favorites. No time-travel or spaceships: just highly imaginative extrapolations of the net and
I like the concept of the post-economic society. When all of our economic needs are met what do we strive for? Why don’t they ever complain about their raises in Star Trek? The book also discusses the concept of an adhocracy: groups that quickly band together to solve problems. Doctorow also looks at the concepts of death, backing up your brain to a persistence store (the immortality SAN) and filtering restores to change values.
What does this matter to the metadata architect? It matters because our march away from procedural programming toward declarative systems is totally dependant on the creation of shared semantics. When you need to pick an XML tag how do you pick the tag that will have the highest probability to have semantic precision in the future? Social networks will help us and when we build systems to vote on which tags get approved not all votes should count the same. Votes by people with high-whuffie should get counted a lot more. The concept of one-person, one vote will be modified in the post-economic society.
Last night I had the strangest dream…
I was looking for a good mystery, perhaps a Sherlock Holmes book. I went to the library and an elderly lady at the front desk said “Welcome to Roy G. Biv Library. How can I help you?”
“I am looking for a Sherlock Holmes mystery. Do you have one?” I asked.
“What color of book are you looking for?” She asked.
“Well I don’t really care what color it is.”
“Well in this library, our books are sorted by color of the cover. The red covers are over there, the orange covers over there and the yellow ones right over here. You get the idea. Shelving books by color makes it very easy for us to shelve a book because the color of the cover is obvious. It also makes it easy to see when a book is miss-shelved. You can see the miss-shelved books right away.”
“Yes, I can see how that would make your work much easier. Do you know where I can find the Sherlock Holmes book?”
“Well, it would help us a lot if you could tell us what color the cover is.” She said firmly.
“I don’t know what the color of the cover is…, I just want a mystery book about Sherlock Holmes!” I said exasperated.
“Well, why don’t you just start looking at the reds, then orange, yellow, green, blue, indigo and finally violet. I am sure you will find it in a few days…”
Then I woke up and when to work. There the staff was attempting to store all the data elements in the enterprise sorted by the system name that each data element was first recorded. Then my real nightmare began.
For the past several months I have been building XFroms prototypes on my current project. I ran into the XForms Firefox plugin two months ago and have been using happily using it ever since. Although the plug-in version number is only "0.6", I have found for my use, it works perfectly. It allows me to quickly test XForms on all the computers I use and I don’t need to setup and configure a web server. The extension takes under 30 seconds to install, but you will have to reboot FireFox once after you download the extension.
Now biggest thing that I am searching for are XForms example programs. The examples provided with some of the books are not very good. I would like to use these samples XForms and teaching XForms to others. I would also like to create XForms directly from the XML Schemas I am building and so I can integrate the hints, help and metadata registry links for each field on the forms I am developing. I am also trying to figure out how to make CSS work correctly across many browsers since many of the XForms CSS templates in the books use CSS3 and CSS3 only works correctly with FireFox.
If you know of any nice collections of XForms for learning XForms, please let me know. I have set up a Wikibook to start collecting tutorials and examples. The link is http://en.wikibooks.org/wiki/XForms
#!/bin/sh # This UNIX shell script FTPs all the files in the input directory to a remote directory # It uses a UNIX Shell "hear document" to read the commands to the FTP program from the shell file # You have to use the -n option to the FTP command to disable the prompting for the password # the quote in front of the ftp user and pass are also necessary to disable reading from stdin # the prompt must be turned off for the multi-put to not prompt the user LOCALDIR=mylocaldir REMOTESERVER=remote.server REMOTEPATH=/my/remote/path LOGIN=myloginname PASSWORD=mypassword cd $LOCALDIR ftp -n $REMOTESERVER <<INPUT_END quote user $LOGIN quote pass $PASSWORD cd $REMOTEPATH prompt off mput *.* exit INPUT_END
This creates thumbnails of the images and make sure they all fit within the 160x160 size whether the image is portrait or landscape. Very cool! Check out the Ant manual for more information: http://ant.apache.org/manual (Ant tasks/Optional Tasks/Image)
This makes me think that you could use Apache ant to do basic photo publishing. It would make thumbnails, a layout page that has links to the thumbnails and ftp the folder's web-resized images to a web server.
I have also found that there are some nice photo-layout CSS pages. It would seem that it should be easy to add a set of CSS styles that could be changed using the FireFox "Page Style" option. I would be happy to write a basic ant task and an XML transform to create an HTML page of all the images in an image set if anyone wants to help. What about image keywords and captions? Should each photo have its own photo metadata? What if you want to change the file name of a photo? How can the metadata file stay in sync with the file system? Could you use a subversion-tortoiseSVN-like http://tortoisesvn.tigris.org/ Any ideas?
I just returned form the 2006 Semantic Technology Conference in San Jose CA. This was a fantastic conference with over 600 people attending 72 presentations over four days. This was over twice what the attendance was last year. It is showing that semantics are really becoming a hot topic, although there is still plenty of room for discussion on when and how this will impact the industry. The biggest problem for me was that with up to six concurrent sessions running it was very hard to decide what sessions to attend.
The composition of the conference consisted mostly of vendors of semantic technology products, large customers from government agencies like the DOD, NASA, some academics working on semantic research topics, a few venture capital firms and a handful of independent consultants like myself. Some of the people were from the "old AI school" and were promoting the use of description logic (DL) within an ontology. Others like me, were simply searching for semantic integration techniques for the deployment of intelligent agents.
I think one of the most important presentations was the keynote given by Jim Hendler and Ora Lassila, two of the three people that wrote the original article in Scientific American with Tim Berners-Lee. The presentation discussed some of the linkages between traditional AI (with complex ontologies) and the current document-centric web with simple un-typed link between documents. My favorite sound bite was "Linking is Power". The metaphor was that semantics are the "plumbing" necessary to allow intelligent agents will to perform interesting work over the world wide web. If agents don't know how to access distributed data they will be restricted to local databases, not a great prospect. And the way to promote agent interoperability is to link ontologies, something I have been advocating for a long time. They also pointed out that google now has around 12K ontologies (search google for ontology filetype:owl). But the problem is that each ontology is an "island" and few people are linking ontologies. Looking for ontologies with lots of equivalentClass statements leads to less than 40 ontologies.
This leads to the natural questions, how do we encourage ontology-linking. One standard proposal is to encourage everyone to link to a standard reference upper ontology such as SUMO or CYC. The problem is that few people can agree on what this upper ontology should be.
I have been trying to champion the application of some basic economic theory to the publishing on ontology links. If we do supply-and-demand analysis on ontologies links we see that there are few economic incentives to publish inter-ontology data element links. If people did this then agents could take advantage of them and automatically perform semantic translation. Jim Hendler and Ora Lassila both though this was a worthy idea and indicated they would support this. I hope to kick this off as some type of reward/recognition for next year's conference. Tony Shaw from Wilshire Conferences has also been very supportive of the idea.
Semantic Wiki's were also a very hot topic. Any presentation with the word Wiki in the title were packed full of people. The topic of using Wiki's to build controlled vocabularies was mentioned in several presentations. Problems with locking down approved terms was also mentioned. The topic of semantic wiki's was also discussed. Ideally a metadata wiki would have different access control for different sections of a single page. The approved definitions would require stakeholder team approval for changes.
I advocated for first adding simple typed links into MediaWiki for obvious relationships like subClassOf, instanceOf, partOf and basic GIS-type things like insideOf, capitalOf. Note that by adding a prefix to the current MediaWiki could allow this to be incrementally added to WikiPedia. I think this goes along the lines of "A little semantics goes a long way". Typed links are an awesome way to add semantics to any system and I predict that there were be dozens of semantic wiki's in the near future.
For some time I have been suggesting that OpenCYC and Wikipedia will eventually merge into a single system. It would be very easy to add simple link types to WikiPedia. We have thousands of volunteers waiting in the wings. But after talking to Doug Lenat he indicated that CYC has over 16,000 types of relationships. Yikes! We would almost need an mini-expert system to figure out the link type. The training for adding consistent links might be challenging. Nonetheless the prospect of WikiPedia evolving into HAL over the next ten years is exciting.
I always enjoy going to Doug Lenat's presentations. He indicated that over half of the new rules added to CYC in the last year were done by reading natural language text. Something that is VERY exciting. Automated machine learning. We just hope it is not another false peak. I also asked Doug how I could add my K-12 ontology into CYC. He indicated that I would have to learn about CYC's relationships types to do this effectively. But he also agreed that ontology linking was the Rosetta Stone for enabling web-wide intelligent agents.
For all the advanced topics, I was impressed by the lack of the use of structured XML Schemas to capture semantics using controlled vocabularies and importing semantic XML schemas created by subschema generators from metadata registries. I was also very impressed by Contivo's new Builder product which is going for an incredibly low $500.
There also appears to be good movement toward incrementally adding semantics to HTML documents using RDF/A. I attended an excellent presentation by a person from MIT that was working on these standards. Although his arguments were not all clear, the one point he did make was that adding RDF in the "class" attributes would have minimal negative impact to the current web.
I was also glad to hear there is more interest in the semantic-web in Minnesota. Apparently Lockheed-Martin is starting a new logistics agent project that will be done in Eagan Minnesota. They indicated that much of this would be based on semantic technologies. Lockheed sent seven people to the conference at the last minute so at least I know they have a budget for training. Logistics problems like those from Katrina could clearly benefit from semantic agents. Lockheed has been promoting use of semantic web in their literature: See the article on page 14.
My only real complaint with the conference is that the conference organizers allow people to present without sharing any of their slides even though they are supposedly "due" almost two months before the conference is scheduled. We are forced to take notes and ask for e-mailed copies of the slides. My success rate has been very low about getting copies mail out after a conference. <shameless bragging> I believe I was also one of the few presenters that wrote the supplementary paper for the conference. Providing only the PDF versions of the slides also prevents you from getting builds and speakers notes. For an example see my full presentation web site.</shameless bragging>
The Semantic Technology conference next year will also be in San Jose next year but has been moved to early April.