data.gov now live with RDFa

2009-08-19 Thread rick

Hello All:

Just to give you a heads up the data.gov home page is now live with RDFa 
tags.


http://www.data.gov/

The page has two triples. One about the page, one about the program. We 
used this very simplistic approach to overcome any operational barriers 
and develop experience in publishing RDFa tags.


See below for source code that parses the triples. I used the INRIA 
GRDDL transform.


Have fun and I'll watch this list for feedback and such.

--
Rick

cell: 703-201-9129
web:  http://www.rickmurphy.org
blog: http://phaneron.rickmurphy.org

 more RDFaConsumer.java
/**
 * @(#)RDFaConsumer.java
 * @author r...@rickmurphy.org
 */

package gov.data;

/**
 */

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.FactoryConfigurationError;
import javax.xml.parsers.ParserConfigurationException;

import org.xml.sax.SAXException;
import org.xml.sax.SAXParseException;

import java.text.ParseException;

import java.io.UnsupportedEncodingException;
import java.io.IOException;

import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.w3c.dom.Element;

import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerConfigurationException;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource;


import java.net.URL;

public class RDFaConsumer{

private static String namespace;

/**
 */
public RDFaConsumer(String uri){

try {

DocumentBuilderFactory factory = 
DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document input = builder.parse(new URL(uri).toString());
input.normalize();

DOMSource source = new DOMSource(input);
StreamResult result = new StreamResult(System.out);
	StreamSource stylesheet = new StreamSource(new 
URL(http://ns.inria.fr/grddl/

rdfa/2008/09/03/RDFa2RDFXML.xsl).toString());

// Use a Transformer for output
TransformerFactory tFactory = TransformerFactory.newInstance();
Transformer transformer = tFactory.newTransformer(stylesheet);
transformer.transform(source, result);

// transform the dom into RDF/XML
traverse(input);

} catch (SAXParseException spe) {
System.out.println(sax parse ex:  + spe);
} catch (SAXException sxe) {
System.out.println(sax ex:  + sxe);
} catch (ParserConfigurationException pce) {
System.out.println(parser config ex:  + pce);
}catch (UnsupportedEncodingException ude) {
System.out.println(unsupported encoding ex:  + ude);
} catch (IOException ioe) {
System.out.println(io ex:  + ioe);
} catch (TransformerConfigurationException tc) {
System.out.println(transformer config ex:  + tc);
} catch (TransformerException te) {
System.out.println(trasnformer ex:  + te);
}

}//RDFaConsumer

/**
 */
public static void main(String[] args){

new RDFaConsumer(args[0]);

}//main

/**
 */
public void traverse(Node node){

// is there anything to do?
if (node == null) {
return;
}

int type = node.getNodeType();
switch (type) {
case Node.DOCUMENT_NODE: {;
Document document = (Document)node;
traverse(document.getDocumentElement());
break;
}

case Node.ELEMENT_NODE: {

if(node.getNodeName().equals()){

NodeList childNodes = node.getChildNodes();

break;

}
}

case Node.ENTITY_REFERENCE_NODE: {
Node child = node.getFirstChild();
while (child != null) {
traverse(child);
child = child.getNextSibling();
}
break;
}

case Node.CDATA_SECTION_NODE: {

// no work here
break;
}

}

}//traverse

/**
 */
public void getRDFaHTML(){}//getRDFaHTML

}//RDFaConsumer





Re: data.gov now live with RDFa

2009-08-19 Thread Toby Inkster
On Wed, 2009-08-19 at 06:50 -0400, rick wrote:
 http://www.data.gov/
 The page has two triples.

Ten by my count.

The namespace for Dublin Core is wrong though. It's currently pointed at
http://dublincore.org/documents/2008/01/14/dcmi-terms/ which is a
documentation file. The namespace should be one of:

http://purl.org/dc/terms/
http://purl.org/dc/elements/1.1/
http://purl.org/dc/elements/1.0/

Looking at how Dublin Core is being used on the page -- in particular,
literals for dc:creator and dc:publisher -- I'd suggest using the older
http://purl.org/dc/elements/1.1/ namespace URI.

-- 
Toby A Inkster
mailto:m...@tobyinkster.co.uk
http://tobyinkster.co.uk




2nd CfP: Workshop on User-generated Services (UGS2009)

2009-08-19 Thread Knud Hinnerk Möller

(apologies for multiple postings)
--
CALL FOR PAPERS
--
1st International Workshop on User-generated Services (UGS 2009)
co-located with the 7th International Conference on Service Oriented
Computing (ICSOC2009) and ServiceWave2009
Stockholm, Sweden, November 23rd or 24th, 2009 (to be decided)
Papers due: 6th September 2009
--


Workshop Goal:

Service-oriented architectures (SOA) have transformed the way software  
systems are being developed. However, the development of services is  
still service-centric rather than user-centric. The reuse and  
combination of such services requires the assistance of a skilled  
developer. The workshop aims to explore research and development which  
will empower end-users to participate in the generation, combination  
and adaption of services to create functionality and solve problems in  
their work - what we user-generated services.



