IPUZ

From Just Solve the File Format Problem
(Difference between revisions)
Jump to: navigation, search
(Format)
(JSONP preference removed; added mention of creator Puzzazz; added link to supporter Crossword compiler; changed IPUZ to properly stylized ipuz.)
Line 4: Line 4:
 
|extensions={{ext|ipuz}}
 
|extensions={{ext|ipuz}}
 
}}
 
}}
'''IPUZ''' is intended as an openly-documented format for data files of puzzle games such as crosswords and sudoku. In contrast to "proprietary" formats such as [[PUZ (crossword puzzles)|PUZ]], there is an official spec available freely and released under a Creative Commons license ([http://creativecommons.org/licenses/by-nd/3.0/ BY-ND 3.0]), instead of the format having to be discovered by reverse engineering subject to possible hassles by intellectual-property owners.
+
'''ipuz''' is intended as an openly-documented format for data files of puzzles such as crosswords and sudoku. In contrast to "proprietary" formats such as [[PUZ (crossword puzzles)|PUZ]], there is an official spec available freely and released under a Creative Commons license ([http://creativecommons.org/licenses/by-nd/3.0/ BY-ND 3.0]), instead of the format having to be discovered by reverse engineering subject to possible hassles by intellectual-property owners. It was created and released by the puzzle technology company [http://www.puzzazz.com Puzzazz], which was the first company to use it.
  
 
== Format ==
 
== Format ==
  
IPUZ data is expressed in [[JSON]] form, preferably in the JSONP variant in which the JSON data is surrounded by code to make it valid JavaScript, in this case an <code>ipuz()</code> function call.
+
ipuz data is expressed in [[JSON]] format.
  
 
== Identification ==
 
== Identification ==
  
IPUZ version 1 files contain the text line <code>"version": "http://ipuz.org/v1",</code> (perhaps with whitespace padding).
+
ipuz files should specify the version within legal JSON. Expected values include: <code><nowiki>"version": "http://ipuz.org/v1"</nowiki></code> and <code><nowiki>"version": "http://ipuz.org/v2"</nowiki></code>.
  
 
== Puzzle types ==
 
== Puzzle types ==
  
Although IPUZ is not an [[XML]]-based format, its creators borrowed the "namespaces designated by [[URL|URIs]]" concept for identifying subtypes of the format for different sorts of puzzles. Several puzzle types, with associated URIs in '''ipuz.org''', are defined in the spec, and others may define puzzle types of their own and assign them identifying URIs within their own websites. The spec requires that anybody defining a puzzle type and assigning it a URL actually own the site within which that URL resides, but doesn't mandate that it actually resolve to anything useful; however, it is suggested that it lead to a description of the puzzle format in question. The URIs referenced in the original spec all seem to redirect to the spec document itself, rather than any more specific part of it related to a particular puzzle type.
+
Although ipuz is not an [[XML]]-based format, its creators borrowed the "namespaces designated by [[URL|URIs]]" concept for identifying subtypes of the format for different sorts of puzzles. Several puzzle types, with associated URIs in '''ipuz.org''', are defined in the spec, and others may define puzzle types of their own and assign them identifying URIs within their own websites. The spec requires that anybody defining a puzzle type and assigning it a URL actually own the site within which that URL resides, but doesn't mandate that it actually resolve to anything useful; however, it is suggested that it lead to a description of the puzzle format in question. The URIs referenced in the original spec all seem to redirect to the spec document itself, rather than any more specific part of it related to a particular puzzle type.
  
 
The types defined in the spec are:
 
The types defined in the spec are:
Line 29: Line 29:
  
 
== Official spec ==
 
== Official spec ==
* [http://www.ipuz.org/ IPUZ spec]
+
* [http://www.ipuz.org/ ipuz spec]
  
 
== Sample data ==
 
== Sample data ==
* [http://www.ipuz.org/example IPUZ example]
+
* [http://www.ipuz.org/example ipuz example]
  
 
== Software ==
 
== Software ==
* [http://sourceforge.net/projects/jpz2ipuz/ JPZ to IPUZ converter]
+
* [http://sourceforge.net/projects/jpz2ipuz/ JPZ to ipuz converter]
  
 
== Other links ==
 
== Other links ==
* [http://www.crosswordman.com/ipuz/support.html IPUZ support in Sympathy]
+
* [http://www.crosswordman.com/ipuz/support.html ipuz support in Sympathy]
 +
* [http://www.crossword-compiler.com/WhatsNew.html ipuz support in Crossword Compiler]

Revision as of 03:27, 26 March 2016

File Format
Name IPUZ
Ontology
Extension(s) .ipuz

ipuz is intended as an openly-documented format for data files of puzzles such as crosswords and sudoku. In contrast to "proprietary" formats such as PUZ, there is an official spec available freely and released under a Creative Commons license (BY-ND 3.0), instead of the format having to be discovered by reverse engineering subject to possible hassles by intellectual-property owners. It was created and released by the puzzle technology company Puzzazz, which was the first company to use it.

Contents

Format

ipuz data is expressed in JSON format.

Identification

ipuz files should specify the version within legal JSON. Expected values include: "version": "http://ipuz.org/v1" and "version": "http://ipuz.org/v2".

Puzzle types

Although ipuz is not an XML-based format, its creators borrowed the "namespaces designated by URIs" concept for identifying subtypes of the format for different sorts of puzzles. Several puzzle types, with associated URIs in ipuz.org, are defined in the spec, and others may define puzzle types of their own and assign them identifying URIs within their own websites. The spec requires that anybody defining a puzzle type and assigning it a URL actually own the site within which that URL resides, but doesn't mandate that it actually resolve to anything useful; however, it is suggested that it lead to a description of the puzzle format in question. The URIs referenced in the original spec all seem to redirect to the spec document itself, rather than any more specific part of it related to a particular puzzle type.

The types defined in the spec are:

Official spec

Sample data

Software

Other links

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox