/* * Converts the Person Object into an TriG String * representation. */ private String convertPerson(Person person, ObjectBundle bundle) { StringBuffer result = new StringBuffer(); // First the uriref for the subject result.append(Person.getPrefixed(person.getNr(), bundle.getPublisherNum())); result.append("\n"); // rdf:type result.append(createTriplePO(RDF.prefixed("type"), FOAF.prefixed("Person"))); // foaf:name result.append(createTriplePO(FOAF.prefixed("name"), createLiteral(person.getName()))); // foaf:mbox_sha1sum result.append( createTriplePO(FOAF.prefixed("mbox_sha1sum"), createLiteral(person.getMbox_sha1sum()))); // bsbm:country result.append( createTriplePO( BSBM.prefixed("country"), createURIref(ISO3166.find(person.getCountryCode())))); // dc:publisher result.append( createTriplePO(DC.prefixed("publisher"), RatingSite.getPrefixed(person.getPublisher()))); // dc:date GregorianCalendar date = new GregorianCalendar(); date.setTimeInMillis(person.getPublishDate()); String dateString = DateGenerator.formatDate(date); result.append( createTriplePOEnd( DC.prefixed("date"), createDataTypeLiteral(dateString, XSD.prefixed("date")))); return result.toString(); }
/* * Converts the Review Object into an TriG String * representation. */ private String convertReview(Review review, ObjectBundle bundle) { StringBuffer result = new StringBuffer(); // First the uriref for the subject result.append(Review.getPrefixed(review.getNr(), bundle.getPublisherNum())); result.append("\n"); // rdf:type result.append(createTriplePO(RDF.prefixed("type"), BSBM.prefixed("Review"))); // bsbm:reviewFor result.append( createTriplePO( BSBM.prefixed("reviewFor"), Product.getPrefixed(review.getProduct(), review.getProducerOfProduct()))); // rev:reviewer result.append( createTriplePO( REV.prefixed("reviewer"), Person.getPrefixed(review.getPerson(), review.getPublisher()))); // dc:title result.append(createTriplePO(DC.prefixed("title"), createLiteral(review.getTitle()))); // rev:text result.append( createTriplePO( REV.prefixed("text"), createLanguageLiteral(review.getText(), ISO3166.language[review.getLanguage()]))); // bsbm:ratingX Integer[] ratings = review.getRatings(); for (int i = 0, j = 1; i < ratings.length; i++, j++) { Integer value = ratings[i]; if (value != null) result.append( createTriplePO( BSBM.getRatingPrefix(j), // createDataTypeLiteral(value.toString(), // XSD.prefixed("integer")) value.toString())); } // bsbm:reviewDate GregorianCalendar reviewDate = new GregorianCalendar(); reviewDate.setTimeInMillis(review.getReviewDate()); String reviewDateString = DateGenerator.formatDateTime(reviewDate); result.append( createTriplePO( BSBM.prefixed("reviewDate"), createDataTypeLiteral(reviewDateString, XSD.prefixed("dateTime")))); // dc:publisher result.append( createTriplePO(DC.prefixed("publisher"), RatingSite.getPrefixed(review.getPublisher()))); // dc:date GregorianCalendar date = new GregorianCalendar(); date.setTimeInMillis(review.getPublishDate()); String dateString = DateGenerator.formatDate(date); result.append( createTriplePOEnd( DC.prefixed("date"), createDataTypeLiteral(dateString, XSD.prefixed("date")))); return result.toString(); }