Difference between revisions of "Semantic Wiki"

From BattleMaster Wiki
Jump to navigation Jump to search
Line 30: Line 30:
 
| [[Property:located on|located on]]
 
| [[Property:located on|located on]]
 
| game-world the subject can be found on
 
| game-world the subject can be found on
| page link
+
| page
 
| <nowiki>[[located on::Atamara]]</nowiki> tells us this realm, region, religion or whatever can be found on the island/continent Atamara
 
| <nowiki>[[located on::Atamara]]</nowiki> tells us this realm, region, religion or whatever can be found on the island/continent Atamara
 
|-
 
|-
Line 40: Line 40:
 
| [[Property:part of|part of]]
 
| [[Property:part of|part of]]
 
| general parent/child relations between items and places
 
| general parent/child relations between items and places
| page link
+
| page
 
| Mostly used to note on region pages which realm and duchy they belong to, for example: <nowiki>[[part of::Sirion]]</nowiki>. This should be used in all the region infobox templates.
 
| Mostly used to note on region pages which realm and duchy they belong to, for example: <nowiki>[[part of::Sirion]]</nowiki>. This should be used in all the region infobox templates.
 
|-
 
|-
 
| [[Property:member of|member of]]
 
| [[Property:member of|member of]]
 
| general parent/child relations of characters and persons
 
| general parent/child relations of characters and persons
| page link
+
| page
 
| Denotes which realms, but also which family a character belongs to, e.g. <nowiki>[[member of::Hawk Family]]</nowiki> or <nowiki>[[member of::Outer Tilog]]</nowiki>
 
| Denotes which realms, but also which family a character belongs to, e.g. <nowiki>[[member of::Hawk Family]]</nowiki> or <nowiki>[[member of::Outer Tilog]]</nowiki>
 
|-
 
|-
 
| [[Property:father of|father of]]<br />[[Property:son of|son of]]<br />[[Property:brother of|brother of]]<br />etc.
 
| [[Property:father of|father of]]<br />[[Property:son of|son of]]<br />[[Property:brother of|brother of]]<br />etc.
 
| general parent/child relations of characters and persons
 
| general parent/child relations of characters and persons
| page link
+
| page
 
| detail family relationships, expand as needed but use this syntax
 
| detail family relationships, expand as needed but use this syntax
 +
|-
 +
| [[Property:capital of|capital of]]
 +
| specific property to indicate that a region is capital of a realm
 +
| page
 +
| Use on the region page. The realm should use semantics to automatically find its capital, or should use the inverse ("has capital::")
 
|}
 
|}
 +
  
 
== General Notes on Types ==
 
== General Notes on Types ==
; page links : These are types where the property is a page itself, e.g. a realm or region (which have their own pages), etc.
+
; page : These are types where the property is a page itself, e.g. a realm or region (which have their own pages), etc.
 
; numbers : These types must contain a valid number, even if that is a guess or approximation. Terms like "ca. 1 mio" are invalid, use "1000000" instead, and if you want a different display, the pipe trick. Example: <nowiki>[[population::5200|ca. 5000]]</nowiki>
 
; numbers : These types must contain a valid number, even if that is a guess or approximation. Terms like "ca. 1 mio" are invalid, use "1000000" instead, and if you want a different display, the pipe trick. Example: <nowiki>[[population::5200|ca. 5000]]</nowiki>
 +
 +
 +
== Inverting Relations ==
 +
We use "... of" and "has ..." as general denotations. "has ..." is the inverse of "... of". So a region page would say "capital of", while a realm page would use "has capital" to link to its capital. However, you should use inverses very sparingly, because you can not usually guarantee that both relations are updated when they change, so when the capital moves, and the realm page is updated, but the region page of the old capital is not, a semantic search for "capital of" will come up with ''two'' capitals. Use semantic searches instead.
 +
  
  

Revision as of 14:19, 6 February 2009

The BattleMaster Wiki uses Semantic MediaWiki to turn itself into a full-blown Semantic Web.

What does that mean when we strip out the buzzwords?

It means that - with proper markup - the wiki "understands" its own content, and can generate answers to fairly complicated questions such as "which realms (on any island) have the highest population-to-nobles ratios?" - not because any human has actually done the math, but because the wiki contains information about the realms, their populations and the number of nobles in them, and can do the math itself.

Yes, we can use external data sources and with time the game will be extended to offer them. That means that Semantic Web also means you do not have to hand-craft (and update constantly) the boxes that contain basic realm data such as name, regions, population, etc.


Scope

We are not aiming for the big thing, or integration with a world-wide semantic web. BattleMaster is it's own small world, with more well-defined terms and boundaries than the real world (where, for example, it isn't always clear what exactly a "realm" even is). As such, it is well-suited to using the Semantic Web technology.


Supporting Templates

The subpage /Templates discusses templates you can use to make use of Semantic Web functions with minimal additional hassle.


Ontology

This is where we define what is and what isn't, i.e. the semantic relations that we want to use. This is necessary or useful because it avoids duplications that would really mess things up. For example, if we call the game worlds "islands" in some cases and "continents" in others, that will make a lot of queries faulty, as their results will only show those instances that were annotated one way or the other.

Below are the terms that are set and fixed. Please do not modify this list - put new suggestions on the talk page.

Property Meaning Type Example Uses / Notes
located on game-world the subject can be found on page [[located on::Atamara]] tells us this realm, region, religion or whatever can be found on the island/continent Atamara
population population count of the subject number
part of general parent/child relations between items and places page Mostly used to note on region pages which realm and duchy they belong to, for example: [[part of::Sirion]]. This should be used in all the region infobox templates.
member of general parent/child relations of characters and persons page Denotes which realms, but also which family a character belongs to, e.g. [[member of::Hawk Family]] or [[member of::Outer Tilog]]
father of
son of
brother of
etc.
general parent/child relations of characters and persons page detail family relationships, expand as needed but use this syntax
capital of specific property to indicate that a region is capital of a realm page Use on the region page. The realm should use semantics to automatically find its capital, or should use the inverse ("has capital::")


General Notes on Types

page 
These are types where the property is a page itself, e.g. a realm or region (which have their own pages), etc.
numbers 
These types must contain a valid number, even if that is a guess or approximation. Terms like "ca. 1 mio" are invalid, use "1000000" instead, and if you want a different display, the pipe trick. Example: [[population::5200|ca. 5000]]


Inverting Relations

We use "... of" and "has ..." as general denotations. "has ..." is the inverse of "... of". So a region page would say "capital of", while a realm page would use "has capital" to link to its capital. However, you should use inverses very sparingly, because you can not usually guarantee that both relations are updated when they change, so when the capital moves, and the realm page is updated, but the region page of the old capital is not, a semantic search for "capital of" will come up with two capitals. Use semantic searches instead.


Further terms will be added as we discuss and agree on them.


TODO / Questions

  • Do we want to add Halo ?
    • Interesting. The properties and categories editor looks helpful. It was hard to find, though, as their demo wiki is a spam linkfarm. For those interested in checking it out: take a look here. Also, the annotate tab on the pages lists all links/properties on a page.