public class RSSReader {
public static final String RDF_NAMESPACE_URI = "http://www.w3.org/1999/02/22-rdf-syntax-ns#";
public static final String RSS_1_0_NAMESPACE_URI = "http://purl.org/rss/1.0/";
+ public static final String RSS_0_9_NAMESPACE_URI = "http://my.netscape.com/rdf/simple/0.9/";
public static final String DUBLINCORE_NAMESPACE_URI = "http://purl.org/dc/elements/1.1/";
public static final String EVENT_NAMESPACE_URI = "http://purl.org/rss/1.0/modules/event/";
public static final String TAXONOMY_NAMESPACE_URI = "http://web.resource.org/rss/1.0/modules/taxonomy/";
registerModule(new RSSBasicModule(RDF_NAMESPACE_URI, "RDF module"), "rdf");
registerModule(new RSSBasicModule(RSS_1_0_NAMESPACE_URI, "RSS 1.0 module"), "rss");
+ registerModule(new RSSBasicModule(RSS_0_9_NAMESPACE_URI, "RSS 0.9 module"), "rss");
RSSBasicModule dcModule = new RSSBasicModule(DUBLINCORE_NAMESPACE_URI, "RSS Dublin Core 1.1");
- dcModule.addProperty("date", dcModule.W3CDTF_PROPERTY_TYPE);
+ dcModule.addProperty("date", RSSModule.W3CDTF_PROPERTY_TYPE);
registerModule(dcModule, "dc");
RSSBasicModule dcTermsModule = new RSSBasicModule(DUBLINCORE_TERMS_NAMESPACE_URI, "RSS Qualified Dublin core");
- dcTermsModule.addProperty("created", dcModule.W3CDTF_PROPERTY_TYPE);
- dcTermsModule.addProperty("issued", dcModule.W3CDTF_PROPERTY_TYPE);
- dcTermsModule.addProperty("modified", dcModule.W3CDTF_PROPERTY_TYPE);
- dcTermsModule.addProperty("dateAccepted", dcModule.W3CDTF_PROPERTY_TYPE);
- dcTermsModule.addProperty("dateCopyrighted", dcModule.W3CDTF_PROPERTY_TYPE);
- dcTermsModule.addProperty("dateSubmitted", dcModule.W3CDTF_PROPERTY_TYPE);
+ dcTermsModule.addProperty("created", RSSModule.W3CDTF_PROPERTY_TYPE);
+ dcTermsModule.addProperty("issued", RSSModule.W3CDTF_PROPERTY_TYPE);
+ dcTermsModule.addProperty("modified", RSSModule.W3CDTF_PROPERTY_TYPE);
+ dcTermsModule.addProperty("dateAccepted", RSSModule.W3CDTF_PROPERTY_TYPE);
+ dcTermsModule.addProperty("dateCopyrighted", RSSModule.W3CDTF_PROPERTY_TYPE);
+ dcTermsModule.addProperty("dateSubmitted", RSSModule.W3CDTF_PROPERTY_TYPE);
registerModule(dcTermsModule, "dcterms");
RSSBasicModule v2vTermsModule = new RSSBasicModule(V2V_NAMESPACE_URI, "indymedia v2v RSS module");
- dcTermsModule.addMultiValuedProperty("topic", dcModule.PCDATA_PROPERTY_TYPE);
- dcTermsModule.addMultiValuedProperty("genre", dcModule.PCDATA_PROPERTY_TYPE);
- dcTermsModule.addMultiValuedProperty("link", dcModule.PCDATA_PROPERTY_TYPE);
+ v2vTermsModule.addMultiValuedProperty("topic", RSSModule.PCDATA_PROPERTY_TYPE);
+ v2vTermsModule.addMultiValuedProperty("genre", RSSModule.PCDATA_PROPERTY_TYPE);
+ v2vTermsModule.addMultiValuedProperty("link", RSSModule.PCDATA_PROPERTY_TYPE);
registerModule(v2vTermsModule, "v2v");
registerModule(new RSSBasicModule(EVENT_NAMESPACE_URI, "Event RSS module"), "ev");
};
public RDFResource getResource() {
+ if (resource.getIdentifier()==null || resource.getIdentifier().length()==0) {
+ resource.setIdentifier(resource.get("rss:link").toString());
+ }
+
return resource;
}
}