FNOSIG: Nokia Developer Ontology Summary for Interface Generation
http://sw.nokia.com/fnosig
FNOSIG is a tool for producing ontology summaries of particular sets of metadata properties and values defined by the ontologies currently deployed within the Nokia Developer web environment. Summaries are formatted either as RDF/XML or CSV (comma separated value) tables intended for machine processing, or as HTML for viewing by a human.
Input Parameters
The input parameters to the FNOSIG tool are as follows:
Parameter Value Description get summary Return full ontology summary.
types Return summary of FN resource types.
views Return summary of editor views.
voc {URI} A URI identifying the vocabulary for which the ontology summary should be generated.
[default: http://sw.nokia.com/FN-1]
type {URI} A URI identifying the resource type used to identify the vocabulary for which the ontology summary should be generated.
[default: http://sw.nokia.com/FN-1/Type/Resource]
view {URI} A URI identifying the editor view to which the ontology summary should be constrained.
[default: http://sw.nokia.com/FN-1/View/basic]
datatypes precise The precise datatypes as specified in the original metadata are preserved in the summary.
[default]
general The datatypes as specified in the original metadata are mapped to a limited set of general datatypes in the summary, corresponding to the general datatypes defined by the RDF Facets specification.
Note: precise datatypes are always used with RDF/XML formatted summaries.
format text/csv Return summary formatted as CSV (Comma Separated Values).
[default]
text/html Return summary as HTML.
application/rdf+xml Return summary as RDF/XML.
Note that not all parameters are mutually compatible. Input parameters are interpreted according to the following logic:
IF get == null THEN return usage guide (this page) IF get == "types" THEN return resource type summary IF get == "views" THEN return editor view summary get = "summary" IF datatypes == null THEN datatypes = "precise" IF format == null THEN format = "text/csv" IF format == "application/rdf+xml" THEN datatypes = "precise" IF voc != null THEN return summary of specified vocabulary IF type != null OR view != null THEN IF type == null THEN type = "http://sw.nokia.com/FN-1/Type/Resource" IF view == null THEN view = "http://sw.nokia.com/Editor-1/View/basic" voc = vocabulary identified based on type and view IF voc != null THEN return summary of identified vocabulary return summary of vocabulary "http://sw.nokia.com/FN-1"
CSV Structure
The CSV summary format is organized as follows:
Each record is contained on a single line, and each line consists of the following fields:
- property URI, facet encoded
- property label, facet encoded
- property value type, one of [USNDXL] or a facet encoded datatype URI
- minimum cardinality, integer value
- maximum cardinality, integer value or '*' (unbounded)
- relevance qualified flag, one of [TF]
- meta property flag, one of [TF]
- controlled value set flag, one of [TF]
- controlled value URI or lexical form, facet encoded
- controlled value label (or lexical form), facet encoded
- controlled value level, integer value indicating taxonomic level
- controlled value parent value, facet encoded, the immediately superordinate taxonomic value (if applicable)
- deprecated flag, one of [TF], indicating if the term is deprecated (T) or not (F)
- unit label, presentation label for unit of measurement, if defined for property
Deprecated terms (i.e. those having a value 'T' in in field 13) should never be displayed in a UI, e.g. for user selection/specification, etc. but are included in the summary for various forms of legacy support which must be aware of deprecated terms as well as terms currently in use.
For properties having no controlled value sets, field 8 of the record will have a value 'F' and fields 9 through 12 of the record defining such properties will be empty. For all records defining controlled values, the property information is repeated redundantly, as this facilitates the processing of each such record independently of any other and allows more efficient stream based processing of the records when generating interface code based on the summary (and the size of any given summary is not so large that such redundancy constitutes any performance or scalability issues).
The property value type specified in field 3 can be used to determine the nature of the interface widget used for user input (string, URI, numerical, date, etc.) and along with the cardinality constraints specified in fields 4 and 5, can be used for all appropriate validation of user input values.
Controlled values for a given property can be extracted by simply scanning for all record lines having the property URI in field 1 and a non-null controlled value URI in field 9. Top level values for a property having hierarchically organized values would be those records as above having a value 0 in field 11. In this way, the components of a pull down selection list or similar widget can be generated.
The taxonomic level can be used to produce incremental indentation of presentation labels in listings, pull down menus, etc. to visually indicate thier hierarchical organization.
Subordinate terms of a given controlled value term can be extracted by scanning for controlled value records having that term indicated as their immediate parent in field 12. This enables the generation of contextual pull down selection lists where the list members are all siblings at a given hierarchical level, sharing a common parent term.
Meta properties, as indicated in field 7, are not used to describe resources and thus should be omitted from resource description forms; however, they may be relevant for certain kinds of input widgets, such as relevance qualified values.
Type and View Summaries
CSV formatted summaries for get=types and get=views consist only of 5 fields corresponding to fields 9 - 13 of the complete summary.
Contact: Developer Feedback Copyright (C) 2004-2008 Nokia