[Nepomuk] RSS Ontology
Sebastian Trüg
sebastian at trueg.de
Tue Jan 22 16:38:33 UTC 2013
Hi Daniel,
some comments:
- I dont think you need special description and title properties. Just
use the ones in NIE
- Try reusing publisher and author from other ontos like NMM or the
publishing onto from Jörg
- Can't you create sub-classes to nso:Enclosure instead of using nso:type?
Also note that the semantic web uses atom[1] and sioc[2] for feeds.
Cheers,
Sebastian
[1] http://bblfish.net/work/atom-owl/2006-06-06/AtomOwl.html
[2] http://sioc-project.org/ontology
On 01/22/2013 04:10 PM, Daniel Vrátil wrote:
> Hi folks,
>
> I'm working on support for Nepomuk search in Akregator2. I have not found any
> suitable ontology for indexing RSS articles, so I made an attempt to write one
> myself.
>
> I have no previous experience with writing ontologies, so I would appreciate
> if you could take a look and review the ontology:
>
>
> @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
> @prefix nao: <http://www.semanticdesktop.org/ontologies/2007/08/15/nao#> .
> @prefix nco: <http://www.semanticdesktop.org/ontologies/2007/03/22/nco#> .
> @prefix nrl: <http://www.semanticdesktop.org/ontologies/2007/08/15/nrl#> .
> @prefix nie: <http://www.semanticdesktop.org/ontologies/2007/01/19/nie#> .
> @prefix nmo: <http://www.semanticdesktop.org/ontologies/2007/01/19/nmo#> .
> @prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
> @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
> @prefix dc: <http://purl.org/dc/elements/1.1/> .
> @prefix nso: <http://www.kde.org/ontologies/nso#> .
>
> nso: {
>
> nso:Element a rdfs:Class ;
> rdfs:label "Feed Element" ;
> rdfs:comment "Superclass for all elements related to RSS feeds" ;
> rdfs:subClassOf nie:InformationElement .
>
> nso:Feed a rdfs:Class ;
> rdfs:comment "Represents an RSS Feed" ;
> rdfs:label "RSS Feed" ;
> rdfs:subClassOf nso:Element .
>
> nso:Article a rdfs:Class ;
> rdfs:label "RSS Article" ;
> rdfs:comment "Represents a single article within an RSS Feed" ;
> rdfs:subClassOf nso:Element .
>
> nso:Enclosure a rdfs:Class ;
> rdfs:label "RSS Enclosure" ;
> rdfs:subClassOf nso:Element .
>
> # Properties of nso:Element
>
> nso:sourceUrl a rdf:Property ;
> rdfs:label "Source URL" ;
> rdfs:comment "URL of the source" ;
> rdfs:subPropertyOf dc:source ;
> rdfs:range xsd:string ;
> rdfs:domain nso:Element .
>
> nso:title a rdf:Property ;
> rdfs:label "Title" ;
> rdfs:comment "Title of the element" ;
> rdfs:subPropertyOf nie:title ;
> rdfs:range xsd:string ;
> rdfs:domain nso:Element .
>
> # Properties of nso:Feed
>
> nso:publisher a rdf:Property ;
> rdfs:label "Publisher" ;
> rdfs:comment "Publisher of the feed" ;
> rdfs:range nco:Contact ;
> rdfs:domain nso:Feed .
>
> # Properties of nso:Article
>
> nso:content a rdf:Property ;
> rdfs:label "Content" ;
> rdfs:comment "Content of the article" ;
> rdfs:subPropertyOf nie:htmlContent ;
> rdfs:range xsd:stirng ;
> rdfs:domain nso:Article .
>
> nso:description a rdf:Property ;
> rdfs:label "Description" ;
> rdfs:comment "Description of article content" ;
> rdfs:subPropertyOf nie:description ;
> rdfs:range xsd:string ;
> rdfs:domain nso:Article .
>
> nso:publishTime a rdf:Property ;
> rdfs:label "Publish Time" ;
> rdfs:comment "Date when the article was first published in the feed" ;
> rdfs:subPropertyOf dc:date ;
> rdfs:range xsd:dateTime ;
> rdfs:domain nso:Article .
>
> nso:updateTime a rdf:Property ;
> rdfs:label "Update Time" ;
> rdfs:comment "Date when the article was last updated in the feed" ;
> rdfs:subPropertyOf dc:date ;
> rdfs:range xsd:dateTime ;
> rdfs:domain nso:Article .
>
> nso:author a rdf:Property ;
> rdfs:label "Author" ;
> rdfs:comment "Author of the article" ;
> rdfs:range nco:Contact ;
> rdfs:domain nso:Article .
>
> nso:enclosure a rdf:Property ;
> rdfs:label "Enclosure" ;
> rdfs:comment "Enclosure related to the article" ;
> rdfs:range nso:Enclosure ;
> rdfs:domain nso:Article .
>
> nso:isRead a rdf:Property ;
> nrl:maxCardinality 1 ;
> rdfs:label "Is Read" ;
> rdfs:comment "A flag that state whether the item has been read" ;
> rdfs:range xsd:boolean ;
> rdfs:domain nso:Article .
>
> # Properties of nso:Enclosure
>
> nso:type a rdf:Property ;
> nrl:maxCardinality "1" ;
> rdfs:label "Enclosure type" ;
> rdfs:comment "Describes type of the enclosure" ;
> rdfs:range xsd:string ;
> rdfs:domain nso:Enclosure .
>
> nso:length a rdf:Property ;
> nrl:maxCardinality "1" ;
> rdfs:label "Length" ;
> rdfs:comment "Length of audio enclosure (podcast)" ;
> rdfs:range xsd:integer ;
> rdfs:domain nso:Enclosure .
>
> }
>
> <http://www.kde.org/ontologies/nso_metadata#> {
> <http://www.kde.org/ontologies/nso_metadata#> a nrl:GraphMetadata ;
> nrl:coreGraphMetadataFor nso: .
>
> nso: a nrl:Ontology ;
> nao:hasDefaultNamespace "http://www.kde.org/ontologies/nso#" ;
> nao:hasDefaultNamespaceAbbreviation "nso" ;
> nao:lastModified "2013-01-20T22:57:45.656Z" ;
> nao:serializationLanguage "TriG" ;
> nao:status "Unstable" ;
> nao:updatable "0 " ;
> nao:version "2" ;
> nao:prefLabel "Nepomuk Syndication Ontology" ;
> nao:description "The Nepomuk Syndication Ontology extends the Nepomuk
> Information Element framework into the domain of Web Syndication" .
> }
>
>
> Thanks
>
> Dan
>
>
>
> _______________________________________________
> Nepomuk mailing list
> Nepomuk at kde.org
> https://mail.kde.org/mailman/listinfo/nepomuk
>
More information about the Nepomuk
mailing list