In the SWAD-Europe project we are building a 'Semantic Web developer map' using technologies such as RDF/XML, RSS, FOAF, and Dublin Core. The goal is to mark up the geographical locations of Semantic Web developers, researchers, project groups etc.
Notes from Libby and DanBri meeting.
We should take notes on OWL-modeling issues that crop up, eg. we talked about having foaf:Organization and foaf:Group; the former for things like ILRT, the latter for things like the ILRT Semantic Web group. OWL allows us to be more explicit in our design, by giving us the vocabulary to answer questions like "are there any things that are both Groups and Organizations?". We can clarify the design both in prose, and through using the owl:disjointWith(?) property.
Our markup needs to...
- allow for multi-site groups and organizations and projects (eg. W3C, SWAD-Europe)
- allow us to discover RSS feeds for individuals, groups, projects etc.
- enable us to represent the relationship of these to the S.W. (eg. that they are 'interested in' the SW. And other tech topics).
- distinguish projects from ongoing research groups
- assume the 'present tense' (ie. 'project' rather than 'currentProject')
- allow representation of former/completed projects
- allow use of Dublin Core to represent research reports
- fix domain of foaf:interest
But it also has to allow us to start gradually, and add complexity and richness in incremental steps. So:
- Any wellformed RDF/XML is acceptable
- Some basic RDF structures are expected; names, homepages etc.
- we will experiment with more sophisticated modeling gradually
Specific technical things to look at:
- associating RSS with other things
- lat/long/alt of spatial things, and 'withinNmetres' markup
- other ontologies and schemas for groups, e.g.
- this ontology is an extremely detailed ontology for describing information about people working at universities. It includes geographical and time-related elements as well as detailed information about organisations and their components, including people. All organisations are subclass of legal-agent, which may not work for a project like swad-europe, or a group such as RDF Interest, although it would work for ILRT or ILRT's semantic web group. There is also information about different technologies, including specifications, software, programming languages; also publications.
- affiliated-person looks useful; also organization-part-of; Generic-Area-Of-Interest; Activity?; Project; project-involves-organization-unit.
- see below for a worked-through example (not included in the cuurent main doc because it's not been checked).
Summary (for Caroline):
- SW as 'web pages for machines'
- How RSS feeds, syndication and aggregation work (W3C homepage example).
- How FOAF documents, crawlers and aggregators work.
- Visualization / UI (see VisualizingRDF or Jim Ley's foaf map
- Modeling issues: what do we want to represent? People, places, documents, events, groups, projects, ...
- Dealing with complexity - starting with a minimalist approach, adding detail later
- What next?
- write some more sample data
- authoring tool help (mailbox obfuscator; airport identifiers; lat/long?)
- Bulletin board / starting point (AnRdfHarvesterStartingPoint?)
This is a second draft, eliminating the more controversial examples to focus on the 'nearestAirport' case. I've added a 'group' example that needs checking, foaf:interest and foaf:theme. Comments are very welcome - please send them to firstname.lastname@example.org, the SWAD-Europe project mailing list.
- group version? foaf:Group, foaf:groupMember, foaf:groupHomepage are new foaf terms - do we want them? how useful are they?
- foaf:made and foaf:interest have the incorrect domain - person is too specific
- using projectHomepage - new foaf term
- something about how this is very simple but better to do something than nothing, and interesting to add stuff, e.g. own vocabs within it.
- fix scraping on http://esw.w3.org/topic/AnRdfHarvesterStartingPoint. create and add example of group to link from there.
Note that we are sketching some new vocabulary terms for FOAF, which may be included in the FOAF schema soon, but are currently undocumented except as they appear here.
Example with the Aktors portal ontology
xmlns:apt="http://www.megginson.com/exp/ns/airports#" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:wordnet="http://xmlns.com/wordnet/1.6/" xmlns:portal="http://www.aktors.org/ontology/portal#" xmlns:support="http://www.aktors.org/ontology/support#"
<support:has-pretty-name>The University of Bristol</support:has-pretty-name>
<portal:has-support-unit> <portal:Academic-Support-Unit> <support:has-pretty-name>Information Services</support:has-pretty-name>
<portal:has-sub-unit> <portal:Organization-Unit> <support:has-pretty-name>ILRT</support:has-pretty-name>
<portal:has-sub-unit> <foaf:Group rdf:nodeID="ILRT"> <rdf:type rdf:resource="Organization-Unit" /> <foaf:homepage rdf:resource="http://ilrt.org/discovery/"/>
<portal:has-web-address rdf:resource="http://ilrt.org/discovery/" />
<foaf:interest rdf:resource="http://www.w3.org/2001/sw/" />
<foaf:projectHomepage rdf:resource="http://www.w3.org/2001/sw/Europe/" />
<foaf:name>ILRT Semantic Web group</foaf:name>
<support:has-pretty-name>Semantic Web Group</support:has pretty-name>
<contact:nearestAirport> <wordnet:Airport> <apt:iata>BRS</apt:iata> <apt:icao>EGGD</apt:icao> </wordnet:Airport> </contact:nearestAirport> </foaf:Group> </portal:has-sub-unit> <portal:Organization-Unit> </portal:has-sub-unit> </portal:Academic-Support-Unit> </portal:has-support-unit>
</portal:addresses-generic-area-of-interest> <portal:project-involves-organization-unit rdf:resource="#ILRT" />