May 2007 Archives

Rick Jelliffe

AddThis Social Bookmark Button

Is this the dullest, most trainspotterish blog I’ve ever written, mo mean a feat: you be the judge if you can make it to the end! I’ve just come back from a few days in Kuala Lumpur. Lots of new words made many newspaper article inpenetrable: I knew the title “Tun” but I had never seen the title “Datuk“, let alone all the “Yangs.” But I was impressed that the hotel had universal power sockets installed.

Foreigners

Foreign power plugs are always surprising. Here in Australia, we use 230V at 50Hz with a three pin plug in a wilted T configuration, with flat blades: its is used throughout the South Pacific, and supposedly the Okinawan, Argentinean and Chinese sockets are compatible too. What is surprising is to visit foreign countries where there are multiple kinds of plugs, and multiple kinds of power: the countries which initially went for 100V-120V now have also moved to also provide 220V-230V power for equipment that sucks more current, and these usually have different plugs. In the US, for example, I cannot help but thinking “Why on earth don’t they get rid of 110V?” since it is technically poor, complicates things, has obsolete plug forms (the two pin versus the three pin.) “Why don’t they just all adopt what the rest of world does, at the electrical level at least? They could take the opportunity to go metric too!”

Wikipedia has a good guide to Domestic AC power plugs and sockets. There are about common 12 kinds national or regional AC connectors (but each many of these have variants that don’t prevent plugging in, and many nations have an extra handful of other less common plugs, such as the US NEMA plugs), and IEC defines 13 kinds of connectors for electrical equipment. That makes scores of different plugs in use, with scores more now obsolete or obsolescent.

The technical reason for multiple plugs is to prevent you from plugging in equipment and motors designed for the wrong voltage and frequency: and especially between AC and DC of course; the historical reason is empire and inter-national uncooperativeness; the economic reason is that it would be too expensive to replace them all at once or to have twin connectors on equipment; the design/manufacturing reason is because the differences can be isolated by having detatchable plugs, so there is no cost impact on equipment made with IEC sockets or DC plugs because the major component is the same; the parochial reason is that people get used to things being a certain way and it was a barrier to trade felt to encourage local manufacture or to promote empire-first policies. There are some deeper technical issues too: in Japan I was told they adopt 100V for normal domestic outlets because of earthquakes…if a pole or building falls over they prefer that stray wires should be as low voltage as possible; on the other hand, I have been told that higher voltage is better for power transmission over large distances, so countries like Australia adopted 240V (now 230V). I have been told that mosts modern US homes are wired as 220V now, with only a single side use for the 110V domestic circuits.

The nice thing about the hotel in Malaysia was that they had installed universal plugs: the Malaysians use the big clunky British style 220-250V power (also used in Britain, Brunei, Uganda, Liberia, etc) but the hotel sockets could also fit my smaller but still clunky antipodean style plugs and many others.

What was interesting to me, was that though there are multiple standards for the DC plugs going into appliances (for example, into the laptops), multiple national standards for AC power with plugs, frequency and voltages varying (sometimes within a country!) a perfectly workable solution has emerged.

On-ramps

So in the power plug world, the answer to multiple incompatible standards that is emerging is not based on standardizing on a single exact connection type or electrical type but quite the opposite: the underlying systems are increasingly starting to look more like each other (230V, 50Hz) , the connections to consumables has been standardized (IEC sockets), transformers support electrical plurality (100V-250V, 50 or 60Hz), and sockets are being deployed which accept as many different plugs as can be accommodated as low-hanging fruit.

Ah, I hear you cry, aren’t you just advocating N-N which is inefficient? Well, not really: the notebook approach is layered, so that the physical connection becomes an N-1 issue (a universal socket support multiple plugs going to an IEC connector) and then the electrical connection becomes an N-2 issue (the transformer handling multiple voltages). The thing is how to gradually reduce the N-1.

