Mapping Rules

From OPENRESEARCH mk copy Wiki
Jump to navigation Jump to search

Introduction

Certain aspects of the software can be systematically implemented. If it is worth wile to work systematically then some rules should be applied. Otherwise ad-hoc decisions are possible which shall be documented in place. e.g the Source Code


Rules

Each rule boils down to the decision taken for the systematic working of things.

  • For each entity type there is a form with the same name. e.g Entity Event has Form:Event.
  • Each Entity needs to have 7 technical SMW pages:
    • List of
    • Help
    • Concept
    • Category
    • Template
    • Form
    • Properties(1 page per property)

List of

Concept

Help

Rules

A help page consist of the following sections:

  1. A header showing Icon, Link to the Entity description Topic), name of the entity, plural name of the entity and the plain text documentation
  2. A documentation section showing the wiki documentation of the entity description(Topic)
  3. A section with up to 7 links for example instances for the entity
  4. A section showing a table of all properties for the entity. More explicit description of properties and support of multiple languages.
  5. Optional: A section showing a uml diagram with the description of the entity, its attributes and links to other entities (but no details for those)
    1. Class diagram of the entity containig all primitive properties
    2. Properties with type Page are shown as edges
      1. outgoing edges for properties that link from this entity to another one
      2. incoming edges for properties that link another entity to this entity
      3. edges should show the cardinality (can be derived from Property:inputType)
      4. edges should have the property name as label
    3. Other entities should not include there properties
  6. A list of links to the other technical SMW elements relevant for the entity

Links

Help-Example.png

Category

  • Category should list down all the pages in the entity involved. Each page marked with a Category tag of the entity will be available to view at the Category:Entity page.
  • Example for help

Template

Display the properties of the Entity in a structured way. May apply rules on when to show certain content based on the properties of the entity. If the form is strict the Template limits the set of properties that are stored on creation with the from.

Rules

  • noinclude part
    • Example usage of the template
  • Includeonly part
    • Displaying of the information based on the properties of the entity

See https://or.bitplan.com/index.php/Template:City

Screenshot 2021-03-22 Template City - or.png

Form

Rules

  • noinclude part
    • Description
    • Inputfield to create/edit new entity
    • Link to the help page of the entity
  • includeonly part
    • Input field for all properties of the entity

Properties

Validation

  • validation approaches:
    • Manual check by comparing pages created with the rules and marking the rules with
    • Dynamic at runtime e.g using redlinks in the form showing that a property does not exist
    • Test pages and testcode with query which will check if there are some properties that are not used in a form.