Semantic Web Application Platform (original) (raw)
or, if you like, Semantic Web Area for Play... visiting RDF and all points west. working toward the SWELL langauge, MIT-LCS's advanced development prototyping of tools and langauges for the Semantic Web.
This NOT W3C endorsed material, it is related to the Semantic Web activity of the W3C.
Other related material:
- A primer for getting into RDF using N3
- Examples
- SWAP cwm and other tools; Open Source.
- Notation3
- Design alternatives considerd in the design of Notation3
- Motivations for N3 and cwm
Source
This stuff is not guaranteed but is open source and available from the public w3c CVS repository.
Cwm - a general-purpose semantic web data processing tool
Check out *.py from the top level of the swap hierarchy to use it, check out the whole tree to develop.
Set up an alias (.bat file, etc) to make the cwm command cwm="python /wherever/cwm.py"
Other utilities in python
- Convert Quicken(tm) .QIF data into RDF
- Extract Microsoft(tm) Outlook(tm) data into RDF -- lookout.py (tm) ;-)
- <tab2n3.py> -- Convert tab separated text files into RDF
- dbview.py -- export an SQL database as RDF over HTTP (design note: Relational Databases on the Semantic Web)
- make2n3.py -- convert makefile dependencies to RDF
- <xml2infoset.py> -- convert XML infoset/parse structure to RDF (see also: Using RDF to model XML structures)
- <cant.py> -- cannonicalize N-Triples graphs
nearby: toICal.py -- (the start of) a converter from RDF to ICal. (see also: libical), vcal2xml.pl (in palmagent), which actually converts ical to RDF.
Ontologies
These are lists of RDF terms (properties and classes) which we have used for putting together test and demo applications, and organizing our dailiy lives. Most are defined in n3, many have xml versions. If you don't have it in XML, use cwm to transcode it.
Cwm built-ins
For cwm these are magic - these are properties which cwm can infer or which allow cwm to infer things. They are like built-in functions in a programming language. Not every N3 processor handles the same built-ins.
- Logic - as used by cwm
- String - built in
- Math - builtin
- Crypto - digital sugnature
- OS - Operating system interface; environment, command line &c
See the cwm page for details.
Utility ontologies
As we have experimented, we have generated a number of general purpose ontologies.
While in the long term there may be much better standard ones, for what its worth
there is a list a slide in the talk.
Basic RDF ontologies
Not here, but things everyone needs
- The RDF schema vocabulary
- The OWL web ontology vocabulary
History: Motivation
The requirements of this system are now
- To check the semantic web layer cake is feasable
To make a rules langauge which is a smooth extension of RDF
To make
These are a few things I put together to
- Resolve the fact that I had no code development environment
- Check out python
- Investigate the questions of the real RDF model particularly with respect to
- alternative quick scribbling (wiki wiki?) syntax - notation3
- managing several bags of RDF data, not covered by the RDF spec
- relationships between this and rule languages
- a generic logic framework for implementing various systems
- Generate some tools for munging RDF
Places to talk about this
See cwm discussion.
Acknowledgements
Contributors of code:
- Tim Berners-Lee
- Dan Connolly
- Sean Palmer
- Mark Nottingham
and contributions of ideas and all other kinds from those on #rdfig. Thanks to all. KUTGW!
By the way... Python is cool.
I had lamented that it ws a long time since I had a practial hacking environment, and Dan Connolly suggested Python as something you could start quickly but which would scale to a large system. One day, as I was leaving for the airport, I got my laptop back out of my bag, and sucked off the web the python 1.6 system and thepython tutorial, and a copy of a small notation3 parser Dan had hacked together. I was happy to find that Python is a language you can get into on one battery! I have been happily hacking ever since.
I remember Guido trying to persuade me to use python as I was trying to persuade him to write web software.
Tim BL, with his director hat off Id:Overview.html,v1.522019/11/2013:56:59coralieExpId: Overview.html,v 1.52 2019/11/20 13:56:59 coralie Exp Id:Overview.html,v1.522019/11/2013:56:59coralieExp