When there are multiple existing technologies deployed, and where a unified standard technology would provide no significant difference in capability that would drive consumers to demand the unified standard by their wallets, the way to achieve a unified standard is by providing a bridge or on-ramp: a technology that neutralizes differences so that users can continue to use their existing systems. That is what happened with XML and character sets: no-one was using Unicode for data interchange; XML provided a bridging mechanism where users could incrementally switch from their locale-based encodings to Unicode systems gradually and incrementally, and now UTF-8 is widely and fairly painlessly used.

Applying this back to power plugs, the solution is not to unify the plug standards, but diversify the sockets specs so that each nation requires a socket that accepts both the national standard and some intended future international standard. If it turns out to be impossible, because countries still want different plugs and sockets for 110 and 220V, then two standards are better than none. If it turns out that the countries with round pins and the countries with blade pins cannot agree or the design/cost problem is too hard, again, two standards is better than none.

M. David Peterson

AddThis Social Bookmark Button

No, I didn’t mean “Tree”…

via an IM ping from Russ,

via http://www.apple.com/appletv/tour.html?section=youtube

Search. Watch. Repeat.

Coming in June, you can watch YouTube videos in a whole new way — on the big screen. Enjoy thousands of free videos, including the top featured, most viewed, and top rated. New content will be added every day and the entire YouTube catalog will be available by the fall, so there’ll always be something cool to see.

M. David Peterson

AddThis Social Bookmark Button

So I just spent the last two days in San Jose at the Semantic Conference and had a *fabulous* time. I’ve known Uche and Chimezie Ogbuji now for nearly three years and yet this was the first time we have actually met in person.

I also had a chance to meet and speak with Eric Miller for the first time which was an absolutely fantastic experience as was meeting all of the good folks who collectively form Zepheira, the company Eric Miller recently founded, bringing together the best in the semantic web business to aid with the ushering in of Web v.Next() (AKA Web 3.0.) (Update: I wrote this in a rush this morning and should have elaborated a bit more in regards to what I was referring to. As such, what follows is the elaboration I should have provided. Hopefully this will make a bit more sense in regards to why I was excited by the overall experience of chatting with Eric. ) After reading John Borland’s article from the MIT Technology Review in March, a lot of things that had previously made little to no sense (in regards to their applicability to the web) suddenly made a lot more sense. Being able to chat with Eric in person about some of these same topics was quite an amazing experience! While I still can’t say that I have a full grasp of everything that relates to the semantic web, it was obvious to me after speaking with Eric that some of the things I have criticized in the past had more to do with simply misunderstanding what these technologies were all about, and less to do with them simply not being relevant.

Moving forward: To be honest, I’m not exactly sure what story these pictures tell but there are probably quite a few folks that many of you will recognize, so while it may not tell a story like the title suggests, they still may be of interest to many of you.

As such, enjoy!

QUICK-NOTE: I met a *TON* of really cool folks at the conference. A quick shout-out to each of you: Thanks for the good time! Do it again next year? I know I’ll be there for sure! :D

Rick Jelliffe

AddThis Social Bookmark Button

I wasn’t there, but the XTech 2007 Conference seems to have its presentations online already: fast!

Scanning through them, one made me really happy. It was Henri’s talk on the WhatWG’s HTML 5 validation efforts. Actually, “I’ve won!” flashed through my mind. It was not because the HTML5 group had started to use multiple validation languages, along the layered or progressive lines I (and the DSDL rabble) have been advocating, nor even because they were using Schematron, nor even because Henri says that Schematron (and RELAX NG) while better than XSD were not as good as they expected (thereby giving me a challenge to show how they could do it in Schematron with the correct idiom, and thereby make me appear well smart).

No, what made me happy was a little line towards the end where the issue of generating usable user messages was raised (p41). This is the most important part of Schematron, not the use of paths or assertions or phases or flags or any of the mechanics, nice though they may be. The “big idea” behind Schematron, such as it is, is that the problem of validation is just as much (indeed, more) one of communicating constraints (and therefore unmatched constraints) to users as it is about representing them to machines. Validation is not just binary, or even a set of fixed outcomes: it is about determining, locating and communicating the status of a document and its parts.

