Tag: xml

Next xopus

,imagWe at Q42 have been extremely busy making Xopus ready for release. At
this moment we feel confident we have a worthy beta version. At the end
of this week we will ship this beta to you and others.

congrats guys, i’m looking forward to trying it out.
UPDATE sjoerd has a picture of the debugging process. next time im there, i will urge these guys to try CVS 🙂 oh, and cool debugging technique.

Atom

I support the Log Format Roadmap because it has a fighting chance to become the first practical step to achieve CMS content interop. Blogs will drive adoption of the principles stated in against the grain. As a weblog vendor, I support it because it will drive the adoption of better tools, and will increase the market for everyone.
2003-06-27: Sam Ruby has been spearheading a major standardization effort in the blog world recently, and he has this to say about his motivations:

About a month ago, my interest and activity in this space kicked into high gear. I started attending weblogging conferences.

Far from claiming to have been the inspiration, it is still very nice to think that OSCOM was able to contribute to the drive towards standardization. This is the stuff we are talking about.
2004-06-08: So that is what Greg Stein has been up to. The sprint was much fun, as were the drinks.

Ever since Atom first popped up, I’ve been interested in it, and even attempted to join a small sprint/discussion at Seybold last year to talk about WebDAV. The bomb threat shut that down, but we simply moved locations for drinks rather than hacking 🙂 So while I’ve been tracking it generally, my specific current interest is through my work at Google. I’m the engineering manager for the Blogger group, so I’ve gotta pay some attention to what we’re signing up for 🙂

2005-09-06: All feeds for this blog now serve Atom 1.0. It will be interesting to watch if anyone notices / cares. Longer term, /atom.xml is the canonical url if you want to subscribe.
2006-10-18: RSS / ATOM / OPML schematron is much easier to work with than the mysterious feed validator code. Plus it works for really huge feeds. This has the README for the RSS validator. Pretty out of date, but a good starting point. For one, you need the latest schematron from Rick Jellife, not the old one on this site.
2006-11-21: Gdata JSON. They also do jsonp, and reuse the Atom serialization.
2006-12-01: GData for Google Spreadsheets. The data web circle gets more complete. This is (one) counterpart to the web formulas in Google Sheets. Now as to how GData can play in the semweb space. Maybe via Queso.
2007-01-31: Tim wonders how to use Atom categories properly. Link to the wikipedia url of the tag I’d say.
2007-02-14: If you browse to a page with an RSS or Atom feed, you get the option to immediately add that feed to Google Reader for mobile via Mobile Proxy Feed Discovery.
2007-03-31: Some Atom extensions by nature to encourage text mining. I don’t know.. They do not seem to reuse core Atom in their examples. Plus I am not sure how useful a word count really is.
2007-05-16: GdataServer

Generally speaking, the Lucene GData Server is an extensible syndication format server providing CRUD actions to alter feed content, authentication, optimistic concurrency and full text search based on Apache Lucene.

2007-05-25: APP frontend to LDAP. This might enable some interesting scenarios.
2007-06-01: Opensearch / Atom interface for Swiss whitepages. Nice!

Wir haben für unser Telefonbuch eine Schnittstelle entwickelt, welche es erlaubt unsere Telefondaten in anderen Applikationen oder Websites zu integrieren. Die Schnittstelle basiert auf dem Konzept von REST. Die Resultate werden als Atom-Feed geliefert, welcher mit OpenSearch- und tel.search.ch-spezifische Felder ergänzt ist. Mit Hilfe eines Schlüssels werden die Resultate auch strukturiert zurückgeliefert. Die Resultatzahl ist pro Abfrage auf 200 Einträge beschränkt.

2007-06-08: GData Fails as a Protocol

Gregor Rothfuss wondered whether I couldn’t influence people at Microsoft to also standardize on GData. The fact is that I’ve actually tried to do this with different teams on multiple occasions and each time the I’ve tried, certain limitations..

