2011-10-11 1 views
5

Je génère un fichier RDF par programmation dans Iéna, c'est-à-dire lorsque j'insère des données dans le fichier rdf (instances) j'ai besoin d'un URI unique (qui se référera à la ressource) dans rdbms. Je veux savoir est-il possible de faire à Iéna comme quand je vais créer une ressource pour une instance que je peux générer l'URI?Génération d'URI dans Iéna pour RDF

Exemple:

Resource resAnswer = ModelCreation.md.createResource(RDFResourcesURI.Answer_Resource_URI + answer.getAnswer_id()); 

- ici, je suis hardcoding (ou l'entrée d'utilisateur) le answer_id puis à un URI annexant prédéfini. Au lieu de hardcoding puis-je le générer (comme auto increment dans mysql)?

+2

Question connexe - http://answers.semanticweb.com/questions/516/generating-unique-ids-in-triple-store-ala-mysql-auto_increment - Discussion sur les ID auto-incrémentées dans les magasins Triple en général – RobV

Répondre

1

Si vous voulez juste ID unique, vous pouvez utiliser quelque chose comme UUID.randomUUID() ou UUID.fromString(name)

UUID est en java.util package

0

J'utilise URN pour identifier mes ressources RDF car les URL n'ajoutent pas beaucoup de valeur puisque je ne publie pas mes ressources. Il y a une bibliothèque Jena pour générer UUID sous la forme de URN.

scala> import com.hp.hpl.jena.shared.uuid.JenaUUID 
import com.hp.hpl.jena.shared.uuid.JenaUUID 

scala> val resourceURN = JenaUUID.generate().asURN() 
resourceURN: String = urn:uuid:0a9ac70c-2ad1-11b2-8012-10ddb1d60524