110 likes | 209 Views
Implementing ore:isAggregatedBy. Michael L. Nelson ORE TC Meeting Washington DC, Jan 14-15 2007. Summary.
E N D
Implementing ore:isAggregatedBy Michael L. Nelson ORE TC Meeting Washington DC, Jan 14-15 2007
Summary • Beginning as a more specific relationship of “lineage” or “reference in context”, ore:isAggregatedBy is now “just” the (sometimes explicit, sometimes implicit) complimentary relationship to ore:aggregates • Issues: • Atom provides two methods of implementing our original idea of “lineage”: source & via. Only via corresponds to ore:isAggregatedBy; source has no representation in the ORE ADM. This has the potential danger of one serialization being more expressive than the model. • HTML cannot express ore:isAggregatedBy (both by limitation of HTML and the ORE ADM). Depending on one’s tolerance for “hacks”, there may be utility in supporting our original notion of “lineage” by providing HTML hints for ReM discovery.
Aggregation AR-1 Acknowledges it is Recursively Included in Aggregation A-1
source source=??? source source ReM 1 ReM 2 ReM 3 ReM 4 via=isAggregatedBy via via via /feed/entry/source vs. /feed/entry/link[@rel="via"]/@href • source always “points” to 1st ReM • “points”=by-value • via always “points” to n-1 ReM • “points”=by-reference • XML examples: • original ReM: http://www.openarchives.org/ore/0.1/atom-implementation#SplashPages • source: http://www.openarchives.org/ore/0.1/atom-implementation#source • via: http://www.openarchives.org/ore/0.1/atom-implementation#entrylink
Impact of Source • Using source likely to be part of Atom idiom • This statement is not likely to be true: rem.atom == rdf2atom(atom2rdf(rem.atom)) • This is not without precedent (see tables 2 & 3 of http://www.openarchives.org/ore/0.1/atom#ORE_ATOM), but the distinction is that source expresses something more fundamental than the other unmapped, Atom-specific feed & entry elements (e.g., id, title)
Embedding Links to ReMs in Web Resources • HTML <link> elements and even opaque strings exposed to the user are obvious ways to associate an AR with its ReM • http://www.openarchives.org/ore/0.1/discovery#ResourceEmbedding • But it is possible to support the original notion of “lineage”, at least in the context of ReM discovery, by instrumenting HTML <A> and <IMG> elements. Unfortunately, there are tradeoffs between utility, correctness and ease. Three possible solutions follow, 2 listed in the Discovery document and 1 new one.
HTML Option #1: resourcemap attribute <html> ... Here is a helpful reference for distinguishing <a href="http://example.org/pics/f-t.pdf" resourcemap="http://example.org/amphibians.atom">frogs vs. toads</a>. <p> Here is a frog <img src="http://weluvfrogs.org/imgs/frog12.jpeg" resourcemap="http://frogs.org/frogs.atom"> and here is a toad <img src="http://toadsrule.org/toad.gif" resourcemap="http://toadsrule.org/toads.atom">. ... </html> Pro: very simple, human readable Con: invalid HTML
HTML Option #2: <A> rel attribute <html> ... Here is a helpful reference for distinquishing <a href="http://example.org/pics/f-t.pdf" rel="resourcemap=http://example.org/amphibians.atom">frogs vs. toads</a>. <p> Here is a frog <a rel="resourcemap=http://frogs.org/frogs.atom"> <img src="http://weluvfrogs.org/imgs/frog12.jpeg"> </a> and here is a toad <a rel="resourcemap=http://toadsrule.org/toads.atom"> <img src="http://toadsrule.org/toad.gif"> </a>. ... </html> Pro: Valid HTML Con: Not uniform (<A> and <IMG> do not (yet) support the same elements)
HTML Option #3: <span> elements <html> ... Here is a helpful reference for distinguishing <span class="resourcemap=http://example.org/amphibians.atom"> <a href="http://example.org/pics/f-t.pdf" frogs vs. toads</a>. </span> <p> Here is a frog <span class="resourcemap=http://frogs.org/frogs.atom"> <img src="http://weluvfrogs.org/imgs/frog12.jpeg"> </span> and here is a toad <span class="resourcemap=http://toadsrule.org/toads.atom"> <img src="http://toadsrule.org/toad.gif"> </span>. ... </html> Pro: Valid HTML, Uniform Approach Con: No longer simple?
HTML Option #4: class attribute <html> ... Here is a helpful reference for distinguishing <a href="http://example.org/pics/f-t.pdf" class="resourcemap=http://example.org/amphibians.atom">frogs vs. toads</a>. <p> Here is a frog <img src="http://weluvfrogs.org/imgs/frog12.jpeg" class="resourcemap=http://frogs.org/frogs.atom"> and here is a toad <img src="http://toadsrule.org/toad.gif" class="resourcemap=http://toadsrule.org/toads.atom">. ... </html> Pro: very simple, human readable, valid HTML Con: overloads “class”* *http://www.w3.org/TR/REC-html40/struct/global.html#adef-class The class attribute has several roles in HTML: * As a style sheet selector (when an author wishes to assign style information to a set of elements). * For general purpose processing by user agents.