Features-test: Difference between revisions

From OLPC
Jump to navigation Jump to search
(→‎Other sample queries: fix query now that Property:Short name is removed)
 
(21 intermediate revisions by the same user not shown)
Line 10: Line 10:
Features are in subcategories of [[:Category:Software features]], but querying on this matches many pages that aren't software features, because some feature subcategories such as [[:Category:Network]] and [[:Category:Network]] are already in use.
Features are in subcategories of [[:Category:Software features]], but querying on this matches many pages that aren't software features, because some feature subcategories such as [[:Category:Network]] and [[:Category:Network]] are already in use.


{{tl|Feature tracking}} sets some other properties like [[Property:Short name]], [[Property:Is part of]], etc., so the trick is to pick one that is specified (not blank or default) in all software features. Probably [[Property:Short name]] is safest.
{{tl|Feature tracking}} sets some other properties like [[Property:Is part of]], so the trick is to pick one that is specified (not blank or default) in all software features. Probably [[Property:Is part of]] is safest.


That gives us '''{{#ask:
That gives us '''{{#ask:
[[Category:Software features]] [[Short name::+]]
[[Category:Software features]] [[Is part of::+]]
|format=count
|format=count
}}''' software features (a few may be tests).
}}''' software features (a few may be tests).
Line 27: Line 27:


== Creating a new feature ==
== Creating a new feature ==
# Make sure the page name doesn't exist
# Make sure the feature doesn't already exist
# Pick an area (or "Feature subcategory") from the list below, don't create a new one
# Find the requester(s)' wiki pages and the feature owner's User: wiki page
# Read the Usage section of [[Template:Feature tracking]] for help filling out the template on the new page
# Read the Usage section of [[Template:Feature tracking]] for help filling out the template on the new page
# Pick an "Feature subcategory" from [[:Category:Software features]]
# Find the requester(s)' wiki pages and the feature owner's User: wiki page
# Follow the [[OLPC:Style guide]] for page names, change ''Good feature name'' to your new subpage title.
# Follow the [[OLPC:Style guide]] for page names, change ''Good feature name'' to your new subpage title.
# Ready? Click the button below to create a new meeting wikipage with the right title convention that's prefilled from [[Template:New feature]]
# Ready? Click the button below to create a new meeting wikipage with the right title convention that's prefilled from [[Template:Feature tracking/Preload]], edit it to suit, then save. After a delay (due to wiki query and page caching), your new subpage will appear in lists of features.
<inputbox>
<inputbox>
type=create
type=create
preload=Template:New feature
preload=Template:Feature tracking/Preload
buttonlabel=Create a new Feature roadmap subpage.
buttonlabel=Create a new Feature roadmap subpage.
default=Feature roadmap/Good feature name
default=Feature roadmap/Good feature name
Line 42: Line 42:
</inputbox>
</inputbox>


== Greg list in order ==
== Default query ("Greg list") ==
The template's "Feature subcategory" parameter both sets a category and [[Property:Is part of]]. We can sort by the latter to present features by category.
The template's "Feature subcategory" parameter both sets a category and [[Property:Is part of]]. We can sort by the latter to present features by category.


''This will replace section 2 of [[Feature roadmap]]''
Click on the arrows in any heading to sort by that heading.
Click on the arrows in any heading to sort by that heading.
{{#ask:
{{#ask:
[[Category:Software features]] [[Short name::+]]
[[Category:Software features]] [[Is part of::+]]
|?Is part of=Area
|?Is part of=Area
|?
|?=Feature page
|?Requested by=Requested by
|?Requested by=Requested by
|?Helps deployability
|?Helps deployability#y,n
|?Target for 9.1
|?Target for 9.1#yes,no
|?Owner=Owner(s)
|?Contact person=Owner(s)
|?Priority
|?Priority
|sort=Is part of
|sort=Is part of
|mainlabel=-
|mainlabel=-
|limit=200
|limit=200
|default=Nothing found in [[:Category:Software features]] with [[Property:Short name]]?!
|default=Nothing found in [[:Category:Software features]] with [[Property:Is part of]]?!
}}
}}


Before you ask, you can't ask for "grouping" of results to avoid area repeated over and over; instead you would repeat the query each time querying for a different areas or subcategory.
Before you ask, you can't ask for "grouping" of results to avoid area repeated over and over; instead you would repeat the query each time querying for a different areas or subcategory.


== Sort by area, then priority, then name ==
== December Features list ==

This queries for anything in [[:Category:Software features]], it shows category to try to show feature.
Sorting on a property implicitly selects pages with a value for it, so this ''won't display'' a lot of subpages until every page has a priority.
Click on the arrows in any heading to sort by that heading.
{{#ask:
{{#ask:
[[Category:Software features]] [[Short name::+]]
[[Category:Software features]] [[Short name::+]]
|?Is part of=Area
|?Category=in the following categories
|?Primary requester
|?=Feature page
|?Requested by
|?Requested by
|?Helps deployability
|?Target for 9.1
|?Contact person=Owner(s)
|?Priority
|sort=Is part of,Priority, Short name
|order=ascending,descending, ascending
|mainlabel=-
|limit=200
|default=Nothing found in [[:Category:Software features]] with [[Property:Short name]]?!
|default=Nothing found in [[:Category:Software features]] with [[Property:Short name]]?!
}}
}}


