Tag Archives: ontology

Toward a Structuralist R D F Schema

When I get the time, I’m going to write a vocab­u­lary cre­ation lan­guage to sup­port struc­tural­ist text inter­pre­ta­tion.  It will con­sist of two specs: one to han­dle the mark­ing up the sur­face fea­tures of text, such as rhetor­i­cal fig­ures and tropes.  This will be based on my work with the Prince­ton Char­rette Project and it will like­ly incor­po­rate some ideas from Steven Bird’s work on anno­ta­tion graphs.  The sec­ond will be either an exten­sion of or a vari­ant of SKOS and|or OWL designed to rep­re­sent extract­ed sym­bol­ic struc­tures.  It will incor­po­rate pred­i­cates to han­dle rela­tions of sig­ni­fi­ca­tion, such as has_part, has_analogy, and has_metonym, between the ele­ments rep­re­sent­ed in the first lan­guage.   At a larg­er lev­el, I want to rep­re­sent holis­tic dimen­sions such as con­text and lev­el, as well as nar­ra­to­log­i­cal things like encom­pass­ment, trans­for­ma­tion, inver­sion, and lim­i­nal­i­ty.

One of the big prob­lems I see in this project is an appar­ent lim­i­ta­tion in RDF to sup­port triples about triples.  For exam­ple, an anal­o­gy is a rela­tion between struc­tures, not terms.  The asser­tion A : B :: C : D is, at minu­mum, an asser­ta­tion about the rela­tion­ship between two asser­ta­tions, A : B and C : D.  (The pred­i­cate of the asser­tions them­selves is usu­al­ly X has_part Y.)  An anol­o­gy looks some­thing like this then:

[A has_part B] just_as [C has_part D]

The eas­i­est way to accom­plish this task would be to pro­vide URIs for each RDF triple.  I haven’t seen a gen­er­al solu­tion to this prob­lem.  I know I can cre­ate local URIs with­in a spe­cif­ic triple store, and use these in triples.  But I need to define an RDF triple as a datatype first.  And I antic­i­pate prob­lems fur­ther down­stream; I won­der if the cur­rent RDF toolset is designed to han­dle index­ing and infer­enc­ing of these kinds of triples.

If any­one has sug­ges­tions about how to han­dle this issue, I’d be glad to hear them.


After writ­ing this, it strikes me that to say that two triples are anal­o­gous is just to say that they share a predicate–so long as that pred­i­cate is suf­fi­cient­ly spec­i­fied.  To assert an anal­o­gy, then, is to assert that such an iden­ti­ty is impor­tant or rel­e­vant in a cer­tain con­text.