Data structures in COPTR
The COPTR data is structured in different types of semantic entities (or 'classes'). Each of the classes consists of:
- a Category that contains all pages for that class
- a Template that sets the semantic properties and displays the information on screen (e.g. in an infobox)
- a Form that is used to fill out the semantic properties
Hence, adding a new property to a class requires that you create the property and then adapt the class template (so that the property is set) and the form (so that the property value can be filled out). For more information about the form syntax, see the Page Forms documentation.
|Lifecycle Stage||Category:Stages||Template:Infobox stage||Form:Stage|
|Content Type||Category:Content Types||Template:Infobox content||Form:Content|
|File Format||Category:Formats||Template:Infobox format||Form:Format|
Adding Functions and Content Types
Before the rollout of Semantic MediaWiki] on the COPTR wiki, the relation between a tool and its function(s) and content type(s) was expressed by categorization of the tool in the Category:Function and Category:Content Type hierarchies (note that these (singular) categories are different from the (plural) class categories). External data consumers could use these category hierarchies to distill information that in the semantic data structure is more directly queryable. For reasons of backwards compatibility, however, this hierarchy is still maintained in parallel to the semantic structure. Hence for the Function and Content properties, the Template:Infobox tool performs two actions: it sets the semantic property value and adds the tool to the corresponding category in the Function and Content Type category hierarchies.
Any new Functions or Content Types should be incoporated in both the semantic structure and the category hierarchy. To register a new Function or Content Type in COPTR therefore the following steps should be followed:
- Create a new page via Form:Function or Form:Content.
- Fill out the requested details.
- Create a new category with the same name as the page you just created (so suppose you just created the function page Emulation, you should now create the page Category:Emulation).
- Copy the contents of the Form or Content Type page you created in the first step (i.e., the infobox code on the page Emulation), and copy it to the category page.
- Incorporate the category page in the right category hierarchy, by including the text [[Category:Function]] or [[Category:Content Type]] on the category page.