0% found this document useful (0 votes)
34 views13 pages

Oewn

The document outlines the design of SQL-UNet version 6.0.0, released in September 2022, detailing its architecture and schema for integrating WordNet. It includes UML diagrams and tables that describe the relationships between various components such as words, senses, and semantic relations. Additionally, it provides information about the database structure and indexing for efficient data retrieval.

Uploaded by

Hậu Chung
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
34 views13 pages

Oewn

The document outlines the design of SQL-UNet version 6.0.0, released in September 2022, detailing its architecture and schema for integrating WordNet. It includes UML diagrams and tables that describe the relationships between various components such as words, senses, and semantic relations. Additionally, it provides information about the database structure and indexing for efficient data retrieval.

Uploaded by

Hậu Chung
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Sql-UNet design

sqlunet 2.0
version 6.0.0
September 2022

Bernard Bou
<[email protected]>
UML
wordnet
WordNet
syntactic category

Morph
WordNet synset
-morph: String

0..* 1..1 has ▸


LexUnit_Morph PartOfSpeech
1..*
1..1 WordNet

has ▸
0..* -pos: PartOfSpeech -pos: {n,v,a,r,s} 1..1 lexicographer file
1..1
1..* 1..1 1..1
1..1 has ▸ has ▸

has ▸
1..* 0..*
LexUnit
1..* 1..* is member of ▸ 1..*
-pos: PartOfSpeech
Synset Domain
1..* 1..1 1..1
-pos: PartOfSpeech has ▸
-domain: String
-domain: Domain 1..1

has ▸
Word -pos: PartOfSpeech
1..1 -definition: String ha
s▸

has ▸
1..1
-word: String 0..* 0..* 0..* Sample
1..1 1..1
is semantically
related to ▸ -sample: String
CasedWord 1..* 1..*
0..1
Sense 0..* 0..*

has ▸
-casedword: String
-sensenum: int WordNet relation
-sensekey: String SemanticRelation
-senseid: long hypernym antonym
Lex_Pronunciation -lexid: int -relation:Relation hyponym similar
0..* -tagcount: int instancehypernym also
1..* instancehyponym attribute
0..* 0..* 0..*
partholonym verbgroup
1..1 is lexically 1..1
related to ▸ partmeronym participle
memberholonym pertainym
has ▸

0..* Pronunciation membermeronym derivation


1..1 substanceholonym domaincategory
1..1 -pronunciation: String 0..* 0..* substancemeronym domainmembercategory
-variety: String Relation entail domainregion
LexicalRelation has ▸ cause domainmemberregion
0..* 1..1 -relation: String domainusage
-relation: Relation domainmemberusage
-recurses: boolean
domain
member
WordNet sense
-sensenum: sense number in set of word
senses
-senseid: line number in index.sense
-sensekey: sense representation
-lexid: index of word sense in
lexicographer file
-tagcount: number of times the
sense has been tagged in various
semantic concordance texts
wordnet
PartOfSpeech
-pos: String

1..1

has ▸
0..*

Synset
LexUnit 1..* has ▸ 1..* -pos: PartOfSpeech
1..1 1..1 -domain: LexDomain
-pos: PartOfSpeech
-definition: String

verbs 1..* 1..* verbs

Sense
VerbFrame VFrameSentence
0..* ◂ has 0..* -sensenum: int 0..* has ▸ 0..*
-frame: String -senseid: int
1..1 1..1 -sensekey: String 1..1 1..1 -sentence: String
-lexid: int
-tagcount: int

0..*

0..* 0..* 0..* 0..*

VerbFrameMap VFrameSentenceMap
has ▸

0..1

AdjectivePosition

-positionid: {a,p,ip}

adjectives whose
senses are restricted
to som positions
like certain, dead,
in, out, up, true, gone
Schemas
wordnet1

pronunciations
morphs

morphid: long morph: String pronunciationid: long pronunciation: String


pk ck pk ck

_pronunciations
lexes_morphs