2007-06-10: Oy. And all this because I asked Dare why Microsoft doesn’t use APP.

There was quite a flurry of blogging about the Atom Publishing Protocol (APP) over the weekend, all kicked off by Dare Obasanjo’s criticisms of the protocol. Some of the posts were critical of Dare and his motives, but I’m thankful he started the conversation.

2007-07-26: The chorus for putting more REST into GIS / mapping gets louder, yay

The only thing needed to bring together this messy new world Atlas, is a global agreement about the structure of the data used to annotate the maps, as well as agreement on the format for retrieving such.

2007-07-28: WFS simple was hijacked, as usual, by people who don’t understand why worse is better. This is why I am not in the least interested in WFS and am betting on APP instead.

if the geospatial standards community continues on this path of isolating itself, of looking upstream to the ISO rather than downstream to the distributed neogeo developer community, it will miss out on being connected to amazing things.

Here’s a Feature Demo of a RESTful WFS-T with a call for GE to support posting of features. I would go further and ask for APP support.
Version control for Collaborative Mapping. Calls for diffs and patches. Might be built on top of an APP infrastructure, imho

The next major area of tool improvement I see is expanding the wiki notion of editing to more of a merging revision control model, with branches, versions, patches and eventually expanding in to distributed repositories. The ‘patch‘ is a small piece of code that can be applied to a computer program to fix something. They are widely used in the open source software world, both to get the latest improvements, and to allow those who have commit rights to a source repository to review outside improvements before putting them in. This helps create the meritocracy around projects, as they don’t let just anyone in to the repository as they might break the build. Such a case is less likely with maps, but sometimes core contributors might want to see a couple sample patches before letting a new member in. In the GeoServer versioning WFS work we have a GetDiff operation that returns a WFS Transaction that can then be applied to another WFS. This fits in with the technical part of how a patch works – they’re really easy to apply to one’s dataset. But unfortunately a WFS transaction is not as easy to read as a code patch. The other great thing about patches is that when leaf nodes are updating their data they can just request the change set – the patches – instead of having to do a full check out. So I’m still not sure how to solve this problem, the WFS Transaction is the best I’ve got, but I think we can do better, have a nice little format that just describes what changed.

Better UIs for Collaborative Mapping. More calls for rollback tools, and would like to see GE post to geoserver, etc

I think we need more user friendly options for collaborative editing. Not just putting some points on a map, but being able to get a sense of the history of the map, getting logs of changes and diffs of certain actions. Editing should be a breeze, and there should be a number of tools that enable this. Google’s MyMaps starts to get at the ease of editing, but I want it collaborative, able to track the history of edits and give you a visual diff of what’s changed. Rollbacks should also be a breeze – if you have really easy tools to edit it’s also going to be easier for people to vandalize. So you need to make tools that are even easier to rollback.

2007-07-29: Atom Futures

AtomPub sits in a very strange place, as it has the potential to disrupt 6 or more industry sectors, such as, Enterprise Content Management, Blogging, Digital/Desktop Publishing and Archiving, Mobile Web, EAI/WS-* messaging, Social Networks, Online Productivity tools. As interesting as the adoption rates, will be people and sectors finding reasons not use it to protect distribution channels and data lockins with more complicated solutions. Any kind of data garden is fair game for AtomPub to rationalize.

2007-07-30: Towards signed feeds

Why Digital Signature? This idea was first proposed by James Snell, and it’s a good one. Mind you, the benefits are a little bit theoretical, since no feed-reading clients that I’ve seen actually check a digital signature. The argument for this is similar to that for TLS; a bad guy who could somehow insert a fake press release into the feed could make zillions by gaming the share price. A verifiable digital signature would let someone reading the feed know that the news in it really truly did come from Sun.

2007-07-31: Atom for KML. Nice. I want to do more, but this is a good start. The Atom / KML meme spreads. Perception is reality, and I approve.
2007-08-03: Appfs

