Extension:SMW Ontologies

SMW Ontologies includes


 * (a-1) an "SMW Ontology" with concept/property definitions central to MediaWiki & SemanticMediaWiki
 * (a-2) definitions of commonly known ontologies from the ISO; W3C; United Nations; and others
 * (a-3) definitions of a comprehensive 'grammatical' ontology quite intuitive for general semantic relations markup


 * (b-1) syntax options for multilingual annotations and multilingual queries, involving new defined datatypes (I18N and IRI)
 * (b-2) syntax options for "query variables" and for "filtered inverse relations"


 * (c-1) Visual Editor input widgets and parser functions that convert Turtle-style expressions to semantic triples
 * (c-2) Visual Editor output templates and parser functions which display property values either retrieved or derived by calculation

Type definitions

 * .... property:.name smw:hasType Type:I18n
 * .... property:.iri smw:hasType Type:IRI

# smw:easyrdf
#smw:easyrdf is an implementation of the EasyRdf library for reading W3C Turtle notations from which SMW triples are created.
 * Various enhancements and restrictions have been implemented, however. See below.

#smw:easyrdf creates a topic map structure of subobjects, each a self-contained "node graph" referenced by a page's "has:this" property.
 * The subobject to which this property references is named "#Topic map: mapname".

Parser restrictions & enhancements

 * Namespace identifiers: Mappings beyond those loaded to the wiki (using this extension) are not recognized.
 * Statement subjects:  is the only primary subject allowed.
 * Any other subject, and all bnodes, are converted to subobjects of a page.


 * Statement predicates: All predicates must be namespace-qualified.
 * Statement objects
 * IRI objects: Wiki URI syntax is allowed, eg [ some-iri label ] otherwise are not required to be enclosed in <...>.
 * Page objects: Wiki link syntax is allowed for relation values, eg label
 * Literal objects: @xx text content signifiers are appended as follows
 * - to a uri's label, eg [ some-iri label@en label@af ...]
 * - to a link's label, eg label@en label@af ...  ;
 * - to a quoted literal, eg "...@xx" ;
 * - to a collection of literals, eg ("val1" "val2")@en ;
 * - to each literal in a collection, eg ("val1@en val2@fr")