長期データ持続を達成するための主条件の1つはXSystemsの間でXSetsを動かすSNIA XAM (拡張可能なアクセス方式)の指定の言語のシステムのまたは、アーカイブの間でデータを動かす機能である。
XAM v1.0の指定はXsetsを輸出し、輸入するためにサポートを提供することによってこの条件を支える。 XSystem、結果として生じるXSet教会法データ交換フォーマット(パッケージ)およびXsystemにXsetを輸入することを使用される方法からXSetを輸出することを使用される方法を指定する。
このポストはジャワを使用してその指定にプログラムする方法をXAMを幾分よく知られていると仮定し。 それは2つの主要な部から成っているXSetの教会法のフォーマットのパッケージのフォーマットそして内容に焦点を合わせる: 1つ以上の方針、特性および流れをXSets記述するXML文書は流れの二進表示によって続いた。
パッケージのフォーマットは2005 W3CのXML二進最大限に活用された包装の(XOP)推薦に合致する。 推薦から引用するため:
XOPは包む石鹸およびMIMEにだけ適当であるしかしあらゆるXML Infosetおよび包装のメカニズムへのXML Infosetのための一般目的の連載のメカニズムを定義する二進内容との。
XOPと不慣れであり、ほとんどの人々があれば、博士のDobb's Journal 12月2005日問題のAndrey Butovによる記事はよい導入を含んでいた。
複数のXSetはパッケージで含んでいることができる。 但し現在のXAM SDKの参照の実施は1 XSetだけを支える。 XML文書(AKA明らかなXSet)は根の要素がxsetsの有効な、整ったXML文書である。 それはXSLTおよび他のXML用具を使用して分析され、処理することができる。 XAMの建築文書のAnnex Bは明らかなXSetのためのXMLのスキーマ定義(XSD)を含んでいる。
パッケージのフォーマットをより詳しく調査するためには、私は2つXStreamsを含んでいる新しいXSetを作成するStoreHelloWorldと呼ばれた小さいJavaアプリケーションを書いた。 最初のXstreamはいたるところにあるHelloWorld.javaプログラムのためのソースコードを含んでいる。 第2 XStreamはbase64にそしてMIMEのタイプの適用またはbase64と符号化される二進目的HelloWorld.classを含んでいる。 通常XStreamを符号化するべきではないが、ブログのバイナリファイルを表示することは問題となり、それ故に回避策である。
StoreHelloWorldのためのソースコードはここにある。 輸入のjava.io.BuのfferedOutputStream; 輸入のjava.io.BuのfferedInputStream; 輸入のjava.io.BuのfferedReader; 輸入java.io.Fi LE; 輸入のjava.io.FiのleInputStream; 輸入のjava.io.FiのleOutputStream; 輸入のjava.io.FiのleNotFoundException; 輸入のjava.io.FiのleWriter; 輸入のjava.io.IOの例外; 輸入のjava.io.InのputStreamReader; 輸入のjava.io.InのputStream;

