Background:

User-generated content (UGC) has become a major source of information  
on the World-Wide Web. Wikis, blogs, web-based user forums and social  
networks have empowered end-users to collaboratively create content  
and share it. UGC is not only a phenomenon in the private domain but  
has become a major source for technical solutions as exemplified by  
search results of technical problems in Google: solutions are  
increasingly found in sites providing UGC.


Thus end-users have become a major source of knowledge, similarly  
leveraging the “resources at the edge of the network” as P2P systems  
have done on a technical level. The next logical step is that after  
supporting the creation and management of data, the same should be  
done at the level of services created and provided by end-users, i.e.,  
“User-generated Services” (UGS). UGS can be cover a range of services,  
from ad-hoc, situational applications for personal use to more  
advanced enterprise mash-ups supporting a community of users. In order  
to facilitate UGS, tools and infrastructures to create, combine, reuse  
and execute possibly complex services in an easy manner are needed.


There is a range of issues that have to be addressed in order to  
realise the vision of user-generated services: service front-ends that  
support new ways of visualising and interacting with services have to  
be explored; questions of modelling end-users, who can range from  
naive users to power users, come into play, as well as modelling user  
behaviour and user context; automatic and semi-automatic methods for  
service composition are relevant, in order to lower the learning curve  
and technological threshold that users need to overcome for the  
creation of services.


The aim of the workshop is to bring together researchers and  
developers from both academia and industry, covering the different  
fields that are relevant for user-generated services, such as service  
oriented computing, semantics, human computer interaction and software  
design. The workshop will foster an exchange of ideas to further the  
state of the art in the field, share and define new ideas and  
practical experiences in designing, creating, deploying and using user- 
centric services, establishing new methodologies, techniques and  
graphical interfaces. The findings aim to facilitate and attract non- 
technical users to create and use electronic services, which  
architectural models would be the most adequate, and how for example  
semantics can play a role in designing and creating them.



--
Topics of Interest (not limited to)
--

- Methodology and Conceptualisation
 - Techniques to facilitate the creation of services by end-users
 - User-centric software development methodologies
 - Methodologies to accommodate different kinds of end-users (naive,  
power user, ...)

- Architectures and Platforms
 - Platforms and middleware to facilitate the connection of back-end  
services and service front-ends

 - Architectures for service front-ends
 - Indexing and cataloguing of services
 - Deployment of services
 - Easy service composition
- End-user Interfaces and Service Front-ends
 - Intuitive visual tools to manipulate and combine service components
 - Interface metaphors to hide and abstract service complexity from  
non-technical users

 - Different patterns for user-service interaction
 - Interfaces to enable service and resource mashups
 - Exposing existing back-end services to end-users
 - Studies dealing with usability of Service Front-ends
- Context and Behaviour
 - Taxonomies and Ontologies describing user context
 - Context-based personalisation of services and tools
 - Context-based service search
 - Behaviour-aware service recommendation
- 

Top three levels of Dewey Decimal Classification published as linked data

2009-08-19 Thread Panzer,Michael
Hi all,

I would like to announce the availability of the DDC Summaries as a
linked data service that uses SKOS and other vocabularies for
representation [1]. Please take a look if you like. Comments,
suggestions, and advice are really appreciated!

Dewey.info makes the top 1000 classes of the Dewey Decimal
Classification available in nine languages. The service does some
content negotiation to determine whether to serve XHTML+RDFa or RDF/XML.
Other serializations (Turtle, JSON) are available also. The content is
licensed under Creative Commons BY-NC-ND, expressed in RDFa and RDF
using the ccREL properties.

An overview of the service can be found in the OCLC Developers Network
wiki [2]. Some URLs to try: 

http://dewey.info/class/641/ 
http://dewey.info/class/641/about.rdf 
http://dewey.info/class/641/2009/about.fr 
http://dewey.info/class/64/2003/ 
http://dewey.info/class/6/2003/08/about.de.rdf 
http://dewey.info/class/6/2003/08/about.de.html 
http://dewey.info/class/6/e22/about

The DDC Summaries, while being a relatively small part of the DDC, are
hopefully a good first step to get a feel for a couple of things:
developing a SKOS model for a large universal classification;
structuring access to multilingual and time-variant KOS data; testing
URI patterns; etc. More will be added after the initial approach has
been weighed on the scales. At the moment, (most of) the data is only
linked to itself, but since the DDC is actively used worldwide and has
been widely applied and mapped to other vocabularies, other links (and
some more languages) should be added soon.

Cheers 
Michael 

[1] http://dewey.info 
[2] http://worldcat.org/devnet/wiki/DeweyInfoTechOverview


Re: Top three levels of Dewey Decimal Classification published as linked data

