lib/schema/moboSettings.schema.yaml
---
"$schema": http://json-schema.org/draft-04/schema#
description: mobo model JSON Schema
properties:
mw_server_url:
type:
- string
- boolean
description: |
URL to your MediaWiki server without trailing slash.
Do not include the port or relative path to MediaWiki!
mw_server_path:
type:
- string
- boolean
description: |
Relative path to the MediaWiki installation without trailing slash
mw_server_port:
type:
- number
- boolean
description: |
The port your MW installation is using.
mw_username:
type: string
description: The username of your mobo bot account
mw_password:
type: string
description: The password of your mobo bot account
debug:
type: boolean
description: Turns the debug mode on. This deactivated graceful error handling.
verbose:
type: boolean
description: More verbose console output. This will also tighten the model validation
and display minor notices
allowAdditionalProperties:
type: boolean
description: |
If false, mobo will warn when the development model contains unsupported/unknown properties.
This is very helpful to spot typos and other accidents when modeling
logDate:
type: boolean
description: Prepend the time (and eventually date) on each logging message
logLongDate:
type: boolean
description: If true and logDate is enabled, the full date will be logged in addition
to the time
logObjectsAsYaml:
type: boolean
description: 'Logging / CLI output: Prints JavaScript Object as colorized YAML'
arrayMergeOptions:
type: object
description: Default settings (using @annotations) for array merges
properties:
"$remove":
type: array
items:
type: string
enum:
type: array
items:
type: string
form:
type: array
items:
type: string
recommended:
type: array
items:
type: string
required:
type: array
items:
type: string
itemsOrder:
type: array
items:
type: string
smw_categories:
type: array
items:
type: string
displayTodos:
type: boolean
description: Displays the content of todo properties from your JSON files
writeLogFile:
type: boolean
description: If this is enabled, mobo will create logfiles in /_processed/logfiles/*
uploadReport:
type: boolean
description: If this is enabled, mobo will upload a report at User at /User:<bot
username>
uploadOutline:
type: boolean
description: If this is enabled, mobo will upload an outline of the model at /User:<bot
username>/outline
uploadOutlineCountRefs:
type: boolean
description: Adds an counter how often a template / property was internally referenced
uploadLogFile:
type: boolean
description: If this is enabled, mobo will upload the logfile in addition to the
report
overwriteImportedPages:
type: boolean
description: If this is enabled, mobo in --import mode will overwrite already
existing wiki pages
watchFilesystem:
type: boolean
description: Watches the (development) project files for changed and automatically
triggers re-generation.
serveWebApp:
type: boolean
description: Serves the webGUI / app at localhost.
webAppPort:
type: number
description: Port the WebApp is served on the localhost
autoRefreshWebGui:
type: boolean
description: WebGui is automatically refreshed if the server makes changes to
the model
autoRefreshPort:
type: number
description: WebSocket port the server and the WebGui are using to notify the
change. Change this if the port is already used.
statistics:
type: boolean
description: Displays simple statistics about the project model. Statistics will
also be written / appended to `/_processed/_statistics.csv`
gitStatistics:
type: boolean
description: Adds some git related statistics. Will only work if git is installed
and the project is a git repository.
buildGraph:
type: boolean
description: Builds graph files (.gexf) from the model.
writeExportFiles:
type: boolean
description: If true mobo will write every generated file as a single file into
the filesystem. This can be slow due to a lot of HDD I/O
compatibilityLayer:
type: boolean
description: Set to false, if you want to skip the compatibility layer that migrates
deprecated models to the latest standard.
force:
type: boolean
description: Forces mobo to continue despite possible errors
uploadWikiPages:
type: boolean
description: Uploads the generated WikiPages to an external Wiki
deleteWikiPages:
type: boolean
description: Deletes removed WikiPages from the external Wiki (use with care,
this destroys the polymorphism!)
forceUpload:
type: boolean
description: "Forces the upload of all generated WikiPages, even if no changes
were detected. \nThis can sometimes be useful, if some changes were lost or
you want to go for sure."
uploadConcurrency:
type: number
minimum: 1
description: Concurrent upload processes
headerTabs:
type: boolean
description: If true, the HeaderTabs Extension will be used with the generated
forms. Keep in mind that you still have to create the headings to make this
work!
formEditHelper:
type: boolean
description: If enabled this creates **FormEdit Helper Categories** that tag the
WikiPages that were generated through a form as editable by that form.
hideFormEditHelper:
type: boolean
description: If true this will hide the introduced Helper Categories from the
display
smw_semanticDrilldown:
type: boolean
description: 'Automatically generates SemanticDrilldown #drilldowninfo functions.'
firstAlternativeFormAsDefault:
type: boolean
description: If more than one form is defined through an oneOf array, this setting
will set the first form as the default if true. If set to false, no form will
be used as default and the user has to choose first.
arraymapSeparator:
type: string
description: Separator to seperate between multiple items
useSimpleTooltipDescriptions:
type: boolean
description: 'If enabled, descriptions will be included as SimpleTooltip tooltips.
WARNING: You need to install the SimpleTooltip extension to make this work.'
defaultTemplateDisplay:
type: string
description: Default Template Display renderer. See mobo_template/template.wikitext
to see or change how they are rendered.
generatedByMobo:
type: boolean
description: If enabled, mobo appends a warning and a category to each wiki page
generated.
generatedByMoboText:
type: string
description: Wikitext that will be prefixed to each mobo generated page
generateTemplateData:
type: boolean
description: Whether to generate a TemplateData (a VisualEditor extension) to
describe templates
sf_responsiveForms:
type: boolean
description: "If enabled, mobo renders the SemanticForms as a div layout instead
of the standard table layout. \nThis enables more control over the layout, including
some responsiveness (Bootstrap grid layout). \nWARNING: You need to style/layout
the divs by yourself, or use the Chameleon skin. \nSemanticForms itself does
not support / supply this for a div based layout."
sf_wpPreview:
type: boolean
description: 'Semantic Forms Edit-View: Render the Preview Button'
sf_wpDiff:
type: boolean
description: 'Semantic Forms Edit-View: Render the Diff Button'
sf_wpWatchthis:
type: boolean
description: 'Semantic Forms Edit-View: Render the Watch this checkbox option'
cwd:
type: string
description: 'AUTO GENERATED, can be overwritten: Working (root) directory of
the project where the settings.json is located'
importModelDir:
type: string
description: AUTO GENERATED, can be overwritten.
templateDir:
type: string
description: AUTO GENERATED, can be overwritten.
logDir:
type: string
description: AUTO GENERATED, can be overwritten.
processedModelDir:
type: string
description: AUTO GENERATED, can be overwritten.
buildGraphSettings:
type: object
description: Sets the size and weight of nodes and edges
properties:
dataTypeNodeSize:
type: number
minimum: 0
templateNodeSize:
type: number
minimum: 0
modelNodeSize:
type: number
minimum: 0
formNodeSize:
type: number
minimum: 0
edgeWeight:
type: number
minimum: 0
multipleEdgeWeight:
type: number
minimum: 0
additionalProperties: false