Maschine Code Block and RDF
The standard language for data exchange in the net is (or sould be) RDF. As the MCBs are modeled after RDF it is possible to automatically translate them to R\DF.
TODO:
- Translation MCB Schema to RDF Schema
- mapping of types
- Translation MCBs to RDF entities.
- Integrate into MCB web service
Integrate MCB and RDF
Extend the MCB standard to allow links to RDF entities for block types. Use RDF as internal format. So all we have is a translation tool translating BCBs to RDF files.
- www.mnot.net/sw/sparta/
Possible mapping to RDF
Schema:
id -> id???
type -> rdf:type
name -> ???
attribute: BLOCK(Attribute); -> rdfs:domain
per attribute:
"key" -> id??
"label" -> rdfs:label
"description" -> rdfs:comment ?
"required" -> owl:minCardinaly = 1
"multiple" -> ! owl:maxCardinaly = 1
"type" -> rdfs:range
"default" -> create entries
Drop MCB Schema! This mapping is for getting how it should work only.
Other way round
Use RDF Schema to parse MCB.
type -> link to RDF Schema type
Problems
- can't import external RDF files (as RDF files do)
- use RDFFILE attribute
- use CLASS attribute
- map attribute nams to RDF properties
- use local names of the RDF properties
- drop own schema
- understand RDF types
- only use Literal and anyURL/Resource types
Example Data
- BEGINBLOCK
RDFFILE: http://xmlns.com/foaf/0.1/20050403.rdf ;
RDFFILE: http://dublincore.org/2003/03/24/dces ;
- CLASS: Person;
FirstName: Florian;
- Surname: Festi;
homepage% FlorianFesti;
- ENDBLOCK