2009-08-19 Thread Ed Summers
Hi Michael,

This is really exciting news, especially for those of us Linked Data
enthusiasts in the world of libraries and archives. Congratulations!

I haven't fully read the wiki page yet, so I apologize if this
question is already answered there. I was wondering why you chose to
mint multiple URIs for the same concept in different languages. For
example:

uqbar:~ ed$ rapper -o turtle http://dewey.info/class/641/

@prefix rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns# .
@prefix xhtml: http://www.w3.org/1999/xhtml/vocab# .
@prefix cc: http://creativecommons.org/ns# .
@prefix dct: http://purl.org/dc/terms/ .
@prefix skos: http://www.w3.org/2004/02/skos/core# .

http://dewey.info/class/641/2009/08/about.en
cc:attributionName OCLC Online Computer Library Center, Inc. ;
cc:attributionURL http://www.oclc.org/dewey/ ;
cc:morePermissions http://www.oclc.org/dewey/about/licensing/ ;
dct:isVersionOf http://dewey.info/class/641/ ;
dct:language en^^dct:RFC4646 ;
a skos:Concept ;
xhtml:license http://creativecommons.org/licenses/by-nc-nd/3.0/ ;
skos:broader http://dewey.info/class/64/2009/08/about.en ;
skos:inScheme http://dewey.info/scheme/2009/08/about.en ;
skos:notation 641^^http://dewey.info/schema-terms/Notation ;

http://dewey.info/class/641/2003/08/about.de
cc:attributionName OCLC Online Computer Library Center, Inc. ;
cc:attributionURL http://www.oclc.org/dewey/ ;
cc:morePermissions http://www.oclc.org/dewey/about/licensing/ ;
dct:isVersionOf http://dewey.info/class/641/ ;
dct:language de^^dct:RFC4646 ;
a skos:Concept ;
xhtml:license http://creativecommons.org/licenses/by-nc-nd/3.0/ ;
skos:broader http://dewey.info/class/64/2003/08/about.de ;
skos:inScheme http://dewey.info/scheme/2003/08/about.de ;
skos:notation 641^^http://dewey.info/schema-terms/Notation ;
skos:prefLabel Essen und Trinken@de .

...

I kind of expected the assertions to hang off of a language and
version agnostic URI, with perhaps dct:hasVersion links to previous
versions.

http://dewey.info/class/641/
cc:attributionName OCLC Online Computer Library Center, Inc. ;
cc:attributionURL http://www.oclc.org/dewey/ ;
cc:morePermissions http://www.oclc.org/dewey/about/licensing/ ;
dct:hasVersion http://dewey.info/class/641/2009/08/ ;
dct:language de^^dct:RFC4646 ;
a skos:Concept ;
xhtml:license http://creativecommons.org/licenses/by-nc-nd/3.0/ ;
skos:broader http://dewey.info/class/64/2003/08/about.de ;
skos:inScheme http://dewey.info/scheme/2003/08/about.de ;
skos:notation 641^^http://dewey.info/schema-terms/Notation ;
skos:prefLabel Food  drink@en, Essen und Trinken@de .

See how multiple skos:prefLabel assertions can be made using the same
subject? To illustrate why I think this is important consider how
someone may use the resources at dewey.info:

http://openlibrary.org/b/OL11604988M dct:subject
http://dewey.info/class/641/ .

If we follow our nose to http://dewey.info/class/641 we will get back
some RDF, but the description we get isn't about the subject
http://dewey.info/class/641/ so what are we to make of the above
assertion?

Another unrelated thing I noticed is that the RDFa doesn't seem to be
usable by the RDFa Distiller:

http://tinyurl.com/nm8lfa

Sorry if this was too long. Let me just say again how exciting it is
to see this work coming out of OCLC.

//Ed



Re: data.gov now live with RDFa

2009-08-19 Thread rick

Toby  All:

Thanks for your suggestions.

Tonight I tested the live site for the first time.

Seems it does not validate properly against the W3C validator, or parse 
using the original test harness. The DTD is not xhtml+rdfa as in the sample.


Feel free to keep the suggestions coming over the next day or so while I 
get back to the ops folks.


--
Rick

cell: 703-201-9129
web:  http://www.rickmurphy.org
blog: http://phaneron.rickmurphy.org

Toby Inkster wrote:

On Wed, 2009-08-19 at 06:50 -0400, rick wrote:

http://www.data.gov/
The page has two triples.


Ten by my count.

The namespace for Dublin Core is wrong though. It's currently pointed at
http://dublincore.org/documents/2008/01/14/dcmi-terms/ which is a
documentation file. The namespace should be one of:

http://purl.org/dc/terms/
http://purl.org/dc/elements/1.1/
http://purl.org/dc/elements/1.0/

Looking at how Dublin Core is being used on the page -- in particular,
literals for dc:creator and dc:publisher -- I'd suggest using the older
http://purl.org/dc/elements/1.1/ namespace URI.