This is especially because the user experiences the document often mediated through some user interface, not as elements and attributes: so validation messages that are given in terms of the elements and attributes rather than either the information model or the user interface will just be mystifying. And especially confusing when they give messages about where the problem was found, not what caused the problem: for example when there is a missing element and the error message is in terms of “Found unexpected XXX” rather than “YYY is missing”.

I am a bit of a broken record on this, but I think a relentless emphasis on the human user is really important for standards: XML succeeded by providing not only simplicity but native-language markup.

Kurt Cagle

AddThis Social Bookmark Button

I’ve always been fascinated by dictionaries. We create dictionaries one word at a time, attempting to nail down within a printable tome all of the words the form a language, and for many people such dictionaries represent something immutable, a stamp of authenticity that states that this is the proper way to represent legitimate forms of spelling, legitimate statements of meaning, and in many cases some form of an audit trail that attempts to provide the history of the words.

For all that, dictionaries are fundamentally arbitrary. Someone has to make an editorial decision as to whether a given word is in fact a legitimate word with the language. Is sombrero an English word, or a Spanish one. Is degauss, to remove a magnetic field, a term of technical jargon or a formal member of the language. Is it theater or theatre? My teenage daughter talks about her and her friends being “random”, by which she means that she’s not easily categorizable to modern marketing efforts. Random, to me, is a stochastic definition that means that there is no readily discernable pattern dictating the results of a given function. While there is some commonality to both terms, they are not the same. Is my daughter’s definition of random valid? Is mine?
M. David Peterson

AddThis Social Bookmark Button

Update: via a recent email from David Carlisle (used with permission),

I recognized that name when it came up in the feed titles, Andy Kimball
used to post regularly to xsl-list and was largely responsible for
giving the impression that not everyone at MS was fully signed up to te
evil empire, and that there were in fact real people there and that
msxsl would eventually turn out to be a good thing…

David continues with a couple of links [1,2], the second of which links to the following,

Hi all,

I’m Andy Kimball, the Microsoft XSL developer. After today’s “nested
template abomination” discussion, I had a couple of comments. First,
Microsoft is committed to delivering a conformant XSLT processor. ….

[1] http://www.biglist.com/cgi-bin/wilma/wilma_glimpse/xsl-list?query=Andy+Kimball
[2] http://www.biglist.com/lists/xsl-list/archives/200003/msg00614.html

I have to stand by David’s comments. Andy is definitely one of the good guys. And if you have ever used any of MSFT’s XSLT processors (in particular MSXML and .NET 2.0 System.Xml.XslCompiledTransform) you know just as well as the rest of us…

Andy knows how to write *BLAZING FAST* code! Smart kid, that Andy Kimball ;-) :D

Thanks for the info, David!

[Original Post]
So the craziest email arrived in my inbox yesterday evening. It begins,

I’m not 100% sure that you are my old friend from the 90’s, given that you seem to go by M. David Peterson now, but I thought I’d email you and see. If you are Mark Peterson, who worked at Microsoft in the 90’s as an “Independent Contractor”, and knew a couple of guys named Andy Kimball and Brandon Hall, then let me know.

I’ve already responded to Andy to let him know that yes, in fact, it is I that is he (M. David Peterson == Mark David Peterson for those unaware.) The reason for writing this post, however, is to point out something I didn’t know until just now. Andy continues,

It would be quite a coincidence if indeed you were that Mark Peterson, as you seem to be very gung-ho on Xml and Xslt, which is my specialty.

He continues to describe his involvement with XML and XSLT at Microsoft.

- Member of the Core XML team for MSFT for almost 10 years.
- One of the developers of the MSXML processor.
- Ditto on the XSLT Processor in .NET 2.0
- Currently a member of the Linq To Xml team

ABSOLUTE CRAZINESS! Some background,

M. David Peterson

AddThis Social Bookmark Button

