Jump to content

Abstract Wikipedia/ZObject: Difference between revisions

From Meta, a Wikimedia project coordination wiki
Content deleted Content added
Marked this version for translation
No edit summary
 
(10 intermediate revisions by 5 users not shown)
Line 1: Line 1:
<languages />
<languages />
{{TNT|Abstract Wikipedia navbox}}
{{Abstract Wikipedia navbox}}
{{See also|Special:MyLanguage/Abstract Wikipedia/Function model| l1 = <translate><!--T:1--> Abstract Wikipedia/Function model</translate>}}
{{See also|Special:MyLanguage/Abstract Wikipedia/Function model| l1 = <translate><!--T:1--> Abstract Wikipedia/Function model</translate>}}
{{Draft}}


<translate><!--T:2--> ZObject is the basic data unit in Wikilambda.</translate>
<translate><!--T:2--> ZObject is the basic data unit in Wikifunctions.</translate>
<translate><!--T:3--> A ZObject may be a string, list of ZObjects, or a JSON object.</translate>
<translate><!--T:3--> A ZObject may be a string, list of ZObjects, or a JSON object.</translate>
<translate><!--T:4--> A persistent ZObject may only be a JSON object.</translate>
<translate><!--T:4--> A persistent ZObject may only be a JSON object.</translate>


<translate><!--T:5--> The keys of JSON object are “Z#K#”, where value are other ZObjects.</translate>
<translate><!--T:5--> The keys of JSON object are “Z#K#”, where # are positive integers, their associated values are other ZObjects.</translate>

<translate><!--T:61--> In the list below, each type of object or key is noted “''Key''/''Label''” for convenient reference in the documentation, where the ''Label'' may be translated and not necessarily in English.</translate>


* Z1/<translate><!--T:6--> ZObject</translate>
* Z1/<translate><!--T:6--> ZObject</translate>
Line 16: Line 17:
** Z2K2/<translate><!--T:12--> value</translate> (Z1/<translate><!--T:13--> ZObject</translate>)
** Z2K2/<translate><!--T:12--> value</translate> (Z1/<translate><!--T:13--> ZObject</translate>)
** Z2K3/<translate><!--T:14--> label</translate> (Z12/<translate><!--T:15--> Multilingual text</translate>)
** Z2K3/<translate><!--T:14--> label</translate> (Z12/<translate><!--T:15--> Multilingual text</translate>)
* Z3K1/<translate><!--T:16--> Key</translate>
* Z3/<translate><!--T:16--> Key</translate>
** Z3K1/<translate><!--T:17--> value type</translate> (Z4/<translate><!--T:18--> Type</translate>)
** Z3K1/<translate><!--T:17--> value type</translate> (Z4/<translate><!--T:18--> Type</translate>)
** Z3K2/<translate><!--T:19--> key id</translate> (Z6/<translate><!--T:20--> String</translate>)
** Z3K2/<translate><!--T:19--> key id</translate> (Z6/<translate><!--T:20--> String</translate>)
Line 43: Line 44:
** K2/<translate><!--T:60--> tail</translate>
** K2/<translate><!--T:60--> tail</translate>


[[Category:Abstract Wikipedia{{#translation:}}|ZObject]]
[[Category:Abstract Wikipedia/Notes{{#translation:}}|ZObject]]

Latest revision as of 13:29, 5 January 2026

ZObject is the basic data unit in Wikifunctions. A ZObject may be a string, list of ZObjects, or a JSON object. A persistent ZObject may only be a JSON object.

The keys of JSON object are “Z#K#”, where # are positive integers, their associated values are other ZObjects.

In the list below, each type of object or key is noted “Key/Label” for convenient reference in the documentation, where the Label may be translated and not necessarily in English.

  • Z1/ZObject
    • Z1K1/type (Z4/Type)
  • Z2/Persistent object
    • Z2K1/id (Z6/string)
    • Z2K2/value (Z1/ZObject)
    • Z2K3/label (Z12/Multilingual text)
  • Z3/Key
    • Z3K1/value type (Z4/Type)
    • Z3K2/key id (Z6/String)
    • Z3K3/label (Z12/Multilingual text)
  • Z4/Type
    • Z4K1/identity (Z4/Type)
    • Z4K2/keys (Z10/List (Z3/Key) )
    • Z4K3/validator (Z8/Function (...) )
  • Z5/Error
    • Z5K1/error type
  • Z6/String
    • Z6K1/string value (Z6/String)
  • Z7/Function call
    • Z7K1/function (Z8/Function)
    • Others based on Z8/Function
  • Z8/Function (generic)
    • K1/arguments (Z10/List (Z17/Argument declaration) )
    • K2/return type (Z4/Type)
    • K3/tests (Z10/List (Z20/Test) )
    • K4/implementation (Z14/Implementation)
    • K5/identity (Z8/Function)
  • Z9/Reference
    • Z9K1/reference ID (Z6/String)
  • Z10/List (generic)
    • K1/head
    • K2/tail