Abstract Wikipedia/ZObject
| Abstract Wikipedia |
|---|
| (Discussion) |
| General |
| Development plan |
|
| Notes, drafts, discussions |
|
| Examples & mockups |
| Data tools |
| Historical |
See also: Abstract Wikipedia/Function model
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