Update: Snippets from Bill Hilf interview @ http://www.networkworld.com/news/2007/051707-hilf-microsoft-wont-sue-over.html

What we heard back after the Novell deal was “Give us more transparency. You say that there is IP involved, give us an understanding of what that is.”

… we have no plans to litigate. You can never say we’ll never do anything in the future, but that’s not our strategy. That article spins it on the attack. The only new piece information in that article is that it just put a number on the patents.

The people in the open-source community that I know well . . . they contacted me right away. All of the European guys I know called me at 2 a.m. I told them what I told you. They said “Okay, that’s what I needed to hear.”

I personally believe that there’s a tremendous amount of work that needs to be done in software patent reform. However, the current rules still apply. It’s still the way we do business today and how all other businesses work. So we still have to find ways to work in the current system even though we do want it to be improved in the future.

There’s no other strategy. There’s no other hidden agenda. I’m trying to be as clear as I can to people that this isn’t a threat. We’re not going out and attacking people. We’re trying to solve an IP issue.

Update: I couldn’t help but smile when I saw the pic that John Lam attached to his post congratulating the Mono team on their spectacular achievement,

Which reminds me. If it wasn’t for penguin “pics” such as this,

… reminding us all that there are those who see FLOSS as something more than the freedom to adapt, change, tinker, and create, I wonder if the attitude on MSFT campus towards apparent FLOSS patent infringement might suddenly change?

Folks: There are *MANY* reasons people go to war, but generally speaking it can be boiled down to two,

1) Freedom.

2) Power (AKA Control, Money, etc.)

The FLOSS “War” isn’t an exception to the rule.

I expect to be quite wealthy once the dust from the Linux IPOs has settled

Eric Raymond, Doing It For The Cause, December 12th, 1999

People who invested in the Linux IPO’s of the late 90’s/early 00’s didn’t do so because of a belief in the FLOSS cause. They did so because they believed their was profit to be made.

Please don’t lose sight of that.

Update: It’s now official. Thanks to Zoltan Varga’s recent check-in to SVN, Mono now successfully runs IronPython 2.0A1/DLR,


[mdavid@domU-12-31-37-00-03-10 Debug]$ mono -V
Mono JIT compiler version 1.2.4 (/trunk/ r77478)
Copyright (C) 2002-2007 Novell, Inc and Contributors. www.mono-project.com
        TLS:           __thread
        GC:            Included Boehm (with typed GC)
        SIGSEGV:       normal
        Architecture:  x86
        Disabled:      none
[mdavid@domU-12-31-37-00-03-10 Debug]$ mono ipy.exe
IronPython console: IronPython 2.0A1 (2.0.10427.02) on .NET 2.0.50727.42
Copyright (c) Microsoft Corporation. All rights reserved.
>>>

And to make things even better…

7:54:34 AM sanxiyn: It seems that there’s no more serious Mono runtime bug hiding.

7:55:12 AM sanxiyn: I’ve just run HTTP sanity test (which uses urllib and BeautifulSoup) on IP2/Mono.

7:55:25 AM xmlhacker: and?

7:55:34 AM sanxiyn: Passed.

7:55:39 AM xmlhacker: nice!

7:56:03 AM sanxiyn: DNS test passed. (This uses dnspython, which implements all of DNS protocol marshal/unmarshal in pure Python.)

7:56:37 AM sanxiyn: XML-RPC passed. Well, it looks good.

7:57:03 AM xmlhacker: XML-RPC passed? That is *very* encouraging!

So there you have it folks. 16 days for the Mono-Project hackers to implement support for the DLR.

That *ROCKS*!!! :D

Thanks to Seo, Zoltan, and *ALL* of the rest of the folks who pulled this together! *VERY* nice work!

M. David Peterson

AddThis Social Bookmark Button

Step #1) If you haven’t already, repent of your sins and go an pick up Tool: 10,000 Days from your favorite local or online retailer.

Step #2) Pick up a pair of Sennheiser PMX100 headphones**. (local retail directory)