appfs can mount remote resources exposed via the Atom Publishing Protocol as a local filesystem.

2007-08-07: RESTful partial updates. Maybe useful for APP / KML to supplement update

over the past couple of months, there’s been a lot of discussion about the problem of partial updates in REST-over-HTTP. The problem is harder than it appears at first glance. The canonical scenario is that you’ve just retrieved a complicated resource, like an address book entry, and you decide you want to update just one small part, like a phone number. The canonical way to do this is to update your representation of the resource and then PUT the whole thing back, including all of the parts you didn’t change. If you want to avoid the lost update problem, you send back the ETag you got from the GET with your PUT inside an If-Match: header, so that you know that you’re not overwriting somebody else’s change.

Zend Google Data Client

The Zend Google Data Client provides a PHP 5 component to execute queries and commands against the Google Data APIs.

2007-08-14: Winer on Atom. Sore loser.
2007-08-19: How to deal with the sliding window problem where feed producers update more often than consumers, and consumers thus might miss entries.
A standardized way to get at previous entries that have scrolled out of a feed, and at the complete archive.
2007-08-28: YouTube GData. Nice to see more media-heavy usages. Now we have pretty much all of them, only KML is missing.
2007-10-29: APP Lock-In. So cute. Microsoft is in a tight spot: Admit they have no strategy and use APP, or invent their own. It seems they are trying to build a case to do just that.

It seems that while we weren’t looking, Google move us a step away from a world of simple, protocol-based interoperability on the Web to one based on running the right platform with the right libraries. Usually I wouldn’t care about whatever bad decisions the folks at Google are making with their API platform. However the problem is that it sends out the wrong message to other Web companies that are building Web APIs. The message that it’s all about embracing and extending Internet standards with interoperability being based on everyone running sanctioned client libraries instead of via simple, RESTful protocols is harmful to the Internet. Unfortunately, this harkens to the bad old days of Microsoft and I’d hate for us to begin a race to the bottom in this arena.

2007-12-06: FeedSync. The full syncing requirement makes this heavy weight

Although FeedSync is capable of full-blown multi-master synchronization, there are all kinds of interesting uses, including simple one-way uses. Consider, for example, how RSS typically has no memory. Most blogs publish items into a rolling window. If you subscribe after items have scrolled out of view, you can’t syndicate them. A FeedSync implementation could enable you synchronize a whole feed when you first subscribe, then update items moving forward. It could also enable the feed provider to delete items, which you might not want if the items are blog postings, but would want if they’re calendar items representing cancelled events.

knee-deep xml

i have been researching XUpdate, client-side XPath queries, XML databases and xsl:fo today. it strikes me that very very few open source projects really make use of XPath, XQuery or versioning of XML fragments. doing XSLT is not exactly innovative these days, time to move a bit closer to the cutting edge again. In search of small pockets of structure, as jon once said.
2 side notes: when i dimly remembered “small pockets of structure”, i googled for it, and my backup brain was the 2nd hit. jorge notified me about being #1 now, but i get reports from the us that they get a different hit for it. is google doing location-based ranking now?

Quack

<miko> gregor you’re such a geek 😉
miko wonders when gregor will start speaking in XML
<miko> would be no problems with interruptions tho cos everyone would have to wait until the </comment> tag
<drew> That won’t be long.
<gregor> i would have long ago, but can’t make up my mind whether i should emit atrtributes or elements
<miko> and getting last word would be easy with </argument>
<miko> hehe oh dear
<gregor> hm, i should reserve a namespace
<johnny> gjr ?
<drew> gregorspeaksxml.com
<johnny> that’s not specific enough
<gregor> xmlns:quack=”http://greg.abstrakt.ch/2003/speech&#8221;
<johnny> quack 🙂 hehe
<johnny> you need a personal namespace though
<johnny> unless you wanna share your namespace with the rest of us 🙂
<johnny> then we can all quack
<miko> see we laugh but i bet he goes and does it 🙂
<miko> that would make us quackers
<gregor> the incentive is there for sure

