Difference between revisions of "Form:Concept"
From TDWG Terms Wiki
m (fix field has type SMW) |
m (Semicolon separated list for alternative labels also for translations) |
||
(144 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
− | <noinclude> | + | <noinclude>This is the "Concept" form. To create a page with this form, enter the page name below. If a page with that name already exists, this page will be opened in the form. |
− | This is the "Concept" form. | + | |
− | To create a page with this form, enter the page name below | + | |
− | + | ||
− | {{#forminput:form=Concept|button text=Create or edit a concept}} | + | {{#forminput:form=Concept|button text=Create or edit a concept|autocomplete on namespace=Property}} |
− | </noinclude><includeonly><!-- | + | [[Category: Forms]] |
− | + | [[Category:Helper tool for ontologies]] | |
− | + | </noinclude><includeonly><!-- | |
+ | NOTE: wikiPreview does not work in Opera and blocks also adding further multiple forms | ||
+ | <div id="wikiPreview" style="display: none; padding-bottom: 25px; margin-bottom: 25px; border-bottom: 1px solid #AAAAAA;"></div> | ||
+ | -->{{{for template|Concept|label=Definitions}}}<!-- Bug in SF? Blank line must follow here!!--> | ||
− | + | <table class="formtable"><!-- | |
− | + | --><tr><!-- | |
− | < | + | --><td>'''Label:'''</td><td>{{{field|label|mandatory|input type=text|size=89}}}</td><!-- |
− | + | --></tr><tr><!-- | |
− | < | + | --><td style="text-align:right">'''Alternative labels:'''<br />{{#info: Input data as semicolon separated list}}</td><td>{{{field|alternative labels| placeholder=alternative labels as semicolon separated list| list| delimiter= ,|input type=textarea|rows=2|autogrow}}} </td><!-- |
− | + | --></tr><tr><!-- | |
− | </td> | + | --><td>'''Definition:'''</td><td>{{{field|definition|mandatory|input type=textarea|autogrow}}}</td><!-- |
− | </tr><tr> | + | --></tr><tr><!-- |
− | < | + | --><td>'''Example:'''</td><td>{{{field|example|input type=textarea|autogrow}}}</td><!-- |
− | </tr><tr> | + | --></tr><tr><!-- |
− | < | + | --><td>'''Notes:'''</td><td>{{{field|notes|input type=textarea|autogrow}}}</td><!-- |
− | </tr><tr> | + | --></tr><tr><!-- |
− | < | + | --><td>'''Is defined by:'''</td><td>{{{field|is defined by|size=89|input type=text with autocomplete|values from namespace=property }}} {{#info: The authoritative definition of the concept. This property may indicate an RDF vocabulary, a PDF in which a resource is described. Name of local page or http-URL. It is not the URI.}}</td><!-- |
− | </tr><tr> | + | --></tr><tr><!-- |
− | < | + | --><td colspan="2">'''URI''' (<abbr title="namespace">NS</abbr>-URI definition pages) {{#info: message=Normally the preferred namespace URI is set on a concept scheme page. (TODO add link to Help page)}}<br/> <!-- |
− | </tr><tr> | + | just show URI |
− | < | + | --><div style="margin-left:1em;">{{Validate and render identifier URI | namespace prefix = {{#explode:{{PAGENAME}}|:|0}} | concept page={{PAGENAME}}| return value=URI and page}}</div><!-- |
− | </tr><tr> | + | --></td><!-- |
− | <td colspan="2">{{Hidden | + | --></tr><tr><!-- |
+ | --><td>'''Concept type:'''</td><td>{{#ifexist: Property:{{PAGENAME}}<!-- | ||
+ | THEN property exists-->|{{#ifexist: Category:{{PAGENAME}}<!-- | ||
+ | then property + class exists-->|<!-- | ||
+ | -->{{{field|concept type|mandatory|input type=dropdown|values=class,property,annotation property,value,data type,undecided|default=undecided}}}<!-- | ||
+ | -->{{#info: message=The semantic web distinguishes between different kinds of concepts (class, property, instance/value, etc.) You can create concepts and leave this decision open (select "undecided"). Another worker can then add the information at a later time.|icon=warning}}<!-- | ||
+ | -->Warning: Both a [{{fullurl: Category:{{PAGENAME}} }} class-] and [{{fullurl: Property:{{PAGENAME}} }} property page] exist. A concept should normally only be one of Property, Class, or Value. Please delete the erroneous class or property page.<!-- | ||
+ | |||
+ | else only property (no class)-->|<!-- | ||
+ | -->{{{field|concept type|mandatory|input type=dropdown|values=class,property,annotation property,value,data type,undecided|default=property|show on select=class=>id_is_class;annotation property=>id_is_annotation_property;property=>id_is_property}}}<!-- | ||
+ | -->{{#info: message=The semantic web distinguishes between different kinds of concepts (class, property, instance/value, etc.) You can create concepts and leave this decision open (select "undecided"). Another worker can then add the information at a later time.}}<!-- | ||
+ | --> <span id="id_is_class" style="display:none;">{{#formlink: form=Concept scheme class | ||
+ | |target=Class:{{PAGENAME}} | ||
+ | |link type=link | ||
+ | |link text=Create “Class:{{PAGENAME}}” | ||
+ | |query string=<!-- | ||
+ | Testing Imported from drictly with {{#ask: [[Imported from::wrong-name-space]]}} produces a <span>SMW-error, not a void return as expected | ||
+ | generate query link e.g. "Concept scheme class[imported from]=rdfs:Class&" | ||
+ | -->{{#ask: [[MediaWiki:Smw import {{#explode: {{PAGENAME}}|:|0}}]]|format=list|mainlabel=-|link=none|limit=1|intro=Concept scheme class[imported from]={{PAGENAME}}&|default=}}<!-- | ||
+ | -->}}<!-- end formlink | ||
+ | -->. Warning: You have selected “Class”, but a property page ([{{fullurl: Property:{{PAGENAME}} }} Property:{{PAGENAME}}]) already exists. “Concept type=property” might be correct. Either of both only makes sense to exist, but not both Class ''and'' Property (you might wanna delete one of them).</span><!-- | ||
+ | --><span id="id_is_property" style="display:none;"> see [{{fullurl:Property:{{PAGENAME}} }} Property:{{PAGENAME}}]</span><!-- | ||
+ | --><span id="id_is_annotation_property" style="display:none;"> see [{{fullurl:Property:{{PAGENAME}} }} Property:{{PAGENAME}}]</span><!-- | ||
+ | -->}}<!-- | ||
+ | ELSE no property | ||
+ | -->|{{#ifexist: Category:{{PAGENAME}}<!-- | ||
+ | then only class exists-->|{{{field|concept type|mandatory|input type=dropdown|values=class,property,annotation property,value,data type,undecided|default=class|show on select=class=>id_is_class;annotation property=>id_is_annotation_property;property=>id_is_property}}}<!-- | ||
+ | -->{{#info: message=The semantic web distinguishes between different kinds of concepts (class, property, instance/value, etc.) You can create concepts and leave this decision open (select "undecided"). Another worker can then add the information at a later time.}}<!-- | ||
+ | --><span id="id_is_class" style="display:none;"> see [{{fullurl: Category:{{PAGENAME}} }} Category:{{PAGENAME}}]</span><!-- | ||
+ | --><span id="id_is_property" style="display:none;"><!-- | ||
+ | -->{{#formlink: form=Property setting | ||
+ | |target=Property:{{PAGENAME}} | ||
+ | |link type=link | ||
+ | |link text=Create “Property:{{PAGENAME}}” | ||
+ | |query string=Property setting[has type]=String{{ | ||
+ | #if: {{#pos: {{PAGENAME}}|:}}<!-- prefix:name in page name | ||
+ | THEN-->|&Property setting[imported from]={{#explode: {{PAGENAME}} |:|0 }}<!-- | ||
+ | ELSE-->|<!-- additional no query string | ||
+ | -->}} }}<!-- end if, end formlink | ||
+ | --></span><!-- | ||
+ | --><span id="id_is_annotation_property" style="display:none;"><!-- | ||
+ | -->{{#formlink: form=Property setting | ||
+ | |target=Property:{{PAGENAME}} | ||
+ | |link type=link | ||
+ | |link text=Create “Property:{{PAGENAME}}” | ||
+ | |query string=Property setting[has type]=String{{ | ||
+ | #if: {{#pos: {{PAGENAME}}|:}}<!-- prefix:name in page name | ||
+ | THEN-->|&Property setting[imported from]={{#explode: {{PAGENAME}} |:|0 }}<!-- | ||
+ | ELSE-->|<!-- additional no query string | ||
+ | -->}} }}<!-- end if, end formlink | ||
+ | --></span><!-- | ||
+ | |||
+ | else neither class nor property found -->|{{{field|concept type|mandatory|input type=dropdown|values=class,property,annotation property,value,data type,undecided|default=undecided|show on select=class=>id_is_class;annotation property=>id_is_annotation_property;property=>id_is_property}}}<!-- | ||
+ | -->{{#info: message=The semantic web distinguishes between different kinds of concepts (class, property, instance/value, etc.) You can create concepts and leave this decision open (select "undecided"). Another worker can then add the information at a later time.}}<!-- | ||
+ | --> <span id="id_is_class" style="display:none;">{{#formlink: form=Concept scheme class | ||
+ | |target=Class:{{PAGENAME}} | ||
+ | |link type=link | ||
+ | |link text=Create “Class:{{PAGENAME}}” | ||
+ | |query string=<!-- | ||
+ | Testing Imported from drictly with {{#ask: [[Imported from::wrong-name-space]]}} produces a <span>SMW-error, not a void return as expected | ||
+ | generate query link e.g. "Concept scheme class[imported from]=rdfs:Class&" | ||
+ | -->{{#ask: [[MediaWiki:Smw import {{#explode: {{PAGENAME}}|:|0}}]]|format=list|mainlabel=-|link=none|limit=1|intro=Concept scheme class[imported from]={{PAGENAME}}&|default=}}<!-- | ||
+ | -->}}</span><!-- | ||
+ | --><span id="id_is_property" style="display:none;">{{#formlink: form=Property setting | ||
+ | |target=Property:{{PAGENAME}} | ||
+ | |link type=link | ||
+ | |link text=Create “Property:{{PAGENAME}}” | ||
+ | |query string=Property setting[has type]=String&Property setting[imported from]={{ | ||
+ | #if: {{#pos: {{PAGENAME}}|:}}<!-- prefix:name, assume prefix refers to import page | ||
+ | then-->|{{PAGENAME}}<!-- | ||
+ | else-->|check SMW import<!-- Page has no prefix:name | ||
+ | -->}} }}<!-- end if, end formlink | ||
+ | --></span><!-- | ||
+ | --><span id="id_is_annotation_property" style="display:none;">{{#formlink: form=Property setting | ||
+ | |target=Property:{{PAGENAME}} | ||
+ | |link type=link | ||
+ | |link text=Create “Property:{{PAGENAME}}” | ||
+ | |query string=Property setting[has type]=String&Property setting[imported from]=<!-- | ||
+ | -->{{#if: {{#pos: {{PAGENAME}}|:}}<!-- prefix:name, assume prefix refers to import page | ||
+ | -->|{{PAGENAME}}<!-- | ||
+ | ELSE Page has no prefix:name | ||
+ | -->|check SMW import<!-- | ||
+ | -->}} }}<!-- end if, end formlink | ||
+ | --></span><!-- | ||
+ | -->}}<!-- | ||
+ | -->}}<!-- end ifexist class/property-pages | ||
+ | --></td><!-- | ||
+ | --></tr><tr><!-- | ||
+ | --><td colspan="2"><!-- | ||
+ | -->{{Hidden | ||
| contentstyle = border-left:1px solid #ccc;border-bottom:1px solid #ccc;padding:5px; | | contentstyle = border-left:1px solid #ccc;border-bottom:1px solid #ccc;padding:5px; | ||
− | | header = '''Details: Issued, Modified, Replaced by, …''' | + | | toggle position = left |
− | | content = <table><tr> | + | | header = '''Details: Issued, Modified, Replaced by, Hidden Notes …''' |
− | <td> Issued:</td><td> {{{field|issued| | + | | content = <!-- |
− | </tr><tr> | + | --><table><tr><!-- |
− | <td> Modified:</td><td> {{{field|modified| | + | --><td>Issued:</td><td>{{{field|issued|input type=date}}}</td><!-- |
− | </tr><tr> | + | --></tr><tr><!-- |
− | <td> Status:</td><td> {{{field|status|input type= dropdown| values= archaic, deprecated, recommended, required, stable, testing, unstable}}} {{#info: The status of a vocabulary term, expressed as a short symbolic string; known values include e.g. 'deprecated' or 'stable'}}</td> | + | --><td>Modified:</td><td>{{{field|modified|input type=date}}}</td><!-- |
− | </tr><tr> | + | --></tr><tr><!-- |
− | <td> Replaced by:</td><td> {{{field|replaced by|values from category=vocabulary}}} {{#info: A | + | --><td>Status:</td><td>{{{field|status|input type= dropdown| values= archaic, deprecated, in review, recommended, required, stable, testing, unstable}}} {{#info: The status of a vocabulary term, expressed as a short symbolic string; known values include e.g. 'deprecated' or 'stable'}}</td><!-- |
− | </tr><tr> | + | --></tr><tr><!-- |
− | <td> Replaces:</td><td> {{{field|replaces}}} {{#info: A | + | --><td>Replaced by:</td><td>{{{field|replaced by|values from category=vocabulary}}} {{#info: A concept that supplants, displaces, or supersedes the present concept.}}</td><!-- |
− | </tr><tr> | + | --></tr><tr><!-- |
− | <td> | + | --><td>Replaces:</td><td>{{{field|replaces}}} {{#info: A concept that is supplanted, displaced, or superseded by the present concept.}}</td><!-- |
− | </tr> | + | --></tr><tr><!-- |
− | + | --><td>Hidden notes:</td><td>{{{field|hidden notes|input type=textarea|autogrow}}}</td><!-- | |
− | + | --></tr></table><!-- | |
− | </tr> | + | -->}}<!-- |
− | </table> | + | --></td><!-- |
+ | --></tr></table> | ||
{{{end template}}} | {{{end template}}} | ||
− | {{{for template|Concept relation|multiple|label= | + | <table class="formtable"><!-- |
− | {| | + | --><tr><!-- |
− | + | --><td><div class="minimized-margin-padding"> | |
− | + | {{{for template|Concept scheme relation|multiple|label=Scheme membership}}} | |
− | <div class="floating-form-parts"> | + | <table><!-- |
− | <div class="floating-form-parts"> | + | --><tr><!-- |
− | + | --><th style="border-bottom:1px dotted black;">Scheme:</th><!-- | |
+ | --><td style="border-bottom:1px dotted black;">{{{field|scheme | input type=text with autocomplete | mandatory | values from category=Concept scheme }}} <!-- #info does not work at the moment --><span title="Page name of the concept scheme.">{{#info: message=Page name of the concept scheme.}}</span></td><!-- | ||
+ | --></tr><!-- | ||
+ | --><tr><!-- | ||
+ | --><th>Property<br/>Constraints:</th><!-- | ||
+ | --><td><div class="floating-form-parts">Cardinality: {{{field|property cardinality |input type=dropdown | values=0..1, 0..n, 1..1, 1..n}}} <!-- #info does not work at the moment --><span title="Explanation: | ||
+ | 0..1 (optional single occurrence) | ||
+ | 0..n (optional multiple occurrence) | ||
+ | 1..1 (mandatory single occurrence) | ||
+ | 1..n (mandatory multiple occurrence)">{{#info: message=Explanation:<br/> 0..1 (optional single occurrence)<br/> 0..n (optional multiple occurrence)<br/> 1..1 (mandatory single occurrence)<br/> 1..n (mandatory multiple occurrence)}}</span></div> | ||
+ | <div class="floating-form-parts">Domain: {{{field|property domain | input type=text}}} <!-- #info does not work at the moment --><span title="The domain is the class/type of the resource the relation starts from, to which a property may be applied.">{{#info: message=The domain is the class/type of the resource the relation starts from, to which a property may be applied.}}</span> </div> | ||
+ | <div class="floating-form-parts">Range: {{{field|property range | input type=text}}} <!-- #info does not work at the moment --><span title="The range is the type/data type/class of the subject resource the relatation ends to (the right side in the triple).">{{#info: message=The range is the type/data type/class of the subject resource the relatation ends to (the right side in the triple).}}</span></div> | ||
+ | {{clear}}</td><!-- | ||
+ | --></tr></table> | ||
{{{end template}}} | {{{end template}}} | ||
+ | </div> | ||
− | {{{for template|Concept | + | <div class="minimized-margin-padding"> |
− | + | {{{for template|Concept relation|multiple|label=Relations of this concept|add button text=Add another relation}}}<!-- | |
− | + | Note: for field relation "values from concept" is possible but a concept returns just page names that can be used further and a display "Property:…" is not the correct display text | |
− | + | --> | |
− | + | <div class="floating-form-parts">'''Relation:''' {{{field|relation | input type= dropdown | values=skos: collection, dcterms: has part, dcterms: is part of, rdfs: see also, rdfs: subproperty of, rdfs: subclass of, skos: has broader match, skos: has close match, skos: has exact match, skos: has narrower match, skos: has related match, skos: is in mapping relation with, owl: disjoint with, owl: inverse of, owl: equivalent class, owl: equivalent property, biorel: adjacent to, biorel: aligned with, biorel: connected to, biorel: derived by descent from, biorel: derives from, biorel: develops from, biorel: develops from part of, biorel: develops in, biorel: develops into, biorel: has habitat, biorel: has part, biorel: has participant, biorel: has site of, biorel: is bearer of, biorel: is preceded by, biorel: occurs in, biorel: overlaps, biorel: part of, biorel: participates in, biorel: precedes, biorel: produced by, biorel: produces, biorel: spatially disjoint from, biorel: surrounds, biorel: variant of}}} set either </div> | |
− | + | <div class="floating-form-parts">'''Internal page:''' {{{field|internal page | input type=text with autocomplete|values from namespace=main}}}</div> | |
− | + | <div class="floating-form-parts">or '''External {{Abbr|URI}}:''' {{{field|uri }}}</div> | |
− | + | {{clear}} | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
{{{end template}}} | {{{end template}}} | ||
+ | </div> | ||
+ | |||
+ | {{{for template|Concept translation|multiple|label=Translations|add button text=Add another translation}}} | ||
+ | <table class="formtable"><!-- | ||
+ | --><tr><!-- | ||
+ | --><td>'''Language:'''</td><td>{{{field|language|mandatory|placeholder=ISO 639 code|size=4|input type=text}}} (transl. released: {{{field|is released|input type=dropdown| values=yes, no}}})</td><!-- | ||
+ | --></tr><tr><!-- | ||
+ | --><td>'''Label:'''</td><td>{{{field|label|mandatory}}}</td><!-- | ||
+ | --></tr><tr><!-- | ||
+ | --><td>'''Alternative<br/>labels:'''</td><td>{{{field|alternative labels| list| delimiter=,|input type=textarea|autogrow|rows=1}}} <!-- #info does not work at the moment --><span title="Semicolon separated list for alternative labels">{{#info: Alternative labels as semicolon separated list}}</span></td><!-- | ||
+ | --></tr><tr><!-- | ||
+ | --><td>'''Definition:'''</td><td>{{{field|definition|mandatory|input type=textarea|autogrow}}}</td><!-- | ||
+ | --></tr><tr><!-- | ||
+ | --><td>'''Example:'''</td><td>{{{field|example|input type=textarea|autogrow}}}</td><!-- | ||
+ | --></tr><tr><!-- | ||
+ | --><td>'''Notes:'''</td><td>{{{field|notes|input type=textarea|autogrow}}}</td><!-- | ||
+ | --></tr><tr><!-- | ||
+ | --><td colspan="2"><!-- | ||
+ | -->{{Hidden | ||
+ | | contentstyle = border-left:1px solid #ccc;border-bottom:1px solid #ccc;padding:5px; | ||
+ | | toggle position = left | ||
+ | | header = '''Details for external references: Issued, Modified, Uri, Status …''' | ||
+ | | content = <!-- | ||
+ | --><table><!-- | ||
+ | --><tr><!-- | ||
+ | --><td>External URI:</td><td>{{{field|uri|size=89}}}</td><!-- | ||
+ | --></tr><tr><!-- | ||
+ | --><td>Issued:</td><td>{{{field|issued|input type=date}}}</td><!-- | ||
+ | --></tr><tr><!-- | ||
+ | --><td>Modified:</td><td>{{{field|modified|input type=date}}}</td><!-- | ||
+ | --></tr><tr><!-- | ||
+ | --><td>Status:</td><td>{{{field|status|input type= dropdown| values= archaic, deprecated, in review, recommended, required, stable, testing, unstable}}} {{#info: The status of a vocabulary term, expressed as a short symbolic string; known values include e.g. 'deprecated' or 'stable'}}</td><!-- | ||
+ | --></tr><!-- | ||
+ | --></table><!-- | ||
+ | -->}}<!-- | ||
+ | --></td><!-- | ||
+ | --></tr></table> | ||
+ | {{{end template}}}<!-- | ||
+ | --></td><!-- | ||
+ | --></tr></table> | ||
'''Free text below the templates:''' | '''Free text below the templates:''' |
Latest revision as of 14:18, 24 January 2017
This is the "Concept" form. To create a page with this form, enter the page name below. If a page with that name already exists, this page will be opened in the form.