Step #3) Change the equalizer setting on your Zune to “acoustic”. If you don’t already own a Zune… REPENT!!!

Step #4) Set the volume level to a comfortable factor of “loud” (whatever that might mean to you.)

Step #5) Endulge in an orgy of sound like you’ve never endulged before while you hack, hack, hack the night (or day if you write code during the day and still believe you qualify as a hacker ;-)) away.

Youuuu’rrre Welcome. ;-)


** Just trust me on this one.

Rick Jelliffe

AddThis Social Bookmark Button

Very happy to see the recent report that Norway is adopting a standards-based policy for public (external) documents hosted on websites, pretty much along the lines that I have been calling for (some reminders below)[5] identifying when formats are appropriate [1]:

  • W3C XHTML or HTML is still possible [2][4]
  • ISO PDF/A (or Adobe PDF1.4, I hope temporarily) for finished documents [3]
  • ISO ODF for documents “still being worked on” [3][4]
  • Allow other formats in addition, as long as the required formats are available [2]
  • An acknowledgement that Open XML is “a better format for preserving semantics and special formats from Microsoft’s proprietary binary formats,” [4]

I expect that Open XML becoming an ISO standard would not change these minimum requirements for web-hosted public documents, and neither should it IMHO. I think it shows that governments and regulators are perfectly capable of treating the available standards as a technical library[6] and selecting the correct one for each job as they see fit. It shows again that being pro-ODF for public documents does not require that one is anti-Open XML as an ISO standard, as part of the library: regulators and legislators are the appropriate people to decide which standards to favour for different uses.

At some time in the future, I suspect these kinds of recommendations will need to be strengthened. Which version of ODF (etc.)? Which profile? (And I still think that HTML and web delivery have a momentum and logic that makes both ODF and Open XML second-class citizens for public documents: don’t forget HTML!)

M. David Peterson

AddThis Social Bookmark Button

ongoing � Which “One”?

Obviously, nobody’s ever tried an Unconference at the scale of Java One, and there’ll be compromises and stumbles and the requirement for real interaction-design creativity. But there is low-hanging fruit: a lot of really bright people facing really hard interesting problems who’ve been spending too long, at this kind of event, sitting in the dark listening. I want to hear their stories.

Rick Jelliffe

AddThis Social Bookmark Button

I think by now most people are pretty phlegmatic about accepting various assertions about Open XML and ODF on face value. The sky is not falling. The boy is crying wolf. A seive is full of holes no matter how loudly someone shouts that it is a bucket.

When, for example, one side says “Open XML normatively refers to MS’ proprietary WMF” and the other side says “Err, where? Not in the Normative Refences sections” and the first side says “Err, then there is an *implied* normative reference because a mention is made of it elsewhere as a possible kind of graphic that may come in from the clipboard” and the other side says “The ISO usage of ‘normative’ revolves around indispensibility: isn’t ‘possible’ the opposite of ‘indispensible’?…” disinterested observers may think Surely there is a more constructive approach? These silly examples are distractions from serious concerns.

So here is what I suggest, for national bodies reviewing Open XML: adopt a set of general principles and apply them (to Open XML, ODF, and whatever). When someone raises a specific issue, verify that the issue indeed is as claimed, find the general principle, and base your responses on that, with the particular flaw as an examplar. The tactic adopted by some activists is to read the draft text, think of the worst possible interpretation and ramification, then insist it is the case: the “normative reference” example is a good case of this. The trouble with this approach is that it won’t work; impartial reviewers will note that there is some kind of concern but that the actual issue raised does is not a problem. The result will be frustration and a lack of a “meeting of the minds”. Indeed the legitimate issues that underly some of the anti-OpenXML comments risk being unaddressed.

What kind of principles would there be? Here are a few off the top of my head:

Principle 1: A schema must allow standard data notations for atomic, embedded data fields, where the standards exists, and may also allow local, common, optimised or legacy notations.