virtual xml

Using the ObjectXPathNavigator over an object graph provides the power and flexibility of the XML programming model without the overhead of having to serialize an entire object graph into an XmlDocument.


the xml mindset is spreading to the abstract world of in-memory representation. if you go to all that trouble to learn xpath, you might as well use it 🙂

Xaraya

I tested the new smartphones last night. I had to check into this site, of course, and it rendered not bad at all. I’m inclined to do a simpler, one column layout without the sidebars if I ever decide to buy one of those. I still think their GUI sucks ass (its based on tiny buttons with illogical function mapping). I’d much rather have a phone with a touch screen, but they are very bulky. So I guess I will skip this generation of mobiles. The picture is almost original size. It’s highly alarming that every mobile device is demoed with sports scores. Who gives a fuck about sports scores?


2002-11-05: Xaraya is now public. Initial reactions are very positive. I’m glad we didn’t do any forums, because forums attract scum. In other news I did an interview with internet intern, a german mass market internet rag (some 400k circulation). I talked about the reasons behind Xaraya and why Xaraya will succeed where other php cms will fail:

  • skilled developers
  • a real architecture
  • no incompetent advocates

The article should be up in 2 weeks.
2002-11-09: I opened a whoopass can’o’worms when I outlined my plans to implement workflow for Xaraya early next year. I want to start very simple (actually the work would be done for a client project) because I knew from preparing the web services talks that workflows are a very complex topic. Gary suggested I look into wfmc which is the industry standard for workflows. Very nice, but I guess implementing it would keep me busy for a year. Workflows might be a topic for oscom too. Both wyona and zope already implement some support for xml-defined workflows.
2002-11-28: I created my first WSDL file today, with the help of some tools. I’m pretty sure my WSDL is invalid. Scripting languages with their weak type systems and WSDL don’t exactly mix well. I hope to eventually enable web services to call into the APIs that Xaraya offers. At this stage, it is merely a nice idea, but I’m slowly making progress.
2003-01-25: I took the plunge, and am now running a current Xaraya snapshot again. Lots of new toys to play with 🙂

Yeah I know I have been slow with updates, but a) live has been hectic b) Xaraya is not yet very convenient for blogging.

On the bright side, comments should now be fully functional, with a nice tree view.
2003-02-12: Another one joins the MT love. Marcel is a buddy from the Xaraya PMC, and the 2 of us should really be using our own dogfood, but alas it is not there yet re: blogging comfort. One day soon, though.
2003-02-12: Xaraya Usability Recommendations is probably one of the more extensive studies about usability in the open source field. And we are not even at 1.0 yet. Kudos to Doug and Drew for this fine doc. If we follow through with this one, good things are in store for the web layman.
2003-02-21: This feed validates as RSS. I took the plunge, and fixed the RSS feed for Xaraya. Unlike postnuke, Xaraya will ship with a rich feed that makes use of the 2.0 format. We now also have SOAP support. Mike pushed a changeset that enables to call Xaraya API methods over SOAP. Here is the relevant part from the WSDL.
<wsdl:arrayType=”xsd:string[]” />
<xsd:complexType name=”wsModAPIFuncRequest”>
<xsd:sequence>
<xsd:element name=”module” type=”xsd:string” />
<xsd:element name=”func” type=”xsd:string” />
<xsd:element name=”type” type=”xsd:string” />
<xsd:element name=”args” type=”xsd:xsdl:myelement0″ />
</xsd:sequence>
</xsd:complexType>

2003-02-27: Aye, Kevin, we will work extra hard on usability.

