WEBAPI　XHTML、JSON表現　読み取り可能性

#プラクティス 郵便番号・地域(112-0002・東京都)

##XHTML表現
```ruby:qiita.rb

<html xmlns="http://www.w3.org/1999/xhtml">
	<head>
		<title>〒112-0002</title>
	</head>
	<body>
		<h1>〒112-0002</h1>
		<dl>
			<dt>番号</dt>
			<dd class="zipcode">112-0002</dd>
			<dt>住所</dt>
			<dd class="address">
			<span class="prefecture">東京都</span>
			<span class="city">文京区</span>
			<span class="town">小石川</span>
			</dd>
			<dt>フリガナ</dt>
			<dd class="yomi">
			<span class="prefecture">トウキョウト</span>
			<span class="city">ブンキョウク</span>
			<span class="town">コイシカワ</span>
			</dd>
		</dl>
	</body>
</html>

------------------

<html xmlns="http://www.w3.org/1999/xhtml">
	<head>
		<title>東京都の一覧</title>
	</head>
	<body>
		<h1><span class="area"><span class="prefecture">東京都</span>の一覧</h1>
		<ul class="result">
			<li><span class="city">千代田区</span>
				(<span class="yomi">チヨダク</span>)</li>
			<li><span class="city">中央区</span>
				(<span class="yomi">チュウオクク</span>)</li>
...
			<li><span class="city">小笠原村</span>
				(<span class="yomi">オガサワラムラ</span>)</li>
		</ul>
	</body>
</html>


```

##JSON表現
```ruby:qiita.rb
{
	"zipcode": "1120002",
	"address": {
		"prefecture": "東京都",
		"city": "文京区",
		"town": "小石川",
},
"yomi": {
	"prefecture": "トウキョウト",
	"city": "ブンキョウク",
	"town": "コイシカワ",
　},
}

--------------

{
	"area": {
		"prefecture": "東京都",
},
"result": [{
	"name": "千代田区"
	"yomi": "チヨダク"
},		
{
	"name": "中央区",
	"yomi": "チュウオクク",
},
...
{
	"name": "小笠原村",
	"yomi": "オガサワラムラ",
}]
}

```




#プラクティス 検索リソース(112)
##HTML表現
```ruby:qiita.rb

<html xmlns="http://www.w3.org/1999/xhtml">
	<head>
		<title>「112」の検索結果</title>
	</head>
	<body>
		<h1>「<span class="query">112</span>」の検索結果</h1>
		<p><span class="titalResults"
             >101</span>件中1件目から<span class="itemsPerPage">
		     >10</span>件</p>
		<ul class="result">
			<li>
				<span class="zipcode">112000</span>
				<span class="address">東京都文京区以下に記載がない場合</span>
			</li>
			<li>
				<span class="zipcode">1120001</span>
				<span class="address">東京都文京区白山（2~5丁目）</span>
			</li>
			<li>
				<span class="zipcode">1120013</span>
				<span class="address">東京都文京区音羽</span>
			</li>
		</ul>
	</body>
</html>

```

##JSON表現
```ruby:qiita.rb
{
	"query": 112,
	"totalresult": 101,
	"itemsPerPage": 10,
	"result": [{
		"zipcode": "112000"
		"address": "東京都文京区以下に記載がない場合"
},		
{
		"zipcode": "112001",
		"address": "東京都文京区白山（2~5丁目）",
},
...
{
		"zipcode": "112013",
		"address": "東京都文京区音羽",
}]
}
```


--------------
追加↓リンク関係
--------------

















#プラクティス 郵便番号・地域(112-0002・東京都)
##XHTML表現
```ruby:qiita.rb
<html xmlns="http://www.w3.org/1999/xhtml">
	<head>
		<title>〒112-0002</title>
	</head>
	<body>
		<h1>〒112-0002</h1>
		<dl>
			<dt>番号</dt>
			<dd class="zipcode">112-0002</dd>
			<dt>住所</dt>
			<dd class="address">
#東京都のリンクa href="http://aaaa"
+			<a href="http://zip.ricollab.jp/東京都" class="prefecture">東京都</a>
+			<a href="http://zip.ricollab.jp/東京都/文京区" class="city">文京区</a>
+			<a href="http://zip.ricollab.jp/東京都/文京区/小石川" class="town">小石川</a>
#消去span
-			<span class="prefecture">東京都</span>
-			<span class="city">文京区</span>
-			<span class="town">小石川</span>
			</dd>
			<dt>フリガナ</dt>
			<dd class="yomi">
			<span class="prefecture">トウキョウト</span>
			<span class="city">ブンキョウク</span>
			<span class="town">コイシカワ</span>
			</dd>
		</dl>
	</body>
</html>

------------------

<html xmlns="http://www.w3.org/1999/xhtml">
	<head>
		<title>東京都の一覧</title>
	</head>
	<body>
		<h1><span class="area"><span class="prefecture">東京都</span>の一覧</h1>
		<ul class="result">
			<li>
#東京都のリンクa href="http://aaaa"
+			<a href="http://zip.ricollab.jp/東京都/千代田区" class="prefecture">千代田区</a>
-			<span class="city">千代田区</span>
			(<span class="yomi">チヨダク</span>)</li>
			<li>
+			<a href="http://zip.ricollab.jp/東京都/中央区" class="prefecture">中央区</a>
-			<span class="city">中央区</span>
			(<span class="yomi">チュウオクク</span>)</li>
...
			<li>
+			<a href="http://zip.ricollab.jp/東京都/小笠原村" class="prefecture">小笠原村</a>
-			<span class="city">小笠原村</span>
			(<span class="yomi">オガサワラムラ</span>)</li>
		</ul>
	</body>
</html>



```
##JSON表現
```ruby:qiita.rb
#なし
--------------

{
	"area": {
		"prefecture": "東京都",
},
"result": [{
	"name": "千代田区"
	"yomi": "チヨダク"
+		"link": "http://zip.ricollab.jp/東京都/千代田区.json"
},		
{
	"name": "中央区",
	"yomi": "チュウオクク",
+		"link": "http://zip.ricollab.jp/東京都/中央区.json"
},
...
{
	"name": "小笠原村",
	"yomi": "オガサワラムラ",
+		"link": "http://zip.ricollab.jp/東京都/小笠原村.json"
}]
}

```