Applying this to Open XML, for example, it would mean that where DrawingML uses EMUs coordinates, it also should allow inches, cm and points. And where Spreadsheet ML allows numbers for date indexes, it also should direct ISO 8601 dates. Do you see the difference between saying “Open XML should be banned because it uses EMU” and “Open XML should be improved to allow more than EMU”. The most important thing is that this is a superficial change to the exchange language, not to the underlying model: it doesn’t force MS to adopt a different model or require them to generate standard units. (That is a different issue: the issue of profiles or application conformance.)

Principle 2: A schema should allow direct representation of data fields, and may allow optimised forms as well

Applying this to Open XML, we see that the string approach taken by SpreadsheetML conforms: you can have text directly or index to a shared string table. Adopting this principle lets a National Body vet the issues: if someone says “This doesn’t look like HTML! Therefore it is bad!” the NB can say “We adopt the principle that optimized references can be allowed as long as literal content is allowed too”.

Principle 3: A schema language for compound documents should support an indirect or over-riding reference mechanism for entities or resource, and may disallow a direct mechanism.

SGML and XML DTDs have a mechanism called Entities that allow indirect references. This is really important for maintance of large documents, because it disconnects references from names: you can update a graphics file and a single reference. Applying this to Open XML, OPC meets the criterion. OASIS catalogs would also probably fit the bill.

Following from principle 1 and 2, an indirect reference mechanism should allow the standard notation (IRIs) but may also allow a local or optimized form. Applying this to Open XML, this principle would mean double checking that IRIs are allowed (I will check this sometime) in OPC; I don’t think that OPC uses a local, optimized or legacy form (I will check this sometime.)

Principle 4: Notations for legacy or obsolescent technologies may be included in a standard, but should be in an informative part, clause, namespace or annex.

Applying this to Open XML, the sections on VML would be marked “informative”.

Principle 5: A standard should be arranged as a modular, simply layered container, to allow plurality and evolution

I am not sure of the ramifications for Open XML: I need to check the part 5 of the standard, which deals with extenions and future-proofing. Certainly the use of MIME types in OPC follows this principle, but it goes more than that: could DrawingML be augmented or replaced by SVG for example? (I will check this sometime)

Principle 6: A standard core should be platform-neutral and may allow optional platform-dependent extensions, in a separate annex, namespace or clause where appropriate

I think Open XML is OK in this regard: it allows Word macros, Java, and other scripts, but these are not required and IIRC partitioned.

Principle 7: A standard should address a market requirement, and the availability of a standard for one market or set of standards does not preclude the development of a standard for a different market or set of requirements

In other words, no standard should be denied merely on the grounds of “My requirements are more important than yours”. In the case of Open XML, it means that “don’t ignore the elephant in the room” arguments —that the needs for level-playing field basic document exchange by governments and suite vendors (ODF’s supposed sweet spot) trump the needs of integrators, archivists, and so on for Office’s format to be standardized— would be rejected. (Not rejected from all consideration of course, but relegated to their proper place, which is for legislators, regulators, CIO policy makers, and profile makers, not ISO.)

Whither Interoperabilty

When a standard followed the kinds of principles above, it allows both full-fidelity (the main principle behind the design of Open XML) to meet round-tripping/API-replacement/archiving requirements, and it sets the stage for interoperability between different systems: this is where in addition to the broad requirements of the standard, specific limitations are imposed so that all the different kinds of local, legacy, optimized, common-but-non-standard, and platform-dependent notations, media types, scripts and so on are avoided. ODF has just as much need for these kinds of profiles as Open XML does, as far as document interchange goes, by the way.

It is a kind of paradox: an “open” data format must be extensible, but the more that extensions are used, the more that a closed range of applications will be able to use the document; a document format that is “open” in the sense of having a fixed definition that allows guranteed document interchange is actually must be a “closed” (non-extensible) format! The solution? The long-standing policy of SC34 is to standardise “enabling technologies” and to leave profiles to user groups and industry consortia: XML itself is an example of this. ISO SGML allows many different delimiters; the industry consortium W3C picked a particular set of delimiters and features, added some internationalization features, and re-branded their profile “XML” which gives simpler interoperabilty.