The PN user registration process is plain silly. It is one of the things that I was hoping to see the last of in eventually moving to Xaraya. I have a suggestion for anyone working on the end-user (non-admin) aspects of the core modules. Pretend that the typical user is my mother who gets very flustered when web site processes aren’t as easy and straightforward as possible. And Mom cries when she gets flustered. Please folks … don’t make my Mom cry.

2003-04-21: congrats team.

It is my pleasure to announce the first Beta Release of Xaraya (.900). This release is the culmination of nearly a year’s worth of hard work and undying dedication to creating. All of the developers on the project have devoted many hours to reach where we are today. The first Beta release for Xaraya is intended to capture a baseline of what needs to be accomplished before the final release. This is merely another step in the long journey that began with PHP Nuke, and then PostNuke for many of us.

2003-06-25: My friend John Cox is being interviewed about Xaraya:

With the articles system combined with the dynamic data system (both written by Michel), a webmaster no longer has to wait for developers to dream up new modules. All a webmaster has to do is dream up what they want to display, and from there it’s just a matter of adding 2 templates into the system and creating a new publication type to gather the data.

I just installed Xaraya again after neglecting it for a while, and I must say, very impressive. Time to mop up the nuke market with their silly systems.
2003-06-30: Looks like everyone and his dog is converging on XML pipeline processors these days. With more powerful XSLT editors, maybe the time for these technologies to appeal to a more mainstream audience has come.

2003-07-02:

KAYWA
No anagrams found.
WYONA
AN YOW
NOWAY
NAY OW
ANY OW
YAW ON
YAW NO
WAY ON
WAY NO
XARAYA
A RAY AX
LENYA
LAY NE
LAY EN
AN LEY
AN ELY
AN LYE
ANY EL
NAY EL

2003-07-20: Xaraya goes new ways again. They now use phing, a php clone of ant, to maintain build files for the distribution. Very neat. The more standardization, the better. Apache Lenya is using ant more and more for various scripting tasks too. This nicely leverages the very good ant documentation and literature, and means you have to learn fewer concepts.
2003-08-02: Xaraya is now bitkeeper project #6 by number of change sets.
2003-11-04:

Trolling through the Bitkeeper tree on the site, looking at the change sets, the different names, the comments, it just sort of occurred to me this is beginning to look like a factory, chugging merrily along I’m noticing more and more people on the public mailing lists wanting to take the bk plunge. The collective consciousness has apparently reached a critical mass conclusion and internalized that this is the normal way of life around here. Quick rewind to 8 months ago, when most everyone (me especially) were still trying to figure out how to do a merge… You’ve come a long way, baby.Marc

I am very happy that we made the decision to establish sound processes, use bitkeeper instead of cvs, and aim for quality. It took longer than the usual crappy php project, but then again it is of much higher quality. We are now the number 3 user of bitkeeper, only surpassed by MySQL and the Linux kernel. Amazing.
2003-12-12: This post led to an avalanche. Wow, 19 months later, the repercussions are still working its way through the php cms community 🙂
2007-06-20: linux.com is now running on Xaraya, a CMS I co-founded

RSS Namespaces

it seems that adding namespaces to rss 2.0 breaks almost the whole rss infrastructure. this is a good thing, as it will lead to xml-compliant rss parsers, and since rss is probably the most popular xml application, it will drive adoption of higher-end xml functionality through the back door.

It’s all been very instructive. The bad news is that a lot of dirty laundry has been hung out. The good new is that it’s being exposed to the open air. I suspect(though I can’t prove) that RSS is the most popular, widely-used application of XML. Figuring out how to use namespaces in RSS is going to be good for the RSS community, and good for XML.

XML hidden powers

a recent article made me feel guilty about hyping up XML. ed dumbill goes after all of them with

HyTime Award for Specifications with Secret Hidden Powers
Dave Winer’s OPML
Most Technically Deficient Initiative Kept Alive by Marketing $
UDDI
Lazarus Award for Seemingly Doomed Yet Surprisingly Persistent Initiative
XLink