#プラクティス 検索リソース(112)
##XHTML表現
```ruby:qiita.rb
<html xmlns="http://www.w3.org/1999/xhtml">
	<head>
		<title>「112」の検索結果</title>
	</head>
	<body>
		<h1>「<span class="query">112</span>」の検索結果</h1>
		<p><span class="titalResults"
             >101</span>件中1件目から<span class="itemsPerPage">
		     >10</span>件</p>
		<ul class="result">
			<li>
				<span class="zipcode">112000</span>
#東京都のリンクa href="http://aaaa"
+				<a href="http://zip.ricollab.jp/1120000" class="address">東京都文京区以下に記載がない場合</a>
#消去span
-				<span class="address">東京都文京区以下に記載がない場合</span>
			</li>
			<li>
#東京都のリンクa href="http://aaaa"
+				<a href="http://zip.ricollab.jp/1120001" class="address">東京都文京区白山（2~5丁目）</a>
#消去span
				<span class="zipcode">1120001</span>
				<span class="address">東京都文京区白山（2~5丁目）</span>
			</li>
			<li>
#東京都のリンクa href="http://aaaa"
+				<a href="http://zip.ricollab.jp/1120013" class="address">東京都文京区音羽</a>
#消去span
				<span class="zipcode">1120013</span>
				<span class="address">東京都文京区音羽</span>
			</li>
		</ul>
+		<p><a href="http://zip.ricollab.search?q=112&amp;page=2"
			rel="next">次へ</a></p>
	</body>
</html>

```
##JSON表現
```ruby:qiita.rb

{
	"query": 112,
	"totalresult": 101,
	"itemsPerPage": 10,
+	"next": "http://zip.ricollab.jp/search?q=112&type=json&page=2"
	"result": [{
		"zipcode": "112000"
		"address": "東京都文京区以下に記載がない場合"
+		"link": "http://zip.ricollab.jp/1120001"
},		
{
		"zipcode": "112001",
		"address": "東京都文京区白山（2~5丁目）",
+		"link": "http://zip.ricollab.jp/1120001"
},
...
{
		"zipcode": "112013",
		"address": "東京都文京区音羽",
+		"link": "http://zip.ricollab.jp/1120001"
}]
}
```



















##トップページ 
###地域
```ruby:qiita.rb
<html xmlns="http://www.w3.org/1999/xhtml">
	<head><title>郵便番号検索</title></head>
	<body>
		<h1>都道府県一覧</h1>
		<ul>
			<li><a href="http://zip.ricollab.jp/北海道">北海道</a></li>
...
			<li><a href="http://zip.ricollab.jp/沖縄県">沖縄県</a></li>
		</ul>
	</body>
</html>

```


###検索結果
```ruby:qiita.rb
<html xmlns="http://www.w3.org/1999/xhtml">
	<head><title>郵便番号検索</title></head>
	<body>
		<h1>郵便番号検索</h1>
		<form method="GET" action="http://zip.ricollab.jp/search">
			<p>
			<imput id="q" name="q" type="text"/>
			<imput type="radio" id="type1" name="type" value="json"/> JSON,
			<imput type="radio" id="type2" name="type" value="html"/> XHTML
			<imput type="submit" id="submit" name="submit" value="検索"/>
			</p>
		<h1>都道府県一覧</h1>
		<ul>
...
		</ul>
		</form>
	</body>
</html>

```
####リンク関係

検索結果
→次の検索結果
→前の検索結果
→郵便番号
トップページ
→検索結果
→都道府県

郵便番号
→町域
	→都道府県→市区町村→町域（→郵便番号）
	→市区町村→町域（→郵便番号）
→都道府県→市区町村→町域（→郵便番号）
→市区町村→町域（→郵便番号）

#URI　名称　ベストプラクティス
##郵便番号/地域 (-,html,json,jsonp)
```ruby:qiita.rb
http://zip.ricollab.jp/1120002
http://zip.ricollab.jp/112-0002

http://zip.ricollab.jp/1120002.html
http://zip.ricollab.jp/1120002.json
http://zip.ricollab.jp/1120002.json?callback={コールバック関数名}

http://zip.ricollab.jp/東京都
http://zip.ricollab.jp/東京都/文京区
http://zip.ricollab.jp/東京都/文京区/小石川

http://zip.ricollab.jp/東京都/文京区/小石川.html
http://zip.ricollab.jp/東京都/文京区/小石川.json
http://zip.ricollab.jp/東京都/文京区/小石川.json?callback={コールバック関数名}

```
##検索結果
```ruby:qiita.rb

http://zip.ricollab.jp/search?=小石川
http://zip.ricollab.jp/search?q=%E5%B0%8F%E7%9F%B3%E5%B7%9D
http://zip.ricollab.jp/search?={query}

http://zip.ricollab.jp/search?=小石川&type=html
http://zip.ricollab.jp/search?=小石川&type=json
http://zip.ricollab.jp/search?=小石川&type=json&callback={コールバック関数名}

```
##トップレベルリソース
```ruby:qiita.rb

http://zip.ricollab.jp

```