トップページtech
32コメント10KB

【JML】JSON Markup Language策定・普及推進スレ

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2010/11/10(水) 20:46:55
 ウザいXML・HTMLを離れjavascriptと親和性の高いJSON互換のMarkup言語を
使いませんか?そろそろXMLと決別したい人のスレです。

スレの目標:
 JSONでXML・HTML・XSLを生成でき、最も簡潔、かつ柔軟性のある
データ形式をム板的に策定する。

取り敢えず、JML暫定案。

タグの代替案その1
最小構成 ["タグ",{}}
基本構文 {"タグ",{"属性":"値"},ブロック,.ブロック,・・・}

ネストさせていくとこんな感じ。
["タグ",{"属性":"値"},["タグ",{...},...],"文字列",["タグ",{...},...]]

タグの代替案その2
最小構成 ["タグ"]
基本構文 {"タグ",{"属性":"値"},[ブロック,ブロック,・・・]}

属性とブロックは省略可能でブロックは文字列に置き換え可。
{"タグ","文字列"}

ネストさせていくとこんな感じ。
["タグ",{"属性":"値"},[["タグ"],"文字列",["タグ","文字列"]]]

使い勝手がよければ全く新しい形式で構わないのでどんどん提案
しちゃってください。

※データ形式ならS式でも良かったんですが処理系の普及が非現実なので止めました。
0002デフォルトの名無しさん2010/11/10(水) 20:52:47
素のJSONで何か問題あんの
000312010/11/10(水) 21:05:31
>>2
将来的にXML系を完全に置き換えたいのよ。
それとXAMLやXSLのようなUIをデザインできる
JSONのサブセット規格が欲しいんだよ。

あとJSONの素の形式じゃXML系に
置き換える形式がプログラムによってまちまちで不便でしょ。
0004デフォルトの名無しさん2010/11/10(水) 21:09:59
>>3
それって、JSONのスーパーセットになるんじゃないの?
0005デフォルトの名無しさん2010/11/10(水) 21:12:58
このスレッドは天才チンパンジー「アイちゃん」が
言語訓練のために立てたものです。

アイと研究員とのやり取りに利用するスレッドなので、
関係者以外は書きこまないで下さい。

                  京都大学霊長類研究所
000612010/11/10(水) 21:21:05
>>4
構文上JSONのデータとしてそのまま使えるんだからサブセットじゃね?
別にJSONの構文から拡張したりはしないよ。逆に構文をある程度制限はするけどね。
0007デフォルトの名無しさん2010/11/10(水) 21:55:54
YAMLでええのとちゃう?
0008デフォルトの名無しさん2010/11/10(水) 22:12:32
Javaとの親和性がなくなるよ
(readObject()だけで復元できなくなる)

構文解析するときに、XMLを構文解析するときと同じくらいの労力が必要になる
000912010/11/10(水) 22:27:13
>>7
YAMLってよくわからんけど、文字列evalに渡すだけでオブジェクトに出きるの?

>>8
YAMLの話?JSONの話?JSONならJavaのScriptEngineで読み出す仕組みを
一回作れば済むんじゃない? ScriptEngine扱うのはそんな難しそうじゃないぞ。
0010デフォルトの名無しさん2010/11/10(水) 22:32:20
>>9
ScriptEngineでXMLを読み出す仕組みを一回作れば済むんじゃない? ScriptEngine扱うのはそんな難しそうじゃないぞ。
0011デフォルトの名無しさん2010/11/10(水) 23:02:22
>>10
何の意味があるのかさっぱりだな。皮肉になってないぞ。
0012デフォルトの名無しさん2010/11/10(水) 23:09:31
>>11
net.arnx.jsonic.JSONを使えば一行でJSONからオブジェクトに変換できる。
こんな風に。
Type foo = JSON.decode(text, Type.class);

だから、JavaでのJSONとXMLの扱いは変わらんという皮肉じゃないか?
0013デフォルトの名無しさん2010/11/11(木) 00:24:54
JSONにオブジェクトのメタデータをつけると、XMLの解析と同じくらいやっかいになる
ただのテキストのXMLとJavaの親和性がない(と感じる)理由は、結局、XMLにメタデータがくっついてるから

