2010-05-19 8 views
2

J'ai installé RDFlib 3.0 et tout ce qui est nécessaire, mais lorsque j'exécute le code suivant, j'obtiens une erreur. Le code ci-dessous provient de: http://code.google.com/p/rdflib/wiki/IntroSparql. J'ai essayé pendant des heures de réparer cela mais sans succès. Peut-il s'il vous plaît quelqu'un d'aide?Impossible d'obtenir RDFlib pour fonctionner sur Windows

import rdflib 
rdflib.plugin.register('sparql', rdflib.query.Processor, 
         'rdfextras.sparql.processor', 'Processor') 
rdflib.plugin.register('sparql', rdflib.query.Result, 
         'rdfextras.sparql.query', 'SPARQLQueryResult') 

from rdflib import ConjunctiveGraph 
g = ConjunctiveGraph() 
g.parse("http://bigasterisk.com/foaf.rdf") 
g.parse("http://www.w3.org/People/Berners-Lee/card.rdf") 

from rdflib import Namespace 
FOAF = Namespace("http://xmlns.com/foaf/0.1/") 
g.parse("http://danbri.livejournal.com/data/foaf") 
[g.add((s, FOAF['name'], n)) for s,_,n in g.triples((None, FOAF['member_name'], None))] 

for row in g.query(
     """SELECT ?aname ?bname 
      WHERE { 
       ?a foaf:knows ?b . 
       ?a foaf:name ?aname . 
       ?b foaf:name ?bname . 
      }""", 
     initNs=dict(foaf=Namespace("http://xmlns.com/foaf/0.1/"))): 
    print "%s knows %s" % row 

L'erreur que je reçois est:

Traceback (most recent call last): 
    File "...", line 18 in <module> 
    initNs=dict(foaf=Namespace("http://xmlns.com/foaf/0.1/"))): 
TypeError: query() got an unexpected keyword argument 'initNS' 

Répondre

2

En attendant, je trouve une solution de contournement qui consiste à installer MingW32 et compiler avec cela. Donc, pour tous ceux qui avec un problème similaire:

  1. Télécharger MingW32 installateur de sourceforge
  2. Lorsque vous installez l'outil et obtenir l'écran demandant quels composants à installer, sélectionnez « outils de base MinGW », « compilateur g ++ "et" MingW make ".
  3. Après MinGW est installé, ajouter C: \ MinGW \ bin à votre environnement de chemin variables

de http://code.google.com/p/rdflib/issues/detail?id=104#c4

Questions connexes