Blue Sky TOML
Blue Sky TOML は のサンプル(Wikimedia Commons を基にしています)。ダウンロード・パーサ・プレビュー・ファイル種別判定のテストに使えます。
01-blue-sky.toml312faa01897345103b27d4e8f188a299d8d1d4a6d546af0c3e99e2bd3b0695d8Data
設定ファイルで使われるテキスト形式。キー値、テーブル、配列を人間が読みやすく記述できます。
74 69 74 6C 65 20 3D title =SIGNATURE = bytes.fromhex("7469746c65203d")
OFFSET = 0
def is_toml(path: str) -> bool:
with open(path, "rb") as f:
f.seek(OFFSET)
head = f.read(len(SIGNATURE))
return head == SIGNATUREconst SIGNATURE = [0x74, 0x69, 0x74, 0x6c, 0x65, 0x20, 0x3d];
const OFFSET = 0;
// bytes: a Uint8Array / Buffer holding the start of the file
export function isToml(bytes) {
return SIGNATURE.every((byte, i) => bytes[OFFSET + i] === byte);
}package fileid
import "bytes"
var istomlSignature = []byte{0x74, 0x69, 0x74, 0x6c, 0x65, 0x20, 0x3d}
const istomlOffset = 0
func IsToml(b []byte) bool {
end := istomlOffset + len(istomlSignature)
if len(b) < end {
return false
}
return bytes.Equal(b[istomlOffset:end], istomlSignature)
}const SIGNATURE: &[u8] = &[0x74, 0x69, 0x74, 0x6c, 0x65, 0x20, 0x3d];
const OFFSET: usize = 0;
fn is_toml(bytes: &[u8]) -> bool {
bytes.get(OFFSET..OFFSET + SIGNATURE.len()) == Some(SIGNATURE)
}<?php
$signature = "\x74\x69\x74\x6c\x65\x20\x3d";
$offset = 0;
function is_toml(string $bytes): bool {
global $signature, $offset;
return substr($bytes, $offset, strlen($signature)) === $signature;
}Tom's Obvious Minimal Language はデータ交換、インポート/エクスポート、パーサのテスト、検証ワークフローで使われます。エンコーディング・区切り文字・バージョン・コンテナ構造が実装の挙動を変えることがあります。
形式が判定できたからといって、信頼できない入力が安全とは限りません。パーサ例外・巨大ファイル・想定外のエンコーディング・外部参照を考慮してください。
11 個のサンプルで、先頭バイト判定・パーサのエラー・アップロード上限・ダウンロード挙動をテストできます。
Blue Sky TOML は のサンプル(Wikimedia Commons を基にしています)。ダウンロード・パーサ・プレビュー・ファイル種別判定のテストに使えます。
01-blue-sky.toml312faa01897345103b27d4e8f188a299d8d1d4a6d546af0c3e99e2bd3b0695d8Flower Garden TOML は のサンプル(Wikimedia Commons を基にしています)。ダウンロード・パーサ・プレビュー・ファイル種別判定のテストに使えます。
02-flower-garden.tomle713a99d0720e76e1d9abcea925f141dcb06c3dfdb6930425af3b5753cef8c80Navy Blue Sky TOML は のサンプル(Wikimedia Commons を基にしています)。ダウンロード・パーサ・プレビュー・ファイル種別判定のテストに使えます。
03-navy-blue-sky.tomld5df9b2f3c96aaf5fbea0fcbdbc91f096aff024f85af0a61777c842fb32d9de4Nature of the Sky TOML は のサンプル(Wikimedia Commons を基にしています)。ダウンロード・パーサ・プレビュー・ファイル種別判定のテストに使えます。
04-nature-sky.toml8b62e6c775987162a09aa4b6fd145a2c7c7e19c08f491330330ff912a3b88932Sky Landscape TOML は のサンプル(Wikimedia Commons を基にしています)。ダウンロード・パーサ・プレビュー・ファイル種別判定のテストに使えます。
05-sky-landscape.toml21be5330f1d8956a5a574c988ca73d06fe23be869bba4b4cd3416b859d3ffe17Starry Sky TOML は のサンプル(Wikimedia Commons を基にしています)。ダウンロード・パーサ・プレビュー・ファイル種別判定のテストに使えます。
06-starry-sky.toml25139bc5bf0390aa4af11c958a2fb86a53cbe02c6ef0d28d5ee6de894a7ab7b1Blue Night Sky TOML は のサンプル(Wikimedia Commons を基にしています)。ダウンロード・パーサ・プレビュー・ファイル種別判定のテストに使えます。
07-blue-night-sky.toml2aa8f24c2528c2144fb361a85235752e7ddda9a657ff6e5378ada7ad34a22d8bHibiscus Flower TOML は のサンプル(Wikimedia Commons を基にしています)。ダウンロード・パーサ・プレビュー・ファイル種別判定のテストに使えます。
08-hibiscus-flower.tomlb2549b4d5dea22350ac75c6c4df3974c08b87484d171af0c5fa052e97c5ad695Arctic Sky TOML は のサンプル(Wikimedia Commons を基にしています)。ダウンロード・パーサ・プレビュー・ファイル種別判定のテストに使えます。
09-arctic-sky.tomld10fd4cb67ee9441d95e8aafb2a5e7743b37a28b4a60842d4f2903c2f3c537b1Sunset Rays TOML は のサンプル(Wikimedia Commons を基にしています)。ダウンロード・パーサ・プレビュー・ファイル種別判定のテストに使えます。
10-sunset-rays.toml6289708add4c657e258c07408df71a649da10bcd2ed560bbc18186cc3f5ae14bNASA Blue Marble TOML は のサンプル(NASA Image and Video Library を基にしています)。ダウンロード・パーサ・プレビュー・ファイル種別判定のテストに使えます。
nasa-blue-marble-2012-east.toml6374658e0a4ae88f04f79463833a659b68c1ee8f5f1faa39da7c1da63f16f18bTom's Obvious Minimal Language ファイルはバイトシグネチャ 74 69 74 6C 65 20 3D ("title =") で始まります。拡張子に頼らず、この先頭バイトを読み取って形式を判定してください。
Tom's Obvious Minimal Language のMIMEタイプは application/toml, text/toml です。
Tom's Obvious Minimal Language ファイルは .toml 拡張子を使います。拡張子は慣習にすぎず中身を保証しないため、シグネチャや構造のチェックと組み合わせてください。