メタデータが必要ないプリミティブのペアやリストや木構造だけなら、XMLもJSONも同程度の行数で構文解析できる
0014デフォルトの名無しさん2010/11/11(木) 09:04:36
昔はクライアント側でゴリゴリ書いてるサイトってうざがられてたのに、時代は変わったものだな。
JSONなんて一部のマニアしか使ってなかったのにな。
0015デフォルトの名無しさん2010/11/11(木) 14:42:14
>>1
>基本構文 {"タグ",{"属性":"値"},ブロック,.ブロック,・・・}
>基本構文 {"タグ",{"属性":"値"},[ブロック,ブロック,・・・]}
どっちもJSONだと構文エラーだけどどうすんの?
tuple導入してJSONのスーパーセットにしたいの?単にリストのつもりなの?それともEBNF?
001612010/11/11(木) 22:54:41
>>15
すまん。カッコが正しいか見ずに打ってた。
あと、JSONは一番外は、配列ダメだったの忘れてた。
直すとこんな感じか。

タグの代替案その1
最小構成 {"タグ":[{}]}
基本構文 {"タグ":[{"属性":"値"},ブロック,ブロック,・・・]}

また、間違ってたりXMLに
変換すると不備がでそうなとこがあったら教えとくれ。

001712010/11/11(木) 23:51:16
んー。
返って冗長になったなぁ。
{"タグ":{"属性":"値"}}
みたいな省略形式を許容すれば、
見た目ややすっきりするけど一貫性が下がるし、
構文の判定も若干面倒くなるんだよな。
いいデザインはないかねぇ。
0018デフォルトの名無しさん2010/11/12(金) 00:39:31
ProtocolBufferのことも、時々は思い出してあげてください。
http://code.google.com/p/protobuf/
0019デフォルトの名無しさん2010/11/12(金) 01:12:23
>>16
>あと、JSONは一番外は、配列ダメだったの忘れてた。
んなこたーない
>>http://www.ietf.org/rfc/rfc4627.txt
> JSON-text = object / array

あとAvroのこともたまには思い出してあげてくだしあ
0020デフォルトの名無しさん2010/11/12(金) 12:04:29
こんなのはどう?
JSON = ["<タグ 属性名=属性値...>子要素</タグ>..."]
002112010/11/12(金) 21:42:17
>>19
 あ、いいんだ。ありがと。
#せっかくXMLコンバーター書き直したのに、また書き直しだ・・・。

>>20
Javascriptで編集できないじゃん。
わざわざパース実装すれば別だろうけど。
0022デフォルトの名無しさん2011/01/15(土) 23:54:35
JSONって日本語使えないんでしょ?
面倒じゃない?
0023デフォルトの名無しさん2011/01/16(日) 07:19:56
>>22
keyもUnicode文字列だぞ
0024デフォルトの名無しさん2011/07/29(金) 10:32:37.81
カオスラウンジもpixivもしんで。
0025南沢木綿子 ◆eGd4IGdY9Dhz 2011/12/02(金) 09:28:33.46
  ∧,,,∧ 
 (  ・∀・) ほー それで
  (  : ) 
  し─J
0026デフォルトの名無しさん2012/07/08(日) 19:07:19.06
C++かCで、JSONの「お勧めの」ライブラリある?
0027デフォルトの名無しさん2012/07/09(月) 21:29:22.72
ある
0028デフォルトの名無しさん2012/07/10(火) 13:47:39.17
>>27
ありがとう

もし無かったら、自分で作らないといけないところだった
これから探してみるよ
0029デフォルトの名無しさん2012/07/11(水) 20:07:08.81
boostのpropertiy_treeとかで使えたよな
0030デフォルトの名無しさん2012/07/19(木) 14:28:56.12
BSONとかMessagePackとかはこのスレ?
0031デフォルトの名無しさん2012/07/19(木) 20:16:22.70
>>30
もろにこのスレ
0032デフォルトの名無しさん2012/07/21(土) 21:49:19.87
俺の作ったこのクソスレそろそろdat落ちさせろよ
何年生き残ってんだよ
■ このスレッドは過去ログ倉庫に格納されています