Move json schema file
[ouya-game-data.git] / schema.json
diff --git a/schema.json b/schema.json
deleted file mode 100644 (file)
index 45cbb76..0000000
+++ /dev/null
@@ -1,387 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-07/schema#",
-    "$id": "http://cweiske.de/ouya-game.schema.json",
-    "title": "OUYA game metadata",
-    "description": "Game data importable in OUYA API servers.",
-    "type": "object",
-
-    "required": [
-        "packageName",
-        "title",
-        "releases",
-        "media",
-        "developer"
-    ],
-    "additionalProperties": false,
-    "properties": {
-        "packageName": {
-            "description": "Java package names",
-            "type": "string",
-            "examples": [
-                "com.vendor.gamename"
-            ]
-        },
-
-        "title": {
-            "description": "Game name",
-            "type": "string"
-        },
-
-        "description": {
-            "description": "Text describing the game. Newlines (CRLF) allowed",
-            "type": "string"
-        },
-
-        "players": {
-            "description": "How many players can play this game at the same time?",
-            "type": "array",
-            "items": {
-                "type": "number",
-                "minimum": 1
-            }
-        },
-
-        "genres": {
-            "description": "Categories",
-            "type": "array",
-            "items": {
-                "type": "string",
-                "uniqueItems": true,
-                "enum": [
-                    "Adventure",
-                    "App",
-                    "Arcade/Pinball",
-                    "Card/Casino",
-                    "Dual Stick",
-                    "Entertainment",
-                    "Fight!",
-                    "FPS/Shooter",
-                    "Kids List",
-                    "Meditative",
-                    "Multiplayer",
-                    "Music",
-                    "Platformer",
-                    "Puzzle/Trivia",
-                    "Racing",
-                    "Retro",
-                    "Role-Playing",
-                    "Short on Time?",
-                    "Sim/Strategy",
-                    "Sports",
-                    "Utility",
-                    "Video",
-
-                    "Open Source"
-                ]
-            }
-        },
-
-        "releases": {
-            "type": "array",
-            "items": {
-                "type": "object",
-                "required": [
-                    "name",
-                    "versionCode",
-                    "uuid",
-                    "date",
-                    "url",
-                    "size",
-                    "md5sum"
-                ],
-                "additionalProperties": false,
-                "properties": {
-
-                    "name": {
-                        "description": "Human readable version number",
-                        "type": "string",
-                        "examples": [
-                            "1.6"
-                        ]
-                    },
-
-                    "versionCode": {
-                        "description": "APK-internal version code. Run \"aapt dump badging file.apk\", field \"versionCode\"",
-                        "type": ["string", "null"]
-                    },
-
-                    "uuid": {
-                        "description": "Unique ID for the release. Use uuid-gen to get one",
-                        "type": "string"
-                    },
-
-                    "date": {
-                        "description": "When the version has been released",
-                        "type": "string",
-                        "format": "date|datetime"
-                    },
-
-                    "latest": {
-                        "description": "Marker for the latest release",
-                        "type": "boolean"
-                    },
-
-                    "url": {
-                        "description": ".apk download link",
-                        "type": "string",
-                        "format": "url"
-                    },
-
-                    "size": {
-                        "description": "File size in bytes",
-                        "type": "number",
-                        "minimum": 1
-                    },
-
-                    "md5sum": {
-                        "description": "MD5 hash of the .apk file contents",
-                        "type": "string"
-                    },
-
-                    "publicSize": {
-                        "description": "FIXME",
-                        "type": "number"
-                    },
-
-                    "nativeSize": {
-                        "description": "FIXME",
-                        "type": "number"
-                    }
-                }
-            }
-        },
-
-        "media": {
-            "type": "object",
-            "required": [
-                "discover",
-                "large"
-            ],
-            "additionalProperties": false,
-            "properties": {
-                "discover": {
-                    "description": "Image for the OUYA discover store. FIXME: Size",
-                    "type": "string",
-                    "format": "url"
-                },
-
-                "large": {
-                    "description": "Large game cover image for the store details page.",
-                    "type": "string",
-                    "format": "url"
-                },
-
-                "video": {
-                    "description": "Video for the store details page. Vimeo and Youtube URLs supported",
-                    "type": "string",
-                    "format": "url"
-                },
-
-                "screenshots": {
-                    "description": "Additional images for the store details page.",
-                    "type": "array",
-                    "items": {
-                        "type": "string",
-                        "format": "url"
-                    }
-                },
-
-                "details": {
-                    "description": "Images and videos for the details page. Can be in any order. If no detail images and videos are given, the large image, video and screenshots are used instead",
-                    "type": "array",
-                    "items": {
-                        "type": "object",
-                        "required": [
-                            "type",
-                            "url"
-                        ],
-                        "additionalProperties": false,
-                        "properties": {
-                            "type": {
-                                "description": "Medium type: image or video",
-                                "type": "string",
-                                "enum": ["image", "video"]
-                            },
-
-                            "url": {
-                                "description": "Image URL or video URL. Vimeo and Youtube URLs supported",
-                                "type": "string",
-                                "format": "url"
-                            },
-
-                            "thumb": {
-                                "description": "Small preview image",
-                                "type": "string",
-                                "format": "url"
-                            }
-                        }
-                    }
-                }
-            }
-        },
-
-        "developer": {
-            "type": "object",
-            "required": [
-                "name"
-            ],
-            "additionalProperties": false,
-            "properties": {
-
-                "uuid": {
-                    "description": "Unique ID for the developer",
-                    "type": "string"
-                },
-
-                "name": {
-                    "description": "Developer (company or person) name",
-                    "type": "string"
-                },
-
-                "supportEmail": {
-                    "description": "E-Mail address for support questions",
-                    "type": "string",
-                    "format": "email",
-                    "default": null
-                },
-
-                "supportPhone": {
-                    "description": "Telephone number",
-                    "type": "string",
-                    "default": null
-                },
-
-                "founder": {
-                    "description": "If the developer was an OUYA founder",
-                    "type": "boolean",
-                    "default": false
-                }
-            }
-        },
-
-        "contentRating": {
-            "description": "Which audience is this game for?",
-            "type": "string",
-            "enum": [
-                "Everyone",
-                "9+",
-                "12+",
-                "17+"
-            ]
-        },
-
-        "website": {
-            "description": "Game website",
-            "type": "string",
-            "format": "url"
-        },
-
-        "firstPublishedAt": {
-            "description": "When the game has first been published to the world",
-            "type": "string",
-            "format": "date|date-time"
-        },
-
-        "inAppPurchases": {
-            "description": "If you can buy things in the game",
-            "type": "boolean"
-        },
-
-        "overview": {
-            "description": "FIXME",
-            "type": "string"
-        },
-
-        "premium": {
-            "description": "FIXME",
-            "type": "boolean"
-        },
-
-        "rating": {
-            "type": "object",
-            "additionalProperties": false,
-            "properties": {
-
-                "likeCount": {
-                    "description": "Number of likes this game has",
-                    "type": "number",
-                    "minimum": 0
-                },
-
-                "average": {
-                    "description": "Average rating for this game",
-                    "type": "number",
-                    "minimum": 0,
-                    "maximum": 5
-                },
-
-                "count": {
-                    "description": "Number of ratings",
-                    "type": "number",
-                    "minimum": 0
-                }
-            }
-        },
-
-        "products": {
-            "description": "Items that could be bought via the discover store",
-            "type": "array",
-            "items": {
-                "type": "object",
-                "required": [
-                    "identifier",
-                    "name",
-                    "description",
-                    "localPrice",
-                    "originalPrice",
-                    "currency"
-                ],
-                "additionalProperties": false,
-                "properties": {
-
-                    "promoted": {
-                        "description": "If this product is the currently promoted/visible one",
-                        "type": "boolean"
-                    },
-
-                    "identifier": {
-                        "description": "Internal key",
-                        "type": "string",
-                        "examples": [
-                            "full_version"
-                        ]
-                    },
-
-                    "name": {
-                        "description": "Human readable name",
-                        "type": "string",
-                        "examples": [
-                            "Unlock full game"
-                        ]
-                    },
-
-                    "description": {
-                        "description": "Explanation of the features you will buy",
-                        "type": "string"
-                    },
-
-                    "localPrice": {
-                        "description": "Current price (maybe discounted)",
-                        "type": "number"
-                    },
-
-                    "originalPrice": {
-                        "description": "Previous price",
-                        "type": "number"
-                    },
-
-                    "currency": {
-                        "description": "Three-letter currency code, depending on the player that was logged in",
-                        "type": "string",
-                        "enum": ["EUR", "USD"]
-                    }
-                }
-            }
-        }
-    }
-}