In the absense of these kinds of principles, what we have is a line of argument that reduces to “Microsoft is bad, therefore anything they do or make is bad”, even when Microsoft is forced to backflip and to start doing the opposite of what they previously did: in this case, abandoning closed, binary formats. Ten years ago, Bill Gates was saying they would be crazy to open up their file formats, now they are doing it. If users and, most importantly, system integrators, keep on encouraging them to further open up and adopt a more modular architecture, it bodes well for where we will be in ten years time. The future is mix and match.

Kurt Cagle

AddThis Social Bookmark Button

On the right part of the screen above this article is a little hyperlink - “listen”. Push it …

This is frankly really cool. Text-to-speech (TTS) applications have been around for some time (indeed, chances are pretty good that you have a TTS system, either Microsoft’s SAPI in Windows, H&L’s text to speech, Dragon Naturally speaking, or Festival in the Linux world (I’m sure there’s an equivalent on the Mac side, but don’t know off hand what it is), but the idea of putting a decent TTS generator and passing in web content to it to be transcribed and broadcast through Flash is one I’ve not seen done to any great degree before.

The quality of the voice transcription is surprisingly good, although I would prefer the ability to customize the voice on output (I’m sure it exists, just a question of setting it). However, it also showcases just how readily we’re making the jump to  a world where our computers talk to us and we to them, just another medium of exchange.

No profound thoughts here, just wanted to make people sit up and notice a cool toy.

– Kurt Cagle

Kurt Cagle

AddThis Social Bookmark Button

It’s blank slate time. Anyone who’s ever written for a living knows what I’m talking about. Before you is a piece of paper or a computer screen, marred perhaps only by the faint blinking line delimiting the carat. An infinite number of potentialities, yet the moment that you touch pen to paper or hand to keyboard those potentialities become reduced, the potential becoming the real. That is perhaps the real joy of writing or programming - in both cases you are dealing with the pure act of creation, making from the myriad possibilities the very real (and by nature, flawed) application, idea or concept.

M. David Peterson

AddThis Social Bookmark Button

So here’s a little somethin’-somethin’ that more than quite a few folks, including myself, will enjoy..

XSLT: Riding the challenge: Transforming JSON

Ever wanted to access and manipulate JSON as ordinary XML? To transform it with XSLT?

No problem, use the f:json-document() and f:json-file-document() as provided by FXSL.

Here is a quick example:

Find more at the above linked post. Thanks, Dimitre!

Keith Fahlgren

AddThis Social Bookmark Button

Here’s a quick follow-up to earlier post about DocBook elements in the wild. This time I’m focusing on five more recent titles that were all typeset using our DocBook-XSL stylesheet customizations.

[Update: Based on a comment from one of the book’s authors, I should be more explicit about what I mean by “produced”–I’m referring to the period when the book was typeset by O’Reilly’s Production department(s) (and copy-edited, indexed, and reviewed). What was happening during the authoring phase in unspecified. :-)]

Rick Jelliffe

AddThis Social Bookmark Button

Last week was a big one: if we are lucky it may have been the week in which the US patent system imploded under the weight of its own recent ludicrousness, hopefully to be replaced by a saner one. I am no fan of patents: they are government-granted monopolies and distortions of the market; I can understand their usefulness for encouraging research and development in important but non-lucrative areas (drugs and technologies suited for the 3rd world problems, for example) but it seems to me that without patents companies would still innovate: they would just do so differently,

Speaking at a conference this week, I mentioned that the innovation of the WWW, which surely has dominated the shape of modern IT and production more than any other technology of the last fifteen years, is notable for its use of standards (IETF, W3C, ISO, etc) and for the irrelevance of patents (except as a distraction and brake). Now I know that the physical side (the big pipes of CISCO and so on) do have a lot of IPR involved, but I suspect that the owners of the IP would be making their products and profits regardless: removing IPR would lessen the chance of super-profits, reduce the gambling short-term view of VCs, but not prevent market demand.

