pOWL HowTo
Translate the User Interface
The pOWL user interface may be easily translated into other languages:
- Select the system ontology of your store
- Browse trough the instances of the "label" class and add RDFS:labels according to your language to these instances
- Alternatively you can use the instances export/import functionality expose on the "Instances overview"
pOWL with Large Models
pOWL is proved to work with large RDF/RDFS/OWL models, as eg.
the National Cancer Institute Thesaurus
(ca. 27500 classes and 450000 triples) or
United Nations Standard Products and Services Code (UNSPSC)
(ca. 16500 classes and 82500 triples).
Nevertheless some optimizations may be done:
- Consider the tips given in Ilia Alshanetsky's talk "Accelerating PHP Applications",
especially OPcode Caching (as Zend Accelerator, APC or MMCache provide) speeds up pOWL enormous
- Optimize MySQL according to your system, especially enable the query cache
- To load large models use the "model_load.php" script:
php model_load.php
Usage: model_load.php [options] [baseURI]
"model_load.php" streams the input file and adds triples to the store continuously,
further other write accesses to the database tables are blocked during processing.
Publish Models on the Net
The included RAP NetAPI Server interface enables model publishing on the net.
For more technical details consult the RAP NetAPI Server Documentation.
For your convenience the server is seamlessly integrated into pOWL. To enable the NetAPI Server with pOWL copy ".htaccess-dist" to ".htaccess"
and edit the "RewriteBase" line to meet your pOWL URI base.
To publish a distinct model for anonymous HTTP access follow these steps:
- Select the system ontology of your store
- Find the instance of the class "Models" corresponding to the model you want to publish (the property "modelURI" of that instance should match)
- Set the property "modelPublish" ot that instance to "Yes"
- Rename the instance if needed - the instance name will be the last part of the URL to access your model
Now this model may be accessed by HTTP under: http://www.yourname.com/powl/netapi/food, assuming you installed pOWL in the sub-directory "powl"
in the document root directory of the web-server "www.yourname.com" and the instance with instance name "food" points to the model you want to publish.
Extending Powl
Integrate a pOWL widget plugin
Integrate a pOWL tab module
Tabs present a certain view on the currently selected model or the knowledge base in general to the user.
Examples are the "Models", "Classes", "Properties" and "Instances" views shiped with Powl.
Integrate a pOWL view or form
Views or forms may be attached to different types of resources (classes, properties, instances). Views are PHP scripts rendering HTML which
present a resource in a certain view or enable users to modify a resource in a certain way. They will be shown in the respective Powl tabs
and may be activated after the user selected a certain resource.
- Add an instance to the Powl System-Ontology class "View" (sub-class of "Module") with the folowing property values:
- Resource types: Select for which resource types (class, instance and/or property) the view should be enabled
- Script URL: The Request-URL of the script (relative to Powls instalation directory) which should be loaded. The URI of the resource (the script is called for) will be appended.
- Label: The label will should be shown in the user interface as linktext.
- Documentation: will be shown as tooltip.
Using Powl as a Foundation for Semantic Web Applications
Administrate pOWL Users