fk fk
luid: long posid: {n,v,a,r,s} morphid: long luid: long posid: {n,v,a,r,s} pronunciationid: long
pk pk
fk fk

lexes
pk
lexes

luid: long wordid: long casedwordid: long posid: {n,v,a,r,s}


pk fk fk

casedwords
pk ck pk ck
words

wordid: long word: String casedwordid: long casedword: String wordid: long
pk fk

fk fk fk ck ck
senses

luid: long synsetid: long wordid: long casedwordid: long senseid: long sensenum: int sensekey: String lexid: int tagcount: int
pk
fk

poses

pk pk ck
synsets

fk
synsetid: long domainid: int posid: {n,v,a,r,s} definition: String posid: {n,v,a,r,s} pos: String

pk fk
wordnet2

pk
lexes

luid: long wordid: long casedwordid: long posid: {n,v,a,r,s}


fk fk

domains
ck
pk ck
words

domainid: int domainname: String posid: {n,v,a,r,s}


wordid: long word: String
pk
pk

samples
pk
synsets

synsetid: long domainid: int posid: {n,v,a,r,s} definition: String pk ck


pk fk synsetid: long sampleid: int sample: String
fk
semrelations

fk fk
synset1id: long synset2id: long relationid: int
pk

_adjpositions
fk pk
synsetid: long wordid: long positionid: {a,p,ip}

senses
fk fk fk
relations

pk ck
relationid: int relation: String recurses: boolean
pk
lexrelations

fk fk fk fk fk
synset1id: long word1id: long synset2id: long word2id: long relationid: int luid1: long luid2: long
pk
fk fk

fk fk
_vframes

adjpositions
senses

wordid: long synsetid: long frameid: int


pk
pk
positionid: {a,p,ip} position: String
fk
_vtemplates

vframes

fk fk
senses

pk ck
wordid: long synsetid: long sentenceid: int
frameid: int frame: String
pk
fk
vtemplate

pk ck
sentenceid: int sentence: String
Tables
tables

SQL WordNet - core

core relations extra

words lexrelations casedwords lexes_pronunciations

-wordid: long -synset1id: long -luid: long


-lu1id: long -casedid: long
-word: String -wordid: long -wordid: long
-word1id: long -posid: {n,v,a,r,s}
-synset1id: long -casedword: String -pronunciationd: long
-lu2id: long -variety: String
-word2id: long
lexes -relationid: int
pronunciations
lexes_morphs
-luid: long
-wordid: long semrelations -pronunciationid: long
-casedwordid: String -pronunciation: String -luid: long
-posid: {n,v,a,r,s} -wordid: long
-synset1id: long -posid: {n,v,a,r,s}
-synset2id: long -morphid: long
-relationid: int
senses morphs
senses_adjpositions
-luid: long
-wordid: long -morphid: long
-synsetid: long
-casedwordid: long -morph: String -luid: long
-synsetid: long
-sensenum: int -wordid: long
-senseid: long -positionid: {a,p,ip}
-sensekey: String samples
-lexid: int
-tagcount: int -synsetid: long
senses_vframes
-sampleid: int
-sample: String -synsetid: long
synsets -luid: long
-wordid: long
-frameid: int
-synsetid: long
-posid: {n,v,a,r,s} vframes
-domainid: int
-definition: String -frameid: int senses_vtemplates
-frame: String
-synsetid: long
-luid: long
-wordid: long
types vtemplates -templateid: int

relations -template: int


-template: String
-relationid: int
-relation: String
-recurses: boolean

poses

-posid: {n,v,a,r,s}
-pos: String

domains
-domainid: int
-domain: String
-domainname: String
-posid: {n,v,a,r,s}

adjpositions

-positionid: {a,p,ip}
-position: String
wordnet
senses_vframes
vframes
morphs -synsetid: long
-wordid: long -frameid: int
-morphid: long -frameid: int -frame: String
-morph: String