A later speaker at the same conference pushed the “you won’t get anywhere unless you aggressively respect IPR” line: non-Western countries get a lot of this. Because of the manifest failure of the US patent system, I have not been able to subscribe to this: an unfair, eager-to-please, monopoly-encouraging IPR system directly reduces the ability of R&D-poor countries to compete, and distorts production away from consumer products and towards products for rich people. But at the same time as we were speaking, on April 30, a bomb was waiting to go off in the US that may force me to change my mind, or at least to temper my opposition.

If we are seeing the start of the reform of the US patent system, so that the bar to patents becomes extremely high, there may be a sliver of merit in very temporary monopoly grants as long as it encourages bringing products to market: granting patents that then allows the holder to sit on the patent and protect their current technologies is a terrible abuse, and, indeed, should be an offense: if a company does not want to take up its patent rights, they should lapse. (The Japanese had a similar thought in their old patent system, which IIRC had five year grants to force products to market: this perhaps shaped the form of Japanese technology and innovation towards the practical and quickly realizable, not a bad thing in my book.)

The bomb that has caused this implosion is of course the recent US Supreme Court decisions on KSR Int’l Co. v. Teleflex Inc., which has raised the bar for “obviousness” so that it means something more like…err… ‘obviousness’ and to re-urge caution in granting patents merely “on the combination of elements found in the prior art”, and Microsoft Corp. v. AT&T, which was to do with extraterritoriality and the issue of whether non-physical software was a component of a patentable device. Groklaw has the judgments here.

M. David Peterson

AddThis Social Bookmark Button

I’m starting to believe that Silverlight may change the world. It really raises the level of what is possible.

Peter Fisk on Silverlight (via a private email thread dated May 4th, 2007 (used with permission))

M. David Peterson

AddThis Social Bookmark Button

Lawrence Lessig

Many said Jack didn’t get the digital age. I think what he didn’t get was binary thinking. As a man who stood next to Jackie Kennedy as Johnson was sworn into office, and who lived the following forty some years in public life, he understood the importance in subtle differences. Let that analog understanding survive.

Lawrence Lessig on the passing of Jack Valenti.

Keith Fahlgren

AddThis Social Bookmark Button

The newly-formed DocBook SubCommittee for Publishers is currently researching commonly-used DocBook elements to explore whether a subset of DocBook 5.0 would be generally useful. I’ve been spending a lot of time getting O’Reilly’s (DocBook 4.4) content into our new Atom Publishing Protocol repository, and decided I’d rather explore the commonly used markup in our own content instead of making up my own (unfounded) opinions.

M. David Peterson

AddThis Social Bookmark Button

Microsoft XML Team’s WebLog : Live from MIX07: Silverlight and XML!

XML Features in Silverlight

In the Silverlight 1.1 Alpha release, we have enabled streamed XML reading and writing through the XmlReader and XmlWriter, respectively.

That’s it, you say? For the MIX Alpha release, yes. Over the 1.1 alpha release cycle, we have focused on providing a great XML foundation within Silverlight through the reader and writer in order to enable the delivery of additional pieces of the XML stack within the context of Silverlight in the future.

XML, Silverlight, and the Future

Going forward, we are planning to support LINQ to XML within Silverlight to enable a great story for query, caching, manipulation, aggregation, and data binding using XML.

Additionally, we’d love to get feedback on what types of activities are relevant for you, given this great new programming model of .NET within the browser. In particular, how do you feel about the following features in the browser?

· XSD Schemas
· XPath
· XSLT
· DOM

Well, the dinner bell is ringing here at MIX07, so that’s all for now. Though, as we’re now allowed to talk about Silverlight publically, I am very excited to discuss XML and Silverlight, what types of applications are interesting for you in this space, as well as the types of XML features are relevant for you in the context of the browser.

Great! Here’s my wish list,

· XSD Schemas
· Schematron
· RNG
· XPath 2.0
· XSLT 2.0
· DOM
· E4X