[NLP2RDF] [Dbpedia-discussion] ANN: NLP Interchange Format (NIF) 1.0 Spec, Demo and Reference Implementation

Christian Chiarcos christian.chiarcos at web.de
Wed Nov 30 13:21:51 CET 2011


> On Tue, Nov 29, 2011 at 03:52:36PM +0100, Christian Chiarcos wrote:
>> >>  http://www.netestate.de/nlp/ontology.rdf
>>
>> I've also taken a look on your ontology, and your data type properties
>> can be rendered as OLiA object properties (e.g., agr by hasNumber and
>> hasPerson).
>
> Thanks. I guess the fact "not first person singular" cannot be rendered with
> any ontology that would be considered useful.

well, in OWL/DL, it would be something like

olia:hasNumber some olia_top:NumberFeature and olia:hasPerson some
olia_top:Person and
not (olia:hasNumber some olia:Singular and olia:hasPerson some olia:First)

(Of course the first line is optional. Such constructs are the reason
why OLiA is OWL/DL and not just something more lightweight.)

> You mean something like this ?
>
>  X a olia:Head
>  X olia_system:hasSource Y
>  Y a sso:Phrase
>  X olia_system:hasTarget Z
>  Z a sso:Word

almost (BTW: namespace is powla, I will announce POWLA later this December)

?x a powla:Relation
?x powla:hasSource ?y
?y a sso:Phrase
?x powla:hasTarget ?z
?z a sso:Word
?x olia:hasSyntacticRole ?sr
?sr a olia:Head

> I use my properties dtr_head and dtr_nonhead to model a HPSG parse tree so
> they connect phrases with subphrases. olia:Head seems to connect a phrase
> with a word and there seems to be no property for the non-head-daughter
> (the subphrase that does not contain the head of the main phrase).

At the moment, OLiA coverage for syntax annotation is restricted to
the annotation schemes covered. With more annotation schemes
formalized in OLiA, new concepts will be introduced, so, it isn't a
definite set at the moment. We could work out a proper OLiA Annotation
Model for your grammar. Something like this has been done before for
HPSG grammars, e.g., by Graham Wilcock (2007), although this was never
linked to the OLiA Reference Model (it isn't publicly available).

> Yes, I prefer something more lightweight.
>
> You are using the recommended modeling for n-ary relations but I am not sure
> if it is a good idea to use it for binary relations (I do not have experience
> with ontology design).

Well, it is the only way I know to model edge labels and node labels
within the same taxonomy without having OWL/Full.

Therefore, labeled relations in a phrase structure tree are
accompanied by another relation powla:hasChild (corresponding to NIF's
substring). The difference is that a powla:hasChild relationship is
always unlabeled. (The original function of powla:hasChild was to
represent the difference between dominance trees [e.g., phrase
structure trees] and dependency trees: A labeled dominance relation is
accompanied by powla:hasChild, a labeled dependency relation is not.)

An alternative modeling could be that only powla:hasChild (resp.
substring) is used and that edge labels are assigned to the child
nodes in the parse tree (this is the approach taken by many parsers).
This would work fine, as long as you have proper parse *trees*.
Whenever a node has more than one parent, ambiguities arise. However,
we could simply require that parses in NIF are always trees.

@Sebastian: Would this be an option for NIF ? Then, it's reasonably
lightweight and you wouldn't have to transform OLiA concepts to
properties.

> Can I use OLiA to model a predicate argument structure ?

Well, I can show you may POWLA modeling, but NIF will probably go for
a less verbose approach.

> "The cat sat on the mat"
>
> the(cat): cat is argument 1 of the
> the(mat): mat is argument 1 of the
> sat(cat): cat is argument 1 of sat
> on(sat,mat): sat is argument 1 of on and mat is argument 2 of on

Yes, of course:

the(cat):
?rel1 a powla:Relation
?rel1 powla:hasSource ?the
?rel1 powla:hasTarget ?cat
?rel1 olia:hasSemanticRole ?sr1
?sr1 a olia:AgentRole

(I assume that arg1 is Agent, for the other slots, additional OLiA
categories may be necessary.)

> The arguments may also be phrases, e.g. "the cat" is argument1 of sat

Nothing changes, only that "the cat" as a phrase would need additional
sso:substring resp. powla:hasChild relationships to ?cat and ?the

Best,
Christian


More information about the NLP2RDF mailing list