Wednesday, May 30, 2007

xml namespaces decision table

Being able to correctly handle XML namespaces in an XML processor seems to me to be summarized in the following formulation. I don't know if I'm right or not, but that's why I posted a question about it in the xml-dev mailing list.


Let's consider three variables: a, b and c:


a. Name is qualified in XML Schema: yes/no
b. Name is prefixed in XML document: yes/no (default namespace is also considered as a prefix, the empty string prefix, for this discussion’s sake)
c. Prefix for name is defined in XML document: yes/no


If we consider all possible values for a, b and c we end up with 8 possibilities:











abc
000
001
010
011
100
101
110
111

I don't expect to get any namespace related error
if a==b==c==0
or
if a==c==1 and b is either 1 or 0

(0 stands for no and 1 for yes...)

If I'm right than testing for namespace can be done with two comparisons


In case we don't have an XML Schema, the table has only two columns (no column for qualification):
So we get






bc
00
01
10
11


we get that the only error is if we use a prefix that is not declared.

Tuesday, May 29, 2007

OWASP-IL mini conference

https://www.owasp.org/index.php/2nd_OWASP_IL_mini_conference

Unfortunately, I didn't attend, and I could only read the presentations online. Hopefully some of my friends from work who did attend will give a summarizing presentations on the new things for us to learn from the conference.

From my own reading I liked the talk about positive security, although there is nothing new presented there.

Some pictures from Nir's 1st birthday party

Here are some pictures from Nir's birthday. Nir is now one year old.





Saturday, May 19, 2007

Racalling a visit to XRCE in Grenoble, France

After recalling my visit to Trento for ESSLLI2002, I also recalled another visit to Europe that was related to my academic interests. In March 2002 I visited Xerox Research Centre Europe in Grenoble, France, and attended a Finite-State programming course, that was given by Ken Beesley. Dr. Beesley is currently at Inxight.

Recalling my visit to Trento in 2002

This is my last day in Paris and I'll be heading back home. I'm spending the rainy morning at the hotel surfing the web. I recalled my visit at the 14th European Summer School in Logic, Language and Information , which took place in Trento, Italy in August 2002, which was also called ESSLLI2002. I took some pictures there with an old Olympus point and shoot with about 1 megapixel. Here's a link to the pictures: http://yeda.cs.technion.ac.il/~yona/ESSLLI2002/index.html

Friday, May 18, 2007

Pictures from Paris

Blow are some pictures I took this afternoon in Paris. The res ones with the number 30 on them are of a depth ruler marked on a side of a river barge. The road sign is next to crossing signs at the end of a sidewalk not far from the closest metro station near Novotel Paris Tour Eiffel Hotel. The Eiffel tower is a reminder of the location. The last one is of some bolt and a writing on one of the sides of a bridge over the river Siene.




Appealing talks for me at XML Prague 2007

XML Prague 2007 will take place in June 16th and 17th.
From the published program I found special interest in:

Generative XPath
Oleg Paraschenko
Saint-Petersburg State University

The most convenient approach to navigate over XML trees is to use XPath queries. But there is no reason to limit ourselves to XML only. Indeed, it's useful to have XPath for navigating over arbitrary tree-like structures. There are a number of projects, in which developers have tried to implement XPath over project-specific hierarchical data. Unfortunately, most of these attempts resulted in something that resembled XPath, but was not XPath. The problem is that implementing XPath, even version 1.0, is a difficult task. We propose an alternative approach. Generative XPath is an XPath 1.0 processor that can be adapted to different hierarchical memory structures and different programming languages. Customizing Generative XPath to a specific environment is several magnitudes of order easier than implementing XPath from scratch.

The Generative XPath framework consists of three components:

  • XPath compiler,
  • XML virtual machine,
  • native (customization) layer.

The XPath compiler transforms XPath expressions to an executable code for the virtual machine. During execution, the code interacts with the native layer to access the tree nodes and its properties.

This paper explains what the virtual machine is, what is expected from the customization layer, and how they work together. Also, background information about the design and implementation of Generative XPath is given.



XML Processing by Streaming
Mohamed Zergaoui
Innovimax

The first part will be to present the state of the art of XML Streaming processing by reviewing the products in place (joost, cocoon, saxon, etc.), the API available (SAX, Stax, XOM), languages (CDuce, XDuce, XJ), and the spec in progress or stalled (STX, XML Processing, XQuery update). Speaking of what is currently in preparation (i.e. an XML Streaming XG at W3C). And taking the time to present what has already been done in SGML time (Balise and Omnimark, cursor idea that can be find in Arbortext OID in ACL, etc.)

Then the goal is to present all the area where some work has still to be done and give some hints on an elaborated vision of XML Processing trough different kind of process : around constraints, normalizing, streamable path, multilayer transformation, and last but not least constraints aware streamable path. Some light will be spot on static analysis of XSLT and XQuery to detect streamable instances. What are the needed evolutions of the cursor model? What are XDuce-like languages added values?

Thursday, May 17, 2007

O'reilly benchnarking XML parsers

O'reilly published results on XML parser benchmarks that they did:

Quote: "Our intention was to find the right components for our high performance web service security gateway, so that it could be run on a small dedicated appliance. The limited resources of such a device brought the C tests into the game, since the Java virtual machine already needs a lot of memory. Object model parsers are the most important parser types in the context of web service security because they can be used to alter a XML document in memory."
See:
and

Frank Mantec on XTech 2007: ``SOAP is a dead duck in the www''

I attended Frank Mantec's (Google inc.) talk today at XTech 2007 on Google Data API (see: http://2007.xtech.org/public/schedule/detail/33). He had made a very surprising claim:

"SOAP is a dead duck in the www"

And he said it as someone who worked for Microsoft for years and developed from scratched the WSDL. He was saying that interoperability across programming languages that are not from the same vendor (e.g., .NET languages and Java) is close to non existing and that the chances that it will be easy to connect via SOAP across languages and vendors is 0.00something% chance to happen. He said that WSDL was and still is a BIG MISTAKE.

WOW!

Finally, I don't feel that I'm the only one who was not able to make C, .NET, Java and Perl talk SOAP together without ugly "magic" and some "voodoo"and though that the reason for that was WSDL...

All this happened when questions from the audience came asking how come ATOM and REST approach was used rather than SOAP for the Google Data API.

Pentax to be bought by Hoya?

I just heard on BBC news that Hoya are to buy Pentax.
see: http://www.asahi.com/english/Herald-asahi/TKY200705170106.html

Some pictures I shot today in Paris

Here are a few shots I took this evening, sometime around 21:00-21:30.
You can probably notice the dirt on my caemra's sensor and also the rain drops on my lense, as I was taking these pictures while it was raining.



Wednesday, May 16, 2007

Music and Lyrics (2007) movie

During the flight from Tel-Aviv to Paris I got to see a very nice movie called Music and Lyrics.
If you have a chance to see it, then go. It is a very nice romantic comedy.

No wifi at xtech 2007

What seemed to be a minor problem on Tuesday, now looks like a big problem: no wifi access on xtech 2007. If you lookup available connections you see that idealliance has a network up and running but when you approach the conference organizers and ask for the necessary credentials to be able to use the connection they say that they have a problem and that there is no wifi internet connection.

I payed for internet access via adsl at the hotel room (man!! 15 euros for every 24h!!) in order to be in touch with work, and for those who don't want to pay up there's a yoyo netowrk that is mostly up and sometimes has good connection that you can highjack (it doesn't seem to be using any security at all!!).

Hopefully, tomorrow morning and on Friday the organizers will have some wifi available for the many many nerds here that are in great need to feed their internet craving :-)