Ars Technica has an article about an intellectual property case where someone if France sued someone in the U.S. for publishing something that's protected by IP laws in France but not in the U.S. I'm a little torn on cases like this--we don't want other countries imposing their laws on us, but we also don't want them violating ours. Here's a less controvesial example: let's say there's a country where some kind of online scam isn't illegal--would we like for them to be able to legally spam and scam our citizens? Maybe the French feel about this IP case the way we do about getting scammed.

So how do we solve the problem? Requiring the publisher to make the information unavailable to everyone everywhere in the world moves the balance of power too far outside the borders of the publisher's country. All we'd need is for everything to be illegal somewhere, and none of us would be able to publish anything online.

Blocking access to specific parts of a website to an entire country would keep it available to the rest of the world, but the technical challenges in doing so would be hideous. How is one to know whether a particular request was coming from the country or not? Unfortunately, that's not easy.

Here's my suggestion--it may require the publisher to edit one file on their server from time to time, but places the responsibility for being aware of and abiding by the laws of one's country primarily on the people in that country:

A while back, I wrote a draft document for a generalized website autodiscovery technique. You've heard of robots.txt? It's a file that tells web crawlers what URLs on a website they may and may not access. You've heard of favicon.ico? It's an icon associated with a website. Well, there are more things than that that one might want a standardized way to discover about a website. Countries from which particular documents or directories of documents may not be accessed could be one of them. Here's how it might work:

A new file would be created in the "autodisc" directory named "countries.txt". Perhaps the most efficient way to organize it would be to divide it into sections, each beginning with a country name or code in square brackets. Every line between that line and the start of the next section would be the local part of the URL of a document or directory which must not be accessed by internet client software from that country. For example, the following, if hosted on example.com would tell software in France not to access http://example.com/foo/bar.html or anything in the directoryhttp://example.com/non-French/:

[fr]
/foo/bar.html
/non-French/

France could require it's citizens to use only software that checked for a countries.txt file and obeyed any rules in it. If someone in France discovered their France-specific IP rights were being violated, their recourse would be to require the publisher to use countries.txt to block access to the offending resources to people in France, but they would not have power to otherwise enforce France's IP laws with respect to people outside of France.