lexes_morphs senses_vtemplates
vtemplates
-luid: long -synsetid: long
-wordid: long -wordid: long -templateid: int
-posid: {n,v,a,r,s} -templateid: int -template: String
-morphid: long

pronunciations senses_adjpositions
adjpositions
-synsetid: long
-pronunciationid: long -wordid: long -positionid: {a,p,ip}
-pronunciation: String -positionid: {a,p,ip} -position: String
poses
lexes_pronunciations
-posid: {n,v,a,r,s}
-pos: String
-luid: long
-wordid: long samples
-posid: {n,v,a,r,s}
-morphid: long
-synsetid: long lexrelations
-sampleid: int
-sample: String -synset1id: long
lexes
-lu1id: long
-word1id: long
-luid: long -synset2id: long
-wordid: long -lu2id: long
-casedwordid: long synsets -word2id: long
-posid: {n,v,a,r,s} -relationid: int relations
-synsetid: long
senses -posid: {n,v,a,r,s} -relationid: int
words -domainid: int -relation: String
-luid: long -definition: String -recurses: boolean
-wordid: long -wordid: long
-word: String -casedwordid: long semrelations
-synsetid: long
-sensenum: int -synset1id: long
-senseid: long domains -synset2id: long
casedwords -sensekey: String -relationid: int
-lexid: int
-tagcount: int -domainid: int
-casedwordid: long -domainname: String
-wordid: long -posid: {n,v,a,r,s}
-casedword: String
MWB
MySQL WorkBench
WordNet (core) morphs
lexes_morphs
morphid INT
words luid INT
morph VARCHAR(70)
wordid INT wordid INT
Indexes
word VARCHAR(80) posid ENUM(...)
Indexes
morphid INT
Indexes

pronunciations
lexes pronunciationid INT

luid INT pronunciation VARCHAR(50)

posid ENUM(...) Indexes

wordid INT

casedwordid INT
Indexes lexes_pronunciations
luid INT

wordid INT

posid ENUM(...)

pronunciationid INT

variety VARCHAR(2)
Indexes

casedwords senses

casedwordid INT senseid INT

wordid INT sensekey VARCHAR(100)


relations
casedword VARCHAR(80) synsetid INT
relationid INT
Indexes luid INT
relation VARCHAR(50)
wordid INT
recurses TINYINT(1)
casedwordid INT
Indexes
lexid INT

sensenum INT

tagcount INT
Indexes semrelations
synset1id INT

synset2id INT

relationid INT
Indexes

domains
domainid INT

domain VARCHAR(32)

domainname VARCHAR(32)

posid ENUM(...)
Indexes
lexrelations
synset1id INT

lu1id INT
synsets
word1id INT
synsetid INT
synset2id INT
posid ENUM(...)
lu2id INT
domainid INT samples
word2id INT
definition MEDIUMTEXT sampleid INT
relationid INT
Indexes sample MEDIUMTEXT
Indexes
synsetid INT
Indexes
WordNet (extra)
words

vframes wordid INT

frameid INT word VARCHAR(80)


Indexes
frame VARCHAR(50)
Indexes

senses_vframes
synsetid INT

luid INT

wordid INT

frameid INT
Indexes

lexes
luid INT

posid ENUM(...)

wordid INT

casedwordid INT
senses_vtemplates
Indexes
synsetid INT

luid INT

wordid INT
senses
templateid INT
Indexes senseid INT

sensekey VARCHAR(100)

synsetid INT

luid INT

wordid INT

casedwordid INT

lexid INT

sensenum INT
vtemplates tagcount INT
templateid INT Indexes
template MEDIUMTEXT
Indexes
poses
posid ENUM(...)

pos VARCHAR(20)
Indexes
synsets
synsetid INT

posid ENUM(...)

domainid INT
senses_adjpositions
definition MEDIUMTEXT
synsetid INT
Indexes
luid INT

wordid INT

positionid ENUM('a', 'p', 'ip')


Indexes

adjpositions
positionid ENUM('a', 'p', 'ip')

position VARCHAR(24)
Indexes

You might also like