== Features for 9.1.0 ==
''But'', as you see below you can't sort on category display!
Just query for [[Property:Target for 9.1]] set to yes.
Maybe have to have [[Property:Feature subcategory]], like [[Property:Test subcategory]], or use [[Property:Is part of|Is part of]]::[[Power management]], Is_part_of::Journal , etc.
'''BUT''':
Because this property has a dot (period, "full stop") in its name, it looks like the trick SMW feature "property chaining". As the [http://semantic-mediawiki.org/wiki/Help:Selecting_pages#Subqueries_and_property_chains help]
says
: "In the rare case that a property should contain a dot in its name, one may start the query with a space to prevent SMW from interpreting this dot in a special way."

=== Summary table ===
This query sorts by area, then priority, then Short name,
so it only finds pages that have values for those properties.

{{#ask:
{{#ask:
[[Category:Software features]] [[ Target for 9.1::true]]<!-- the space in front of "Target" is needed, otherwise the 'dot' in it means something to the query engine -->
[[Category:Software features]]
|?Category
|?Is part of=Area
|?Primary requester
|?=Feature page
|?Requested by
|?Requested by
|?Helps deployability#yes,no
|sort=Category
|?Contact person=Owner(s)
|default=Nothing found in [[:Category:Software features]] with [[Property:Short name]] when we try to sort by Category.
|?Priority |sort=Is part of,Priority, Short name
|mainlabel=-
|limit=200
|default=Nothing found in [[:Category:Software features]] with [[Property:Target for 9.1]]=true?!
}}
}}


== October Features list ==
=== Embedded ===

This queries for anything in [[:Category:Software features]], it uses [[Property:Is part of]].
Use <tt>format=embed</tt> to include entire pages matching a query for [[Property:Target for 9.1]] set to yes. Here it's limited to '''3''' matches because it's confusing.
''Problem is:'' embedding a page also pulls in its categorization; we can wrap that with noinclude but can't get this to work in a preload template.

This is better done as a separate, linked page, see [[Feature roadmap/Page of all features that target 9.1.0]]

{{#ask:
{{#ask:
[[Category:Software features]] [[Short name::+]]
[[Category:Software features]] [[ Target for 9.1::true]] [[:+]]
|format=embedded
|?Category
|embedformat=h4
|?Is part of=Technology/subsystem
|limit=3
|?Requested by
|default=Nothing found in [[:Category:Software features]] with [[Property:Short name]]?!
|default=Nothing found in [[:Category:Software features]] with [[Property:Target for 9.1]]=true?!
}}
}}


== What features did a country request==
== What features did a country request?==
<nowiki>Just ([[Requested by::{{FULLPAGENAME}}]])</nowiki>, e.g.
<nowiki>Query for ([[Requested by::{{FULLPAGENAME}}]])</nowiki>, e.g. here's one showing what [[OLPC Peru]] requested.
{{#ask:
{{#ask:
[[Category:Software features]]
[[Category:Software features]]
Line 102: Line 131:
|?Category
|?Category
|?Is part of=Technology/subsystem
|?Is part of=Technology/subsystem
|?Target for 9.1
|?Requested by
|default=Nothing found in [[:Category:Software features]] requested by {{FULLPAGENAME}}
|default=Nothing found in [[:Category:Software features]] requested by {{FULLPAGENAME}}
}}
}}


== Other sample queries ==
Could be a many-valued field with a priority...
=== Features showing category list ===
This queries for anything in [[:Category:Software features]], it shows category to try to show feature. (Only displays 10 results.)
{{#ask:
[[Category:Software features]] [[Is part of::+]]
|?Category=in the following categories
|?Requested by
|limit=10
|default=Nothing found in [[:Category:Software features]] with [[Property:Is part of]]?!
}}


''But'', as you see below you can't sort on category display!
Maybe have to have [[Property:Feature subcategory]], like [[Property:Test subcategory]], or use [[Property:Is part of|Is part of]]::[[Power management]], Is_part_of::Journal , etc.
{{#ask:
[[Category:Software features]] [[Is part of::+]]
|?Category
|?Requested by
|sort=Category
|limit=10
|default=Nothing found in [[:Category:Software features]] with [[Property:Is part of]] when we try to sort by Category.
}}


[[Category:Semantic MediaWiki]]
[[Category:Semantic MediaWiki]]

Latest revision as of 12:07, 21 December 2008

Various test queries that were or could be on

Enables a dynamic Feature roadmap — see Semantic MediaWiki#For software features.

Querying software features

What to query

Features are in subcategories of Category:Software features, but querying on this matches many pages that aren't software features, because some feature subcategories such as Category:Network and Category:Network are already in use.

{{Feature tracking}} sets some other properties like Property:Is part of, so the trick is to pick one that is specified (not blank or default) in all software features. Probably Property:Is part of is safest.

That gives us {{#ask: Is part of::+

 |format=count

}} software features (a few may be tests).

So use | limit=200 | in queries to display all the features.

Result format

You could regenerate the old huge feature roadmap page by using | format=embed | , which would bring all the subpages back. But you're back to a large unwieldy page.

You could use a results display template to shorten some links (e.g. show the short name in the link to the subpage), but you lose the clickable column headings.

To avoid repeating the Software feature subcategory on each line, repeat the query for each subcategory and don't display it.

Creating a new feature

  1. Make sure the feature doesn't already exist
  2. Read the Usage section of Template:Feature tracking for help filling out the template on the new page
  3. Pick an "Feature subcategory" from Category:Software features
  4. Find the requester(s)' wiki pages and the feature owner's User: wiki page
  5. Follow the OLPC:Style guide for page names, change Good feature name to your new subpage title.
  6. Ready? Click the button below to create a new meeting wikipage with the right title convention that's prefilled from Template:Feature tracking/Preload, edit it to suit, then save. After a delay (due to wiki query and page caching), your new subpage will appear in lists of features.

<inputbox> type=create preload=Template:Feature tracking/Preload buttonlabel=Create a new Feature roadmap subpage. default=Feature roadmap/Good feature name width=40 bgcolor=#f0f0ff </inputbox>

Default query ("Greg list")

The template's "Feature subcategory" parameter both sets a category and Property:Is part of. We can sort by the latter to present features by category.

This will replace section 2 of Feature roadmap Click on the arrows in any heading to sort by that heading. {{#ask: Is part of::+

 |?Is part of=Area
 |?=Feature page
 |?Requested by=Requested by
 |?Helps deployability#y,n
 |?Target for 9.1#yes,no
 |?Contact person=Owner(s)
 |?Priority
 |sort=Is part of
 |mainlabel=-
 |limit=200
 |default=Nothing found in Category:Software features with Property:Is part of?!

}}

Before you ask, you can't ask for "grouping" of results to avoid area repeated over and over; instead you would repeat the query each time querying for a different areas or subcategory.

Sort by area, then priority, then name

Sorting on a property implicitly selects pages with a value for it, so this won't display a lot of subpages until every page has a priority. Click on the arrows in any heading to sort by that heading. {{#ask: Short name::+

 |?Is part of=Area
 |?=Feature page
 |?Requested by
 |?Helps deployability
 |?Target for 9.1
 |?Contact person=Owner(s)
 |?Priority
 |sort=Is part of,Priority, Short name
 |order=ascending,descending, ascending
 |mainlabel=-
 |limit=200
 |default=Nothing found in Category:Software features with Property:Short name?!

}}

Features for 9.1.0

Just query for Property:Target for 9.1 set to yes. BUT: Because this property has a dot (period, "full stop") in its name, it looks like the trick SMW feature "property chaining". As the help says

"In the rare case that a property should contain a dot in its name, one may start the query with a space to prevent SMW from interpreting this dot in a special way."

Summary table

This query sorts by area, then priority, then Short name, so it only finds pages that have values for those properties.

{{#ask: Target for 9.1::true

 |?Is part of=Area
 |?=Feature page
 |?Requested by
 |?Helps deployability#yes,no
 |?Contact person=Owner(s)
 |?Priority  |sort=Is part of,Priority, Short name
 |mainlabel=-
 |limit=200
 |default=Nothing found in Category:Software features with Property:Target for 9.1=true?!

}}

Embedded

Use format=embed to include entire pages matching a query for Property:Target for 9.1 set to yes. Here it's limited to 3 matches because it's confusing. Problem is: embedding a page also pulls in its categorization; we can wrap that with noinclude but can't get this to work in a preload template.

This is better done as a separate, linked page, see Feature roadmap/Page of all features that target 9.1.0

{{#ask: Target for 9.1::true +

 |format=embedded
 |embedformat=h4
 |limit=3
 |default=Nothing found in Category:Software features with Property:Target for 9.1=true?!

}}

What features did a country request?

Query for ([[Requested by::{{FULLPAGENAME}}]]), e.g. here's one showing what OLPC Peru requested. {{#ask:

 Requested by::OLPC Peru
 |mainlabel=OLPC Peru wants
 |?Category
 |?Is part of=Technology/subsystem
 |?Target for 9.1
 |?Requested by
 |default=Nothing found in Category:Software features requested by Features-test

}}

Other sample queries

Features showing category list

This queries for anything in Category:Software features, it shows category to try to show feature. (Only displays 10 results.) {{#ask: Is part of::+

 |?Category=in the following categories
 |?Requested by
 |limit=10
 |default=Nothing found in Category:Software features with Property:Is part of?!

}}

But, as you see below you can't sort on category display! Maybe have to have Property:Feature subcategory, like Property:Test subcategory, or use Is part of::Power management, Is_part_of::Journal , etc. {{#ask: Is part of::+

 |?Category
 |?Requested by
 |sort=Category
 |limit=10
 |default=Nothing found in Category:Software features with Property:Is part of when we try to sort by Category.

}}