2010-05-13 14 views
6

Jaka jest różnica między tymi dwoma podejściami?RDF poprawne podejście do subClassOf

)

<?xml version="1.0" encoding="UTF-8"?> 
<rdf:RDF 
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" 
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 
    xmlns:tur="http://www.blah.com/turismo#"> 

<rdf:Description rdf:about="http://www.blah.com/turismo#plaza"> 
    <rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/> 
</rdf:Description> 

<rdf:Description rdf:about="http://www.blah.com/turismo#plazaSinFuente"> 
    <rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/> 
    <rdfs:subClassOf rdf:resource="http://www.blah.com/turismo#plaza"/> 
</rdf:Description> 

b)

<rdf:RDF 
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" 
    xmlns:tur="http://www.blah.com/turismo#"> 

    <rdfs:Class rdf:ID="plaza"/> 

<rdfs:Class rdf:ID="plazaSinFuente"> 
     <rdfs:subClassOf rdf:resource="#plaza"/> 
    </rdfs:Class> 

Odpowiedz

5

Tu masz piękny porównania: http://www.ibm.com/developerworks/xml/library/x-tiprdfai.html

cytat z wniosku:

chodzi o wybór między RDF : ID i rdf: około, będziesz najprawdopodobniej użyje tego pierwszego, jeśli opisujesz zasób, który tak naprawdę nie ma znaczącej lokalizacji poza plikiem RDF, który go opisuje. Być może jest to zapis lokalny lub wygody, a nawet proxy dla abstrakcji lub obiektu realnego świata (chociaż zalecam, abyście bardzo starannie opisywali takie rzeczy w RDF, ponieważ prowadzi to do różnego rodzaju zamętu metafizycznego; używanie RDF do opisu rekordów istotnych dla komputera). rdf: about jest zwykle drogą do odniesienia, gdy odwołujesz się do zasobu z ogólnie znanym identyfikatorem lub lokalizacją.

3

W tym przykładzie występuje również inna różnica obok rdf: ID i rdf: about. Jeśli używasz rdf: Description, podajesz opis ogólnego zasobu i możesz podać oddzielną instrukcję typu.

Jeśli element kontenera jest inny niż rdfs: Klasa w drugim przykładzie, to podajesz również informacje o typie.

Zakodowane informacje są takie same, ale drugie kodowanie jest bardziej zwięzłe i czytelne.

Powinieneś również zacząć wpisywać Class localName z wielką literą: Plaza i PlazaSinFuente.