300 likes | 414 Views
Lloyd Rutledge CWI, Amsterdam. Finding the Story — Generating Large-Scale Document Structure in Semantics-to-Hypermedia Transformation. Topia project partners:. Telematica Instituut. Technische Universiteit Eindhoven. The Topia Project. Principles and Goals
E N D
Lloyd Rutledge CWI, Amsterdam Finding the Story — Generating Large-Scale Document Structure in Semantics-to-Hypermedia Transformation
Topia project partners: Telematica Instituut Technische Universiteit Eindhoven The Topia Project • Principles and Goals • Topiary Hypermedia: plant once and trim • Presentation generation • User-controlled and on-demand • Automated propogation of each author change • Structure-focussed • Domain-independence and facilitated specificity
Document Request ala Google generate new multimedia find existing document
structure the engineer content topic search retrieval document the archivist the user style the stylist Document Engineering “Triangle”
the past 10 years paper author Web author find surf read read universally applicable choose style by the end of this talk select/control search database universally applicable generated presentation creator presentation select/control select/control Document Engineering History the past 5000 years the past 5 years post/archive browse results select archive enter query
picks The Topia Architecture user archivist engineer stylist online topic clustering style sheet semantics selection structure presentation
Principles • User Control • pick expert – set options – become author • Cross-applicability • each expert’s contribution applies to any from the others • Show what and why • why archivist selected content for user request • why engineer put concept where it is in structure • why stylist picked each media for its concept
Archivist’s Responsibilities • To user • reasonable (amount of) content for reasonable requests • To engineer • enough relations between subset to derive structure • To stylist • media for presenting concepts in different structural context • Node-based interaction with all levels
text # concept type concept media concept <rdfs:label> property type Archival RDF Code text <rdf:Description rdf:about='&ARIA;#ArtefactSK-A-2670'> <rdf:type rdf:resource='&ARIA;#Artefact'/> <dc:title>Pinks in the Breakers</dc:title> <topia:artefactImage rdf:resource='&RM;SK/Org/SK-A-2670.org.jpg'/> <dc:creator rdf:resource='&ARIA;#Artist11960'/> <dc:date>1875-1885</dc:date> <dc:description> ... along the beach by horses. Scheveningen did not ... </dc:description> <topia:artefactMaterial>Oil on canvas</topia:artefactMaterial> <topia:artefactSize>90 x 181 cm</topia:artefactSize> ... </rdf:Description>
Selection SeRQL Result Code <tableQueryResult> <header> <columnName>Concept</columnName> <columnName>Property</columnName> <columnName>String</columnName> </header> ... <tuple> <uri>&ARIA;#ArtefactSK-A-2670</uri> <uri>http://purl.org/dc/elements/1.1/#description</uri> <literal> ... along the beach by horses. Scheveningen did not ... </literal> </tuple> ... </tableQueryResult>
Clustering for Structure original selection cluster node
sequence Document Structure hierarchical nodes from clustering form introduction and summary displays recurrence parent-child from user query leaf nodes form main displays
Proximity Principle • Proximity Matrix • each pair of selected concepts has a proximity measure • Matching conceptual and structural proximity • grouping, sequence and recurrance convey proximity • Let’s not forget why • presentation should convey why structurally proximate concepts were measured as proximate
Beyond Lattices • Inferred properties to beef up the link metrics • we use art genre sub-class inheritence • rules provided by archivist as domain-specific • Relational clustering • property (ie lattice) functional subset of relational • Can infer relations just like properties • Axial (numeric) clustering • creates virtual group nodes, without RDF resource
Structure Code <node> <concept literal="beach"/> <node> <concept property="artefactThema" resource="&ARIA;#Thema6292"/> <node><concept resource="&ARIA;#ArtefactRP-P-OB-4635"/></node> <node><concept resource="&ARIA;#ArtefactSK-A-2670"/></node> </node> <node> <concept property="type" resource="&ARIA;#Term26402"/> <concept property="type" resource="&ARIA;#BroaderTerm24480"/> <node><concept resource="&ARIA;#ArtefactRP-P-FM-1157-A"/></node> <node> <concept literal="Oil on canvas" property="artefactMaterial"/> <concept property="type" resource="&ARIA;#TopTerm4"/> <node><concept resource="&ARIA;#ArtefactSK-A-4868"/></node> <node><concept resource="&ARIA;#ArtefactSK-A-2670"/></node> <node><concept resource="&ARIA;#ArtefactSK-A-3602"/></node> <node><concept resource="&ARIA;#ArtefactSK-A-3597"/></node> <node><concept resource="&ARIA;#ArtefactSK-A-4644"/></node> </node> </node> </node>
Stylist Responsibilities • Good presentation of each concept • retrieval of good media • Good presentation of structure • global view and local context • Use media, layout and timing to show why • why primary content in presentation • why structure was chosen • group, sequence, (adjacency) and recurrence
One Example of Style original user request outline (structure) main display (node) <dc:title> <dc:title> default progression seen current contextual recurrence access recurrence <dc:creator> <dc:date> <dc:description>
Media for the Stylist • Dublin Core for Main Display Text • title, description, date, creator • Media URI’s for Main Display • Titles and thumbnails for outline and context • <rdfs:label> for why • describes what type of concept a concept is • describes property types, thus relations • “Titus is the son of the painter Rembrandt” concept property type concept type concept
Media Selection XSLT <xsl:template match="*" mode="getDesc"> <xsl:variable name="server" select='sesame:setServer("http://media.cwi.nl:8080/sesame/")'/> <xsl:variable name="rep" select='sesame:setRepository("topia")'/> <xsl:variable name="handle" select="@resource"/> <xsl:variable name="desc"> <sesame:serql query=" SELECT DISTINCT desc FROM {<!{$handle}>} <dc:description> {desc} USING NAMESPACE topia = <!http://www.telin.nl/rdf/topia#> "/> </xsl:variable> <xsl:text> </xsl:text> <xsl:apply-templates select="xalan:nodeset($desc)/tableQueryResult/tuple"/> <xsl:text> </xsl:text> </xsl:template> character escaping removed
Topia Take-home Message • Content/Style/Structure all separate • defined apart and interchangable • full user control from selection as such • Structure is current challenge for generation • can be defined apart and domain-independent • facilitated user/engineer control • Result is user-controlled on-demand hypermedia generation