Note: This document is a draft. Not all relations have been converted to USD-compatible description yet.
Note: nmod, neg and punct appear in two places.
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
acl
: clausal modifier of noun
acl
stands for finite and non-finite clauses that modify a noun, in
contrast to the advcl relation which is used for adverbial clauses
that modify a predicate. The head of the acl
relation is the noun
that is modified, and the dependent is the head of the clause that
modifies the noun.
These modifiers include infinitive and participial modifiers (correspond to infmod and partmod in the original Turku Dependency Treebank). Instead, the third possible type of clausal modifiers of nouns, relative clause modifier (acl:relcl), is defined as a subtype of acl
.
Minulla oli lupa mennä ulos . \n I had permission to_go out .
nmod:own(oli-2, Minulla-1)
nsubj(oli-2, lupa-3)
acl(lupa-3, mennä-4)
advmod(mennä-4, ulos-5)
punct(oli-2, .-6)
The participial modifier is a participle verb which modifies a noun phrase. Note that the participle can take arguments, for instance a subject, just as any verb. (Also the MA-derivation is treated as a participle in UD Finnish.)
Äidin leipoma kakku oli menestys . \n Mother baked_by cake was success .
nsubj(leipoma-2, Äidin-1)
acl(kakku-3, leipoma-2)
nsubj:cop(menestys-5, kakku-3)
cop(menestys-5, oli-4)
punct(menestys-5, .-6)
Saadut lahjat ilahduttivat lapsia . \n Received presents made_happy children .
acl(lahjat-2, Saadut-1)
nsubj(ilahduttivat-3, lahjat-2)
dobj(ilahduttivat-3, lapsia-4)
punct(ilahduttivat-3, .-5)
Occasionally, participial verb forms can modify a verb as well. These uses include cases that are clearly modifiers, as well as some more complement-like situations. In the complement-like situations, one of the clausal complement types (ccomp, xcomp or xcomp:ds) should be used, whereas modifiers are marked as adverbial clause modifiers (advcl).
Huolestuneena juoksin hänen luokseen . \n Worried I_ran him to .
advcl(juoksin-2, Huolestuneena-1)
nmod(juoksin-2, hänen-3)
case(hänen-3, luokseen-4)
punct(juoksin-2, .-5)
Ksylitoli osoittautui kariesta ehkäiseväksi . \n Xylitol turned_out karies preventing .
nsubj(osoittautui-2, Ksylitoli-1)
xcomp(osoittautui-2, ehkäiseväksi-4)
dobj(ehkäiseväksi-4, kariesta-3)
punct(osoittautui-2, .-5)
Diffs
Turku Dependency Treebank
We do not attempt to distinguish modifiers including secondary predication from other type of modifiers. Therefore, optional predicative like modifiers are attached to the main verb with one of the modifier relations.
acl:relcl
: relative clause modifier
A relative clause modifier (acl:relcl
) marks relative clauses. The
governor is the phrase or clause modified. Usually, it is a noun, but in Finnish it can also be a verb, when the dependent refers to the entire action described. The dependent is the main
predicate of the relative clause.
Mies , jonka hän oli nähnyt eilen , oli taas ovella . \n The_man , whom he had seen yesterday , was again at_the_door .
acl:relcl(Mies-1, nähnyt-6)
punct(nähnyt-6, ,-2)
dobj(nähnyt-6, jonka-3)
nsubj(nähnyt-6, hän-4)
aux(nähnyt-6, oli-5)
advmod(nähnyt-6, eilen-7)
punct(nähnyt-6, ,-8)
nsubj(oli-9, Mies-1)
advmod(oli-9, taas-10)
nmod(oli-9, ovella-11)
punct(oli-9, .-12)
Ovi kolahti auki , mikä säikäytti lapsen . \n The_door clanked open , which scared the_child .
nsubj(kolahti-2, Ovi-1)
advmod(kolahti-2, auki-3)
acl:relcl(kolahti-2, säikäytti-6)
punct(säikäytti-6, ,-4)
nsubj(säikäytti-6, mikä-5)
dobj(säikäytti-6, lapsen-7)
punct(kolahti-2, .-8)
Diffs
Turku Dependency Treebank
The governor can also be a verb, when the dependent refers to the entire action described in the main sentence.
FinnTreeBank
FI_FTB applies the universal relation acl
instead
of the language-specific relation acl:relcl
.
advcl
: adverbial clause modifier
Adverbial clause modifiers (advcl
) are subordinate clauses that
are not complements. Also non-complement infinitival or temporal clauses
(lauseenvastike, see for instance
(see ISK §876) and non-complement participles modifying verbs are
marked as advcl
. If there is a subordinating conjunction present, it
is marked with the dependency type mark.
Kun äiti tuli kotiin , isä keitti kahvia . \n When mother came home , father made coffee .
mark(tuli-3, Kun-1)
nsubj(tuli-3, äiti-2)
nmod(tuli-3, kotiin-4)
punct(tuli-3, ,-5)
nsubj(keitti-7, isä-6)
advcl(keitti-7, tuli-3)
dobj(keitti-7, kahvia-8)
punct(keitti-7, .-9)
Äidin tullessa kotiin isä keitti kahvia . \n Mother when_came home father made coffee .
nsubj(tullessa-2, Äidin-1)
nmod(tullessa-2, kotiin-3)
nsubj(keitti-5, isä-4)
advcl(keitti-5, tullessa-2)
dobj(keitti-5, kahvia-6)
punct(keitti-5, .-7)
Huolestuneena juoksin hänen luokseen . \n Worried I_ran him to .
advcl(juoksin-2, Huolestuneena-1)
nmod(juoksin-2, hänen-3)
case(hänen-3, luokseen-4)
punct(juoksin-2, .-5)
The dependency type advcl
is used also in comparative
constructions, most often involving adjectives in the comparative
form. The head of the advcl
dependency is the comparative
wordform, and the dependent is the compared element.
The annotation of comparative and superlative structures is described in Comparatives and superlatives.
parempi kuin eilinen näytelmä \n better than yesterday's(adj.) play
advcl(parempi-1, näytelmä-4)
mark(näytelmä-4, kuin-2)
amod(näytelmä-4, eilinen-3)
References
advmod
: adverb modifier
The dependency type advmod
is used for adverb modifiers of verbs,
nominals and adverbs alike.
Hän käveli kotiin hitaasti . \n He walked home slowly .
nsubj(käveli-2, Hän-1)
nmod(käveli-2, kotiin-3)
advmod(käveli-2, hitaasti-4)
punct(käveli-2, .-5)
Minä otin kaapista myös vasaran . \n I took from_closet also hammer .
nsubj(otin-2, Minä-1)
nmod(otin-2, kaapista-3)
dobj(otin-2, vasaran-5)
advmod(vasaran-5, myös-4)
punct(otin-2, .-6)
Also quantification modifiers are annotated as adverb modifiers in UD Finnish (correspond to quantmod in the original Stanford Dependencies and the Turku Dependency Treebank). Quantification modifiers are quantifiers that modify a numerical expression. Typically quantifiers are adverbs, but also few adjectives are allowed as quantifiers.
Alue oli suuruudeltaan noin kymmenen neliökilometriä . \n The_area was of_its_size about ten square_kilometres .
nsubj:cop(neliökilometriä-6, Alue-1)
cop(neliökilometriä-6, oli-2)
nmod(neliökilometriä-6, suuruudeltaan-3)
advmod(kymmenen-5, noin-4)
nummod(neliökilometriä-6, kymmenen-5)
punct(neliökilometriä-6, .-7)
amod
: adjectival modifier
Nouns may take adjectival modifiers, which are marked with the
dependency type amod
. It is also possible for an adjective to take
another adjective as a modifier. (These adjectival modifiers are
generally expressed with -ly adverbs in English.)
Tien vieressä on suuri kivi . \n Road next_to is large rock .
nmod(on-3, Tien-1)
adpos(Tien-1, vieressä-2)
nsubj(on-3, kivi-5)
amod(kivi-5, suuri-4)
punct(on-3, .-6)
poikkeuksellisen suuri kivi \n exceptional(ly) large rock
amod(suuri-2, poikkeuksellisen-1)
amod(kivi-3, suuri-2)
appos
: apposition
An apposition (appos
) is a grammaticalized, paradigmatic addition
(usually a noun phrase), which has the same referent as its head word,
and the same grammatical function
(see ISK §1059).
Also structures with a supporting noun
(see ISK §567) are
considered appositional. Appositional structures and the closely
related appellation modifiers are discussed in detail in
the document on
specific syntactic constructions in Finnish.
Professori , Matti Tamminen , luennoi tänään . \n The_professor , Matti Tamminen , lectures today .
appos(Professori-1, Tamminen-4)
punct(Tamminen-4, ,-2)
punct(Tamminen-4, ,-5)
name(Tamminen-4, Matti-3)
nsubj(luennoi-6, Professori-1)
advmod(luennoi-6, tänään-7)
punct(luennoi-6, .-8)
Kirjassa Putkinotko on mielenkiintoinen juoni . \n In_the_book Putkinotko is interesting plot .
appos(Kirjassa-1, Putkinotko-2)
nmod(on-3, Kirjassa-1)
nsubj(on-3, juoni-5)
amod(juoni-5, mielenkiintoinen-4)
punct(on-3, .-6)
aux
: auxiliary
In UD Finnish, only a closed list of verbs can act as auxiliaries, including the main modal verbs (see ISK §1562) and in addition the verbs olla “to be” and aikoa “to be going to”.
The full list of auxiliaries is as follows:
- täytyä “must”
- pitää “have to”
- tarvita “need”
- joutua “have to”
- voida “be able to, can”
- saattaa “may”
- taitaa “be+probably, may”
- mahtaa “be+probably, may”
- olla “be”
- aikoa “be going to”
Examples
Hän saattoi lähteä jo . \n He may(impf.) leave already .
nsubj(lähteä-3, Hän-1)
aux(lähteä-3, saattoi-2)
advmod(lähteä-3, jo-4)
punct(lähteä-3, .-5)
References
- http://scripta.kotus.fi/visk/sisallys.php?p=1562 (in Finnish)
Diffs
In FinnTreeBank (FI_FTB), a wide list of verbs which are
modal or otherwise abstract by nature have been counted
among the auxiliaries. Also a limited set of verbal
compound constructions has been annotated using the
relation aux
. See the full lists in
FTB Annotation Manual: 16.2 Auxiliary verb.
auxpass
: passive auxiliary
The only passive auxiliary (auxpass
) in Finnish is olla (to
be). An auxiliary is only considered a passive auxiliary if the main
verb is in passive, not if only the auxiliary is in passive. In the
latter case the auxiliary is marked as a non-passive auxiliary,
aux.
Suunnitelmaan on tehty muutoksia . \n Into_the_plan have_been made changes .
nmod(tehty-3, Suunnitelmaan-1)
auxpass(tehty-3, on-2)
dobj(tehty-3, muutoksia-4)
punct(tehty-3, .-5)
Suunnitelmaan voidaan tehdä muutoksia . \n Into_the_plan can_be made(1st_inf.) changes .
nmod(tehdä-3, Suunnitelmaan-1)
aux(tehdä-3, voidaan-2)
dobj(tehdä-3, muutoksia-4)
punct(tehdä-3, .-5)
Diffs
FinnTreeBank (FI_FTB) does not use the auxpass
relation,
but uses aux
instead.
case
: case marking
The dependency type case
is used for the adposition in pre- and
postpositional phrases. The head of
an adpositional phrase is the nominal, not the adposition, so as to
analyze adpositional phrases similarly to nominal modifiers without an
adposition. (Such nominal modifiers are frequent in Finnish, as cases
are often used for the same purpose as adpositions.) To the same end,
the type case
is used in combination with the type nmod
, which is
also used for nominal modifiers when no adposition is present (see
nmod).
Talo sijaitsee mäen takana . \n House is_located hill behind .
nsubj(sijaitsee-2, Talo-1)
nmod(sijaitsee-2, mäen-3)
case(mäen-3, takana-4)
punct(sijaitsee-2, .-5)
cc
: coordinating conjunction
Coordinating conjunctions are marked as dependents of the first
coordinated element, and the dependency type used is cc
.
kirjat , kynät ja viivottimet \n books , pencils and rulers
conj(kirjat-1, kynät-3)
punct(kirjat-1, ,-2)
cc(kirjat-1, ja-4)
conj(kirjat-1, viivottimet-5)
cc:preconj
: preconjunct
The preconjunct (cc:preconj
) dependency relation marks the
first part of those two-part coordinating conjunctions where the
two parts are separated by coordinated elements.
See also CCONJ.
sekä talo että piha \n both house and yard
cc:preconj(talo-2, sekä-1)
cc(talo-2, että-3)
conj(talo-2, piha-4)
Such two-part coordinating conjunctions are:
- joko … tai “either … or”
- milloin … milloin “when … when”
- mitä … sitä “the … the”
- niin … kuin “as well as”
- paitsi … myös “not only … but also”
- sekä … että “both … and”
- sitä … mitä “the … the”
- sitä mukaa … mitä “the … the” (alternative wording)
- toisaalta … ja toisaalta “on the one hand … and on the other hand”
- toisaalta … mutta toisaalta “on the one hand … but on the other hand”
- toisaalta … toisaalta “on the one hand … on the other hand”
- vuoroin … vuoroin “in turn … in turn”
- yhtä lailla … kuin (+kin) “as much … as also”
ccomp
: clausal complement
Clausal complement is an object like clausal dependent. The governor is most commonly, although not always, the main verb or predicative of the main clause, and the dependent is the main verb or predicative of the dependent clause. The clausal complement can also modify a word other than a verb, most often a noun or pronoun. Most commonly clausal complements are että-clauses.
If the subject of the clausal complement is controlled (that is, must be the same as the higher subject or object, with no other possible interpretation) the appropriate relation is either xcomp or xcomp:ds.
Sanoin hänelle , että vesi kiehuu . \n I_said to_him , that water boils .
nmod(Sanoin-1, hänelle-2)
ccomp(Sanoin-1, kiehuu-6)
punct(kiehuu-6, ,-3)
mark(kiehuu-6, että-4)
nsubj(kiehuu-6, vesi-5)
punct(Sanoin-1, .-7)
Se , että naapurin koira haukkui kovasti , suututti äitiä . \n It , that neighbor's dog barked loudly , made_angry mother .
ccomp(Se-1, haukkui-6)
punct(haukkui-6, ,-2)
punct(haukkui-6, ,-8)
mark(haukkui-6, että-3)
nmod:poss(koira-5, naapurin-4)
nsubj(haukkui-6, koira-5)
advmod(haukkui-6, kovasti-7)
nsubj(suututti-9, Se-1)
dobj(suututti-9, äitiä-10)
punct(suututti-9, .-11)
Diffs
In FinnTreeBank (FI_FTB), if a clausal complement modifies
a word other than a verb, the reason is most likely
a verb-derived noun
(eg. ei käy kieltäminen, etteikö olisi mennyt(ccomp
)
“no denying that ∅ wouldn’t have gone”).
Clauses modifying regular nouns get marked as acl
:
semmonen kampaus et se kestää(ccomp
)
lit. “the kind of hairstyle that it lasts”
(according to Universal dependency relations: acl).
compound
: compound
compound
is one of the three UD relations UD for compounding,
together with fixed and flat.
UD Finnish additionally defines two subtypes of compound
,
compound:nn for noun compounds and compound:prt
for phrasal verb particles. As the other UD types and the
UD Finnish subtypes cover most cases of compounding, only
few cases are annotated specifically as compound
.
Numerical expressions consisting of multiple tokens are annotated
using the compound
dependency type. The last word of the numerical
expression is the governor, and the number dependencies are chained.
(These relations are annotated number
in
TDT.)
Poikasia on yleensä 3 - 5 . \n Youngsters are usually 3 to 5 .
nsubj:cop(5-6, Poikasia-1)
cop(5-6, on-2)
advmod(5-6, yleensä-3)
compound(--5, 3-4)
compound(5-6, --5)
punct(5-6, .-7)
compound:nn
: noun compound modifier
The dependency type compound:nn
, which stands for noun compound
modifier has two basic uses in the Finnish UD scheme.
First, In Finnish, compounds are generally written as a single word,
but for instance some compounds involving foreign words or proper
names are written separately using a dash. These are annotated using
compound:nn
.
Da Vinci -merkkinen luomiväri \n Da Vinci -make eyeshadow
name(Vinci-2, Da-1)
compound:nn(-merkkinen-3, Vinci-2)
amod(luomiväri-4, -merkkinen-3)
The second use of the type compound:nn
is to mark appellation
modifiers, which are modifying, non-inflecting noun phrases that
generally express profession, rank, position, assignment or other such
classifiable property (see ISK
§1062). The
phenomenon is closely related to that of apposition, and the
distinction between the two is described in
Appositions and appellation modifiers.
Professori Matti Tamminen pitää puheen . \n Professor Matti Tamminen gives a_speech .
compound:nn(Tamminen-3, Professori-1)
name(Tamminen-3, Matti-2)
nsubj(pitää-4, Tamminen-3)
dobj(pitää-4, puheen-5)
punct(pitää-4, .-6)
In written Finnish, erroneously writing compounds as two words is a
common mistake (e.g. ruoka pöytä). While these cases were annotated
as nn
in the TDT corpus, in
UD Finnish goeswith is used instead.
compound:prt
: phrasal particle
Phrasal particles (compound:prt
) are used in connection with phrasal verbs, (partikkeliverbi, “particle verb” in Finnish grammar) where the particle is considered an integral part of the verb expression. The governor of the dependency is the verb, and the dependent is the phrasal particle.
Kävi ilmi , että ehdotus oli hyvä . \n Turned out , that the_suggestion was good .
compound:prt(Kävi-1, ilmi-2)
csubj(Kävi-1, hyvä-7)
punct(hyvä-7, ,-3)
mark(hyvä-7, että-4)
nsubj:cop(hyvä-7, ehdotus-5)
cop(hyvä-7, oli-6)
punct(hyvä-7, .-8)
Verb particles (see ISK §455 and §658) are the only case where particles are distinguished from adverbs in UD Finnish. This distinction can be made by the following rough rules. A word is a verbal particle if it, together with the verb, forms an expression that has a meaning that differs from the meaning of the verb alone, and if the word cannot be modified by an adverb.
For instance, laittaa kiinni (make closed, close) is not a phrasal verb, as kiinni can be modified.
Laitoin oven kokonaan kiinni. (I closed the door entirely.)
In contrast, ottaa kiinni (catch) is a phrasal verb, as it has a meaning distinct from the verb ottaa (take), and kiinni cannot be modified.
*Poliisi otti rosvon kokonaan kiinni. (*The police caught the robber entirely.)
conj
: coordinated element
The SD scheme marks coordination so that the first coordinated element acts as the head, and the rest of the elements in the coordination, as well as the coordinating conjunction, depend on it. Coordinated elements are marked with the dependency type conj
.
maitoa , leipää ja voita \n milk , bread and butter
punct(maitoa-1, ,-2)
conj(maitoa-1, leipää-3)
cc(maitoa-1, ja-4)
conj(maitoa-1, voita-5)
Conj
is in Finnish used also in implicit coordinations without a coordinating conjunction, when the coordinated elements are not separated by a colon, semicolon or dash. When one of these is present, parataxis
is used.
Kenkäkyllästyminen on kamala tauti , haluan kevään jo tänne. \n To\_get\_bored\_with\_shoes is an\_awful disease , I\_want spring already here.
conj(tauti-4, haluan-6)
Diffs
Turku Dependency Treebank
Conj
is used also for implicit coordinations without a coordinating conjunction when the coordinated elements are not separated by a colon, semicolon or dash.
cop
: copula
Copular clauses receive a special treatment in the SD scheme. The
predicative acts as the head word of the clause, and the copular verb
depends on it using a cop
(copula) dependency. The only copular
verb in Finnish is olla “be” (see ISK
§891).
Huivi oli punainen . \n The_scarf was red .
nsubj:cop(punainen-3, Huivi-1)
cop(punainen-3, oli-2)
punct(punainen-3, .-4)
References
- http://scripta.kotus.fi/visk/sisallys.php?p=891 (in Finnish)
csubj
: clausal subject
A clausal subject (csubj
) is a clause that acts as the subject of
another clause.
Hänen aikomuksenaan oli mennä ulos . \n His intention(essive) was to_go out .
poss(aikomuksenaan-2, Hänen-1)
nmod(oli-3, aikomuksenaan-2)
csubj(oli-3, mennä-4)
advmod(mennä-4, ulos-5)
punct(oli-3, .-6)
csubj:cop
: clausal copular subject
A clausal copular subject (csubj:cop
) is a clause that acts as the
subject of another, copular clause. As in all copular clauses, the
predicative acts as the head of the clause and hence it is also the
governor of the copular subject.
Oli hauskaa käydä teatterissa . \n Was fun to_go to_theatre .
cop(hauskaa-2, Oli-1)
csubj:cop(hauskaa-2, käydä-3)
nmod(käydä-3, teatterissa-4)
punct(hauskaa-2, .-5)
dep
: dependent
The dependency type dep
is used when no other, more specific dependency
type applies, for example due to software limitation or error.
In the original TDT corpus, the type dep
is additionally used to
annotate a number of idiomatic multi-word-expressions. In UD Finnish,
these are annotated as fixed.
det
: determiner
There are no definite or indefinite articles in the Finnish language, but there are other determiners (see ISK §1409). In TDT, mostly pronouns are marked as determiners (det
), because numerals, which can also be analyzed as determiner-like, are marked as numeral modifiers nummod, and genitive modifiers, also determiner-like, are marked with nmod:poss.
Kaikki miehet pudistivat päätään . \n All men shook their_head .
det(miehet-2, Kaikki-1)
nsubj(pudistivat-3, miehet-2)
dobj(pudistivat-3, päätään-4)
punct(pudistivat-3, .-5)
discourse
: discourse element
Discourse elements are interjections, exclamations or emoticons. They are attached to the main verb or predicative of the
sentence with the discourse
dependency type. In Finnish, these do not include other discourse markers.
Hei , tule auttamaan ! \n Hey , come to_help !
discourse(tule-3, Hei-1)
punct(Hei-1, ,-2)
xcomp(tule-3, auttamaan-4)
punct(tule-3, !-5)
Hmm ... Mitähän tuohon sanoisi ? \n Umm ... What to_that to_say ?
discourse(sanoisi-5, Hmm-1)
punct(Hmm-1, ...-2)
dobj(sanoisi-5, Mitähän-3)
nmod(sanoisi-5, tuohon-4)
punct(sanoisi-5, ?-6)
Iguazu on Argentiinassa :] \n Iguazu is in Argentina :]
discourse(on-2, :]-4)
Diffs
Turku Dependency Treebank
These do not include other discourse markers than interjections or exclamations.
dislocated
: dislocated elements
The dislocated
relation is used for fronted or postposed elements
that do not fulfill the usual core grammatical relations of a
sentence.
(TODO: Finnish dislocated
example)
Diffs
Turku Dependency Treebank
dislocated
is not annotated in TDT and is not used in
the current version of the UD Finnish corpus.
dobj
: direct object
The dependency type obj
is used for (nominal) direct objects of the
verb.
Hän sulki oven . \n He closed the_door .
nsubj(sulki-2, Hän-1)
dobj(sulki-2, oven-3)
punct(sulki-2, .-4)
As in Finnish a passive clause does not have a subject, and what in
English would be considered the passive subject, is in Finnish the
direct object, the type nsubjpass
is not used in TDT, but the type
obj
is used instead.
Päätös tehtiin marraskuussa . \n The_decision was_made in_November .
dobj(tehtiin-2, Päätös-1)
nmod(tehtiin-2, marraskuussa-3)
punct(tehtiin-2, .-4)
expl
: expletive
This relation captures pleonastic nominals. An expletive or pleonastic nominal is one where the nominal does not satisfy a semantic role of the predicate, such as the existential there in English. The main predicate of the clause (the verb or predicate adjective or noun) is the governor.
(TODO example)
Diffs
Turku Dependency Treebank
expl
is not annotated in TDT and is not used in the current version of the UD Finnish corpus.
fixed
: multi-word expression
The multi-word expression (modifier) relation is used for certain fixed expressions that behave as a unit.
Multiword expressions are annotated in a flat, head-initial structure, in which all words in the expression modify the first one using the mwe label.
Itse asiassa hän tuli jo eilen . \n As_a matter_of_fact he came already yesterday .
mwe(Itse-1, asiassa-2)
advmod(tuli-4, Itse-1)
nsubj(tuli-4, hän-3)
advmod(tuli-4, eilen-6)
advmod(eilen-6, jo-5)
punct(tuli-4, .-7)
flat
: name
Proper names constituted of more than one word are annotated using the dependency type flat
. The first (leftmost) word is the head, and the other words are direct dependents of the head.
The flat
dependency relation is used in cases where the multi-word name does not have an obvious internal syntactic structure, as is the case with for instance names of people (Matti Virtanen) or cities (New York).
If a name has an obvious internal structure, as is often the case in names of books and movies for instance, this structure is marked instead, and the flat
relation is marked as a secondary relation (DEPS field) spanning over the whole name phrase (from first token to the last).
Jumalat juhlivat öisin on Donna Tarttin esikoisteos . \n Gods celebrate by_night is Donna Tartt's first_work .
nsubj(juhlivat-2, Jumalat-1)
nmod(juhlivat-2, öisin-3)
name(Jumalat-1, öisin-3)
nsubj:cop(esikoisteos-7, juhlivat-2)
cop(esikoisteos-7, on-4)
punct(esikoisteos-7, .-8)
name(Donna-5, Tarttin-6)
nmod:poss(esikoisteos-7, Donna-5)
foreign
: foreign
The dependency relation foreign
is used to label sequences
of unanalyzed foreign words. These are annotated without regard
to internal structure, marking all words in the sequence direct
dependents of the head. The head is the first word of the foreign phrase.
Note that foreign
does not apply to foreign names, which
are annotated using flat, or to sequences of analyzed words
of foreign origin (such as established loanwords), which are
annotated with their full syntactic structure.
Opimme fyysikoiden Let's assume a spherical cow -lähestymistavan .
dobj(Opimme-1, -lähestymistavan-8)
nmod:poss(-lähestymistavan-8, fyysikoiden-2)
compound:nn(-lähestymistavan-8, Let's-3)
foreign(Let's-3, assume-4)
foreign(Let's-3, a-5)
foreign(Let's-3, spherical-6)
foreign(Let's-3, cow-7)
punct(Opimme-1, .-9)
goeswith
: goeswith
This goeswith
dependency relation links two parts of a compound word
that are erroneously separated in text that is not well edited. The
head is in some sense the “main” part, often the second part.
Ruoka pöytä notkui herkkuja . \n Food table was_full_of goodies .
goeswith(pöytä-2, Ruoka-1)
nsubj(notkui-3, pöytä-2)
dobj(notkui-3, herkkuja-4)
punct(notkui-3, .-5)
Note that the original TDT
corpus used the nn
relation
(compound:nn in UD Finnish) to annotate these relations.
list
: list
The list
relation is used for chains of comparable items.
Web text often contains passages which are meant to be interpreted
as lists but are parsed as single sentences. Email signatures in
particular contain these structures, in the form of contact
information: the different contact information items are labeled
as list
; the key-value pair relations are labeled as appos.
In lists with more than two items, all items of the list should modify the first one.
Maria Korhonen Puhelin: 555-9814 Sähköposti<EMAIL_ADDRESS>name(Maria-1, Korhonen-2)
list(Maria-1, Puhelin:-3)
list(Maria-1, Sähköposti:-5)
appos(Puhelin:-3, 555-9814-4)
appos(Sähköposti:-5<EMAIL_ADDRESS>Diffs
Turku Dependency Treebank
list
is not annotated in TDT and is not used in
the current version of the UD Finnish corpus.
mark
: marker
A marker (mark
) is the subordinating conjunction in a
non-complement subordinate clause.
Kun tulin kotiin , jätin avaimen pöydälle . \n When I_came home , I_left key on_table .
mark(tulin-2, Kun-1)
nmod(tulin-2, kotiin-3)
punct(tulin-2, ,-4)
advcl(jätin-5, tulin-2)
dobj(jätin-5, avaimen-6)
nmod(jätin-5, pöydälle-7)
punct(jätin-5, .-8)
The dependency relation mark
is also used to identify the
complementizer appearing in most clausal complements, where the head
of the dependency is the main verb of the subordinate clause. The only
complementizer in Finnish is että “that”. (These relations are
annotated complm
in TDT.)
Sanoin , että hän voi tulla . \n I_said , that he can come .
ccomp(Sanoin-1, tulla-6)
punct(tulla-6, ,-2)
mark(tulla-6, että-3)
nsubj(tulla-6, hän-4)
aux(tulla-6, voi-5)
punct(Sanoin-1, .-7)
neg
: negation modifier
In Finnish, negation is marked using the verb ei, which is used as an auxiliary and assigned the dependency relation neg
. The most commonly negated elements are verbs and verb phrases, but occasional exceptions in verbless constructions are allowed.
If a conjunction or adverb has been merged together with ei, as in for instance ettei (että+ei “that+not”) or miksei (miksi+ei “why+not”), then the word is marked as a conjunction or an adverb rather than a negation verb. However, eikä “and+not”, when it appears alone and not coordinating another clause or phrase, is still marked as neg
.
Hän ei sanonut mitään . \n He didn't say anything .
nsubj(sanonut-3, Hän-1)
neg(sanonut-3, ei-2)
dobj(sanonut-3, mitään-4)
punct(sanonut-3, .-5)
Diffs
FinnTreeBank (FI_FTB) is tokenized differently:
it treats ettei the same as että ei (“that not”),
miksei as miksi ei (“why not”) and so on,
as if they were two separate words.
Consequently, ei (“not”) represents a normal negation verb
in these combinations and gets annotated neg
.
On the other hand, eikä (“and+not”) is treated as a single
token with a clitic particle (and also marked as neg
).
nmod
: nominal modifier
Nominal modifiers are inflected nominals which modify most commonly a verb or a noun phrase. They can occur alone or together with an adposition in an adpositional phrase. Both cases are analyzed similarly, as semantically nominal modifiers and adpositional phrases are similar.
Maljakko oli pöydällä . \n The_vase was on_the_table .
nsubj(oli-2, Maljakko-1)
nmod(oli-2, pöydällä-3)
punct(oli-2, .-4)
Maljakko oli pöydän päällä . \n The_vase was table on_top_of .
nsubj(oli-2, Maljakko-1)
nmod(oli-2, pöydän-3)
case(pöydän-3, päällä-4)
punct(oli-2, .-5)
nmod:gobj
: genitive object
Certain nouns, those which have been directly derived from a verb or otherwise have a verb counterpart, can take an object in Finnish. These objects closely resemble more general genitive modifiers nmod:poss.
Perunan viljely oli tuolloin harvinaista . \n Potato(N+genitive) growing(N+nominative) was then rare .
nmod:gobj(viljely-2, Perunan-1)
nsubj:cop(harvinaista-5, viljely-2)
cop(harvinaista-5, oli-3)
advmod(harvinaista-5, tuolloin-4)
punct(harvinaista-5, .-6)
nmod:gsubj
: genitive subject
Genitive subjects are subject-like arguments taken by a noun. This is in parallel to genitive objects nmod:gobj.
maljakon särkyminen \n vase(gen.) breaking
nmod:gsubj(särkyminen-2, maljakon-1)
nmod:own
: haver
In Finnish, there is no direct equivalent to the verb have. Rather, having is expressed using the verb olla, to be. For instance, the meaning of the sentence I have a pen would be expressed in Finnish by Minulla on kynä, literally “At me is a pen”, with “me” in the adessive and “pen” in the nominative case. In UD Finnish, these so called possessive clauses (omistuslause) are analyzed as a subtype to existential clauses, (eksistentiaalilause) making the thing had (kynä in the previous example) the subject.
This kind of an analysis would naturally result in the haver being
marked as a nominal modifier, nmod. However, as nmod
is a very
frequent dependency type that encodes many different meanings, the
information that the clause is about having or owning would be
lost. Therefore, the UD Finnish scheme applies the nmod:own
dependency type for nominal modifiers that encode owning,
following the approach of TDT.
The governor of the dependency is the verb olla, and the dependent
is the haver or owner, which is required to be in the adessive case.
The haver must also be an animate being or a group of animate beings.
Matilla on uusi auto . \n At_Matti is new car .
nmod:own(on-2, Matilla-1)
nsubj(on-2, auto-4)
amod(auto-4, uusi-3)
punct(on-2, .-5)
nmod:poss
: genitive modifier
The dependency type poss
stands for possessive in the original SD
scheme, but in UD Finnish, the corresponding type nmod:poss
is used
for genitive modifiers in general, which in Finnish often but not nearly
always imply possession. There are two kinds of genitive modifiers that
are not annotated using the general genitive modifier type: the genitive
object, nmod:gobj and the genitive subject, nmod:gsubj.
Matin penaali jäi kouluun . \n Matti's pencilcase was_left at_school .
nmod:poss(penaali-2, Matin-1)
nsubj(jäi-3, penaali-2)
nmod(jäi-3, kouluun-4)
punct(jäi-3, .-5)
Autossa on kahden litran moottori . \n In_the_car is two litre's engine .
nmod(on-2, Autossa-1)
nsubj(on-2, moottori-5)
punct(on-2, .-6)
nmod:poss(moottori-5, litran-4)
nummod(litran-4, kahden-3)
Diffs
FinnTreeBank (FI_FTB) applies
the universal relation nmod
instead of the language-specific nmod:poss
.
nsubj
: nominal subject
The dependency type nsubj
marks nominal subjects of the non-copular
clause.
Eeva tuli töistä . \n Eeva came from_work .
nsubj(tuli-2, Eeva-1)
nmod(tuli-2, töistä-3)
punct(tuli-2, .-4)
nsubj:cop
: nominal copular subject
The dependency type nsubj:cop
is used for the nominal subject
of a copular clause. The predicative is the head of the copular
clause, and also the governor of the nsubj:cop
dependency.
Matto on jo kuiva . \n The_mat is already dry .
nsubj:cop(kuiva-4, Matto-1)
cop(kuiva-4, on-2)
advmod(kuiva-4, jo-3)
punct(kuiva-4, .-5)
nummod
: numeric modifier
Numeric modifiers of a noun or NP, including both cardinal and
ordinal numbers, are marked with the nummod
dependency type. This
dependency type is used also with for instance years and program
versions.
Laukku painoi 20 kiloa . \n Bag weighed 20 kilograms .
nsubj(painoi-2, Laukku-1)
dobj(painoi-2, kiloa-4)
nummod(kiloa-4, 20-3)
punct(painoi-2, .-5)
Tapasin hänet vuonna 1972 . \n I_met him in_the_year 1972 .
dobj(Tapasin-1, hänet-2)
nmod(Tapasin-1, vuonna-3)
nummod(vuonna-3, 1972-4)
punct(Tapasin-1, .-5)
orphan
: remnant in ellipsis
The orphan
relation is used to provide a treatment of ellipsis (in
the case of gapping and stripping, where a predicational or verbal
head gets elided). In particular, orphan
aims to provide analyses
that do not postulate empty nodes.
Maija meni Pariisiin ja Mirja Prahaan \n Maija went to Paris and Mirja to Prague
remnant(Maija, Mirja)
remnant(Pariisiin, Prahaan)
Diffs
FinnTreeBank (FI_FTB) does not apply the relation orphan
.
Instead, in elliptical cases the relation conj
has been
chosen to correspond to its correlate in a preceding clause.
parataxis
: parataxis
parataxis
dependencies mark two different phenomena. Firstly, they are used with certain implicit coordinations. These coordinations are recognized by two factors: there is no coordinating conjunction, and the independent clauses are separated by a colon, semicolon or a dash. As with explicit coordinations, the first element is the governor. Also parenthetical and interjected clauses can receive the parataxis
dependency. If there is a coordinating conjunction present (regardless of punctuation) or if the clauses are separated by merely a comma, the coordination type conj
is used (differs from the UD).
Lapset leipoivat piparit ; äiti paistoi ne . \n The_children made the_cookies ; the_mother baked them .
nsubj(leipoivat-2, Lapset-1)
dobj(leipoivat-2, piparit-3)
punct(leipoivat-2, ;-4)
punct(leipoivat-2, .-8)
parataxis(leipoivat-2, paistoi-6)
nsubj(paistoi-6, äiti-5)
dobj(paistoi-6, ne-7)
Ilmoittakaa suoraan sähköpostilla ( palautelomakekin käy ) .
nmod(Ilmoittakaa-1, sähköpostilla-3)
advmod(sähköpostilla-3, suoraan-2)
punct(Ilmoittakaa-1, .-8)
parataxis(Ilmoittakaa-1, käy-6)
nsubj(käy-6, palautelomakekin-5)
punct(käy-6, (-4)
punct(käy-6, )-7)
parataxis
is also used for direct speech. If the verb of saying (or thinking, etc.) precedes the utterance, it acts as the governor, and the main verb or predicative of the utterance is the dependent. However, if the utterance precedes the speech verb, the relation is reversed.
Mies sanoi : Tulen kotiin vasta myöhään . \n The_man said : I_will_come home only late .
nsubj(Mies-1, sanoi-2)
punct(sanoi-2, :-3)
nmod(Tulen-4, kotiin-5)
advmod(Tulen-4, myöhään-7)
advmod(myöhään-7, vasta-6)
parataxis(sanoi-2, Tulen-4)
punct(sanoi-2, .-8)
Tulen kotiin vasta myöhään , mies sanoi . \n I_will_come home only late , the_man said .
nmod(Tulen-1, kotiin-2)
advmod(Tulen-1, myöhään-4)
advmod(myöhään-4, vasta-3)
punct(Tulen-1, ,-5)
nsubj(sanoi-7, mies-6)
parataxis(Tulen-1, sanoi-7)
punct(Tulen-1, .-8)
Diffs
Turku Dependency Treebank
If the clauses are separated by a comma and there is no coordinating conjunction, TDT does not use parataxis
but conj
.
FinnTreeBank
FI_FTB does not apply the parataxis
relation.
Instead, the phenomena of implicit coordination,
parenthetical clauses, interjected clauses and direct speech
have been described using some other, most applicable
relation available (usually conj
or obj
).
punct
: punctuation
The dependency type punct
is used to mark punctuation. The dependent is the punctuation symbol, and the governor is the element which the punctuation symbol delimits. For instance, with coordination, the first coordinated element is the head of all punct
dependencies in the coordination, and with subordinate clauses, the head of the subordinate clause is the governor of the punct
.
kerrostaloja , rivitaloja ja omakotitaloja \n blockhouses , rowhouses and one_family_houses
punct(kerrostaloja-1, ,-2)
conj(kerrostaloja-1, rivitaloja-3)
cc(kerrostaloja-1, ja-4)
conj(kerrostaloja-1, omakotitaloja-5)
Kotona oli hiljaista , kun hän palasi . \n At_home was quiet , when he returned .
advmod(oli-2, Kotona-1)
xcomp(oli-2, hiljaista-3)
advcl(oli-2, palasi-7)
punct(palasi-7, ,-4)
punct(oli-2, .-8)
mark(palasi-7, kun-5)
nsubj(palasi-7, hän-6)
Diffs
By the current release of FI_FTB (FinnTreeBank), the manual annotation of punctuation marks has not been completed. Instead the automatic annotation links the punctuation marks to the closest token available (usually the previous one).
reparandum
: overridden disfluency
We use reparandum
to indicate disfluencies overridden in a speech
repair. The disfluency is the dependent of the repair.
(TODO: Finnish reparandum
example)
Diffs
Turku Dependency Treebank
reparandum
is not annotated in TDT and is not used in
the current version of the UD Finnish corpus.
FinnTreeBank
The relation reparandum
is used in FI_FTB
for the clearest cases of speech repair.
root
: root
The root
grammatical relation points to the root of the sentence. A
fake node ROOT
is used as the governor.
ROOT Minä pidän oluesta .
root(ROOT, pidän)
vocative
: vocative modifier
The dependency type vocative
is used for vocatives, that is,
expressions where someone is being addressed. The governor of the
dependency is the main predicate of the clause where the addressing
occurs.
Pekka , tulisitko tänne ? \n Pekka , would_you_come here ?
vocative(tulisitko-3, Pekka-1)
punct(Pekka-1, ,-2)
advmod(tulisitko-3, tänne-4)
punct(tulisitko-3, ?-5)
xcomp
: open clausal complement
The dependency type xcomp
is reserved for clausal complements which have an external subject, that is, whose subject is shared with the complemented verb (a phenomenon also known as subject control). Note that the subject of the complementing clause must be the subject of the complemented verb, not any other sentence element (in other cases the dependency type xcomp:ds should be used instead). These complements are always non-finite.
Hän alkoi hakata halkoja . \n He started chopping the_wood .
nsubj(alkoi-2, Hän-1)
xcomp(alkoi-2, hakata-3)
dobj(hakata-3, halkoja-4)
punct(alkoi-2, .-5)
Many of the complements with an external subject resemble cases that are analyzed as main verbs with auxiliaries. Both auxiliaries and xcomp
complements share their subject with another verb, but only a closed list of verbs are analyzed as auxiliaries (see aux). Note also that in auxiliary cases the second verb is the governor, whereas with xcomp
the first verb becomes governor (unless the word order is inverse).
Secondary predicates
The xcomp
relation is also used in constructions that are known as secondary predicates or predicatives, which are core arguments of the predicate. Most commonly these are adjetives, but also participial and nominal arguments are possible. For example in the sentence Hän teki siitä hyvin vaikeaa there are two mixed predicates: 1) hän teki jotain, and 2) se on vaikeaa. The secondary predication can be provided to any higher clause element.
Hän teki siitä hyvin vaikeaa . \n He made (from_)it very difficult .
nsubj(teki, Hän)
nmod(teki, siitä)
advmod(vaikeaa, hyvin)
xcomp(teki, vaikeaa)
punct(teki, .)
Minulla oli mukavaa .
xcomp(oli, mukavaa)
nmod(oli, Minulla)
punct(oli, .)
Note: Adjectival complements correspond to acomp
(adjectival complement) in
the original Stanford Dependencies and the Turku Dependency
Treebank.
Diffs
Secondary predication is not recognized in FinnTreeBank (FI_FTB).
Therefore xcomp
is always a non-finite verb
(or a predicative of a non-finite copular clause) in FI_FTB.
As the examples above represent types of result and state clauses
(ISK § 891),
in FI_FTB they have been annotated using predicatives
(see chapter Copulas in Specific constructions).
xcomp:ds
: clausal complement with different subject
The dependency type xcomp:ds
, which stands for clausal
complement with different subject, is a subtype of xcomp (open clausal complement).
It is used for clausal complements where the subject of the complement clause is inherited from the higher clause, but it’s not a subject of the governing clause (if it is a subject, xcomp is used instead). Basically, this means that the subject of the complementing clause must be the object of the complemented clause. These complements are always non-finite.
Note that this subtype represents a departure from the general UD taxonomy approach in differentiating between inherited subject and object (see Syntax: General Principles).
Sain hänet itkemään . \n I_made him cry .
xcomp:ds(Sain-1, itkemään-3)
nsubj(itkemään-3, hänet-2)
punct(Sain-1, .-4)


Hi ,
I am interfacing the CT sensor and arduino to the matlab and would like to get the original signal obtained from a CT sensor in the Matlab. Can anyone guide me on the steps to be performed initially for the digital to analog conversion and getting back the original signal in Matlab.
Thank you for your guidance. :)
Re: Digital to analog conversion
That is going to be difficult without knowing exactly what you want to do with it once you have it. The standard sketch gathers around 2500 sample pairs (voltage and current) per second, sampling current only would approximately double that. But you then have the problem of getting the numbers out to do anything with them. If you want only one cycle or so, what I've done in the past is store the data in an array and read it back at leisure (i.e. not real time). Or you could go down the route I used for the pictures in the report on the ct, which is feed it into a PC sound card and capture the data from that - you can then easily have 48k samples per second, and that completely bypasses the Atmega 328.
Re: Digital to analog conversion
I just want to perform the FFT analysis of the original current signal after obtaining the signal after D/A processing in Matlab. I have successfully tried reading and storing the data in an array in Matlab for two cycles, and those are sufficient for me.
Any suggestion on how to obtain the signal approximate to the original current signal in Matlab ?
Re: Digital to analog conversion
...connect the current transformer output to the audio input of a PC, and capture a WAV file (open source Audacity is very good for this- can even do a basic FFT if you wanted)
Re: Digital to analog conversion
off and you can use more highPlug the CT into power kit why not plug the Current TX into a PC and use open source Audacity to record as much as you like as "audio"? Audacity can do a simple FFTplesor easy to export from there as .wav samples
Re: Digital to analog conversion
Isn't that almost exactly what I suggested above? Try reading the report on the YHDC ct for details of how to do it. The phase angle measurements came out of a spreadsheet doing the DFT calculations, the original data was captured as explained in the report.


FUTURE SHOCK: UPROAR
Stockport, UK
Stockport Guild Hall
Visit website
Card
To be confirmed.
Venue
O2 Ritz
Whitworth Street West
M1 5NQ
Manchester, UK
0161 236 4355


The localization middleware uses the Accept-Language
header to guess the preferred locale out of the given options. If a request path maps to a resource, that resource is returned. Otherwise, a localized request is made.
use Utopia::Localization,
:default_locale => 'en',
:locales => ['en', 'de', 'ja', 'zh']
Somewhere further down the chain, you can localize a resource:
localization = Utopia::Localization[request]
show_welcome(localization.current_locale)


| Number of Classes | Line Coverage | Mutation Coverage |
|---|---|---|
| 130 | 55% | 47% |
| Name | Number of Classes | Line Coverage | Mutation Coverage |
|---|---|---|---|
| org.joda.time | 33 | 20% |
13% |
| org.joda.time.base | 12 | 33% |
23% |
| org.joda.time.chrono | 30 | 72% |
59% |
| org.joda.time.convert | 13 | 98% |
89% |
| org.joda.time.field | 25 | 68% |
58% |
| org.joda.time.format | 10 | 81% |
71% |
| org.joda.time.tz | 7 | 78% |
59% |


Command line interface¶
luacheck program accepts files, directories and rockspecs as arguments.
- Given a file, luacheck will check it.
- Given -, luacheck will check stdin.
- Given a directory, luacheck will check all files with .lua extension within it.
- Given a rockspec (a file with .rockspec extension), luacheck will check all files with .lua extension mentioned in the rockspec in build.install.lua, build.install.bin and build.modules tables.
The output of luacheck consists of separate reports for each checked file and ends with a summary:
$ luacheck src
Checking src/bad_code.lua Failure
src/bad_code.lua:3:16: unused variable helper
src/bad_code.lua:3:23: unused variable length argument
src/bad_code.lua:7:10: setting non-standard global variable embrace
src/bad_code.lua:8:10: variable opt was previously defined as an argument on line 7
src/bad_code.lua:9:11: accessing undefined variable hepler
Checking src/good_code.lua OK
Checking src/python_code.lua Syntax error
Checking src/unused_code.lua Failure
src/unused_code.lua:3:18: unused argument baz
src/unused_code.lua:4:8: unused loop variable i
src/unused_code.lua:5:13: unused variable q
src/unused_code.lua:7:11: unused loop variable a
src/unused_code.lua:7:14: unused loop variable b
src/unused_code.lua:7:17: unused loop variable c
src/unused_code.lua:13:7: value assigned to variable x is unused
src/unused_code.lua:14:1: value assigned to variable x is unused
src/unused_code.lua:22:1: value assigned to variable z is unused
Total: 14 warnings / 1 error in 4 files
luacheck exits with 0 if no warnings or errors occured and with a positive number otherwise.
Command line options¶
Short options that do not take an argument can be combined into one, so that -qqu is equivalent to -q -q -u. For long options, both --option value or --option=value can be used.
Options taking several arguments can be used several time; --ignore foo --ignore bar is equivalent to --ignore foo bar.
Note that options that may take several arguments, such as --globals, should not be used immediately before positional arguments; given --globals foo bar file.lua, luacheck will consider all foo, bar and file.lua global and then panic as there are no file names left.
| Option | Meaning |
|---|---|
| -g | --no-global | Filter out warnings related to global variables. |
| -r | --no-redefined | Filter out warnings related to redefined variables. |
| -u | --no-unused | Filter out warnings related to unused variables. |
| -a | --no-unused-args | Filter out warnings related to unused arguments and loop variables. |
| -v | --no-unused-values | Filter out warnings related to unused values. |
| -s | --no-unused-secondaries | Filter out warnings related to unused variables set together with used ones. |
| --no-unset | Filter out warnings related to unset variables. |
| --std <std> | Set standard globals. <std> must be one of:
|
| --globals [<global>] ... | Add custom globals on top of standard ones. |
| --new-globals [<global>] ... | Set custom globals. Removes custom globals added previously. |
| -c | --compat | Equivalent to --std=max. |
| -d | --allow-defined | Allow defining globals implicitly by setting them. |
| -t | --allow-defined-top | Allow defining globals implicitly by setting them in the top level scope. |
| -m | --module | Limit visibility of implicitly defined globals to their files. See Modules |
| --no-unused-globals | Filter out warnings related to set but unused global variables. |
| --ignore <var> [<var>] ... | Filter out warnings related to variables named <var>. |
| --only <var> [<var>] ... | Filter out warnings not related to variables named <var>. |
| -l <limit> | --limit <limit> | Exit with 0 if there are <limit> or less warnings (default: 0). |
| --config <config> | Path to custom configuration file (default: .luacheckrc). |
| --no-config | Do not look up custom configuration file. |
| -q | --quiet | Suppress report output for files without warnings.
|
| --no-color | Do not colorize output. |
| -h | --help | Show help and exit. |


# Open Source
notes:
- I believe open source is for everybody
- Yes you!
- It is not just for techies
- It doesn't care what you do, what your job title is, how much you earn, what you are wearing
- The only thing open source cares about is you pay it a visit, few hours, or few weeks
## Why Open Source
Transparency, Visibility, Collaboration, Authenticity
notes:
- People want to be part of something bigger than themselves
- Higher quality, not just features and less bugs but including security, performance, accessibility
- Maintainers + Contributors are both proud of their work - friends, colleagues, future employers can see
- Great way to hire people - they know your team, your project
## What is Open Source
Social coding
notes:
- GitHub the main platform for open source strapline is “social coding”
- Facebook / Instagram for code
- Now it has recipes, blogs, templates, books, science, education, legal documents etc
- open hardware designs including robots, cars, houses, bridges etc
## Who
Google, Microsoft, Netflix, Facebook, Twitter, Adobe, Guardian, Uber, Amazon,
Monzo, Starling Bank, Revolut, FreeAgent, Governments
notes:
- Lloyds have just started, sent their team to GitHub Universe
- Their 2019 mission as a group is open source first
- Collaborating with the challenger banks (already with Monzo)
- Lloyds have realised they don't need faster horses, they need cars
## Example projects
Angular, React, Bootstrap, Material, NodeJS
notes:
- Some of these have over 30k contributors
## Projects
96M+ repos, 200M+ contributions
notes:
- Vscode 20k contributors
- Angular 10k contributors
- People hours: 20k -> 10k -> 1hour a month -> 5k x 1hr = over 625 working days = team of over 30
- Trends: javascript is the most popular language
## People
31M+ people, 8M+ new people, 2.1M+ organisations
notes:
- Organisations on Github grew by 40% last year alone
## Open Source Benefits
notes:
- Larger community, higher quality
## GitHub Benefits
notes:
- Market Place with many integrations
## Responsibilities
notes:
- Maintainers need to response quickly otherwise people will lose interest
- Living project
- Marathon not a sprint
## Why not Open Source
notes:
- passwords / tokens / private keys / secrets are not a reason
## Conclusion
notes:
- Open source is like going to the gym, to get the benefit you need to put in the effort
- You don't need a faster horse, you need a car
Requirements
- Laptop
- Internet
- GitHub account
## Mini hackathon
Steps
- Create an open source project
- Make a web page
- Add a form to the web page
- Send the form to our API


{% extends "base.html" %} {% load staticfiles %} {% load crispy_forms_tags %} {% block title %}{{ block.super }}About{% endblock %} {% block navbar-left %} {% include "_navbar.html" with active_link="about" %} {% endblock %} {% block content %}
Your reading kept in mind :)
The Wonderful People Behind the Site
Jason Mwenyo
Meet our Front-end developer, with his well established knowledge in the practice of using HTML, CSS, JavaScript and Python. He concentrates more on making any kind of interface as catchy as possible.
Melkisedek Hamakali
Meet the man himself, with his very versatile skills in most if not all programming platforms, he not only spearheads the team, but also ensures the SET-IT grows in every way possible.
Given Sangwali
Just like every travel needs a map, Software development needs a framework. Meet the man that ensures every code has a start and ending to it's work.


The word 'सफ़रनामा' comes from Safarnāma or Safarnāmé (Persian: سفرنامه), also spelled as safarnameh, is a travel literature written during the 11th century by Nasir Khusraw (1003-1077). It is also known as the Book of Travels and was a work that shaped the future of classical Persian travel writing.


Drew grew up in a small rural area outside of Cincinnati Ohio. Upon graduating highschool Drew worked at various places, including Verizon and Sprint dealing with all kinds of technology. Drew followed his momma to Florida, where he met the girl of his dreams, fell in love and finally setteled down and married the one he loved.


Back
Which themes are you interested in?
Themes are broad categories used to group the kinds of services government delivers, such as 'immigration' or 'childcare and parenting'.
Add as many themes as you like.
Themes are broad categories used to group the kinds of services government delivers, such as 'immigration' or 'childcare and parenting'.
Add as many themes as you like.


--- layout: default title: "404: Page not Found" ---
Sorry, we've misplaced that URL or it's pointing to something that doesn't exist.
Head back home to try finding it again.
{% highlight java %} //Java code in HTML java.io.FileNotFoundException: Response: "404: Not Found"; {% endhighlight%} {% highlight html %}


As in any world class academic institution, library services in IIT Roorkee are the core of academic services, and therefore, Central Library of the Institute finds a unique place in Academic Service centres. Besides Central Library every academic department/centre has its own departmental library which contains the core collection required by the concerned department/centre.
The Central Library of the Institute is one of the best academic libraries in the country. With its collection of more than 3,20,000 documents it provides the world class information support to its users. Besides printed books and journals, its collection contains all forms of documents such as CD-ROMs, On line databases, audio-video material, standards, specifications, theses, reports etc.
Important contacts:
Librarian
Tel.: 01332-285939, 285239
e-mail<EMAIL_ADDRESS><EMAIL_ADDRESS>Deputy Librarian
I/C Periodical Section, Plagiarism, Administration,
Maintenance & Rajbhasha
Tel.: 01332-285358, Mob.:<PHONE_NUMBER>
<EMAIL_ADDRESS>Institute Computer Centre
This is the place where we can have all the networking and technical things headquartered.ICC also provides students some licensed software at free of cost.It is especially useful to freshers who don't have a laptop to work with.Any compliant realated to network issues in the campus can be filed or solved here.
Important contacts:
Head ICC
Tel:+91-1332-285701 (O)
      +91-1332-285443 (R)
e-mail<EMAIL_ADDRESS>Lecture Hall Complex
The place where you would gain a lot of knowledge through intearactive class sessions with professors.There is a very speed wifi availble at LHC's.There are two LHC's:


UIListCellAdapter
This component encapsulates a cell with a child view that may contain bindings to a list element.
class UIListCellAdapter
extends
UIRenderableController
<
UICell
>
Component that can be used as an adapter to render items in a UIListController
. Instances are constructed using a single argument (a managed object from UIListController.items
), and encapsulate a UICell
component.
Encapsulated content can include bindings to the object
, value
, selected
, and hovered
properties.
Events of type ActionEvent
are wrapped in an event of type UIListCellAdapterEvent
, which contains references to the cell and current list item object or value. Events that are already of type UIListCellAdapterEvent
are not wrapped a second time, i.e. event properties are specific to the innermost adapter.
Constructor
<TObject extends ManagedObject = ManagedObject>(object: TObject): UIListCellAdapter<TObject>
.object
TObject
The encapsulated object.
.value
any
The intrinsic value of the encapsulated object (result of valueOf()
called on the original object).
.propagateComponentEvent() deprecated
(name: string, inner?:
ManagedEvent
): void
Create and emit a UIListCellAdapterEvent
with given name and a reference to this component and its cell and object.
Deprecated: in v3.1.
.emitAction()
(name: string, inner?:
ManagedEvent
, context?:
ManagedObject
): void
Emit an an action event (overridden from Component.emitAction
, to emit UIListCellAdapterEvent
instead).
.delegateEvent() protected
(e:
ManagedEvent
, propertyName: string): true
Override event delegation, to delegate events of type UIListCellAdapterEvent
, if not already wrapped.
.selected
boolean
True if the cell is currently selected (based on Select
and Deselect
events; read-only).
.hovered
boolean
True if the cell is currently hovered over using the mouse cursor (based on MouseEnter
and MouseLeave
events; read-only).
.requestFocus()
(): void
Request input focus on the current cell.
.requestFocusNext()
(): void
Request input focus for the next sibling cell.
.requestFocusPrevious()
(): void
Request input focus for the previous sibling cell.
.renderContext
Inherited from UIRenderableController.renderContext
.
.content
TContent
Inherited from UIRenderableController.content
.
.render()
(callback?: RenderCallback<Output<
UIRenderable
, any>>): void
Inherited from UIRenderableController.render
.
.isPresetComponent() protected
(): boolean
Inherited from Component.isPresetComponent
.
.getParentComponent()
<TParent extends Component = Component>(ParentClass?:
ComponentConstructor
<TParent>): TParent
Inherited from Component.getParentComponent
.
.getBoundParentComponent()
<TParent extends Component>(ParentClass?:
ComponentConstructor
<TParent>): TParent
Inherited from Component.getBoundParentComponent
.
.managedId
number
Inherited from ManagedObject.managedId
.
.managedState
Inherited from ManagedObject.managedState
.
.getReferenceCount() protected
(): number
Inherited from ManagedObject.getReferenceCount
.
.getManagedReferrers() protected
():
ManagedObject
[]
Inherited from ManagedObject.getManagedReferrers
.
.getManagedParent() protected
<TParent extends ManagedObject = ManagedObject>(ParentClass?:
ManagedObjectConstructor
<TParent>): TParent
Inherited from ManagedObject.getManagedParent
.
.emit()
<TEvent extends ManagedEvent = ManagedEvent, TConstructorArgs extends any[] = any[]>(e: string | TEvent | (new (...args: TConstructorArgs) => TEvent), ...constructorArgs: TConstructorArgs): this
Inherited from ManagedObject.emit
.
.emitChange()
(name?: string): void
Inherited from ManagedObject.emitChange
.
.propagateChildEvents() protected deprecated
(...types: ((new (...args: any[]) =>
ManagedEvent
) | ((e:
ManagedEvent
) => any))[]): this
Inherited from ManagedObject.propagateChildEvents
.
.activateManagedAsync() protected
(): Promise<any>
Inherited from ManagedObject.activateManagedAsync
.
.deactivateManagedAsync() protected
(): Promise<void>
Inherited from ManagedObject.deactivateManagedAsync
.
.destroyManagedAsync() protected
(): Promise<void>
Inherited from ManagedObject.destroyManagedAsync
.
.onManagedStateActivatingAsync() protected
(): Promise<void>
Inherited from ManagedObject.onManagedStateActivatingAsync
.
.onManagedStateActiveAsync() protected
(): Promise<void>
Inherited from ManagedObject.onManagedStateActiveAsync
.
.onManagedStateDeactivatingAsync() protected
(): Promise<void>
Inherited from ManagedObject.onManagedStateDeactivatingAsync
.
.onManagedStateInactiveAsync() protected
(): Promise<void>
Inherited from ManagedObject.onManagedStateInactiveAsync
.
.onManagedStateDestroyingAsync() protected
(): Promise<void>
Inherited from ManagedObject.onManagedStateDestroyingAsync
.
UIListCellAdapter.Presets
type Presets = Omit<
UICell.Presets
, keyof EventPresets> & EventPresets;
UICell presets type, for use with Component.with
.


Ordering Page
Table
Entrees
Snack
Beverage
Burger
$10.99
Sandwitch
$9.99
Salad
$6.99
Soup
$5.99
coke
$1.99
Beer
$2.99
Language
Ordered List:
Customer 1:
Next
Subtotal:
0
Total(with tax):
0
Confirm
Made of: something here
Language
中文
English


Shows ads from Admob.
View the Using Titanium Modules document for instructions on getting started with using this module in your application.
The Google AdMob Ads SDK has the following requirements:
To access this module from JavaScript, you would do the following:
js
var Admob = require('ti.admob');
https://developers.google.com/mobile-ads-sdk/
Ti.Admob.createView(args)
Creates and returns a Ti.Admob.View object which displays ads. See the AdView docs for details.
parameters[object]: a dictionary object of properties defined in Ti.Admob.View.
js
var ad = Admob.createView({
bottom: 0,
width: 320, // Will calculate the width internally to fit its container if not specified
height: 50,
debugEnabled: true, // If enabled, a dummy value for `adUnitId` will be used to test
adType: Admob.AD_TYPE_BANNER, // One of `AD_TYPE_BANNER` (default) or `AD_TYPE_INTERSTITIAL`
adUnitId: '<<YOUR ADD UNIT ID HERE>>', // You can get your own at http: //www.admob.com/
adBackgroundColor: 'black',
testDevices: [Admob.SIMULATOR_ID], // You can get your device's id by looking in the console log
contentURL: 'https://admob.com', // URL string for a webpage whose content matches the app content.
requestAgent: 'Titanium Mobile App', // String that identifies the ad request's origin.
extras: { 'npa': "1", 'version': 1.0, 'name': 'My App' }, // Object of additional infos. NOTE: npa=1 disables personalized ads (!)
tagForChildDirectedTreatment: false, // http:///business.ftc.gov/privacy-and-security/childrens-privacy for more infos
keywords: ['keyword1', 'keyword2']
});
disableSDKCrashReporting()
Disables automated SDK crash reporting. If not called, the SDK records the original exception handler if available and registers a new exception handler. The new exception handler only reports SDK related exceptions and calls the recorded original exception handler.
disableAutomatedInAppPurchaseReporting()
Disables automated in app purchase (IAP) reporting. Must be called before any IAP transaction is initiated. IAP reporting is used to track IAP ad conversions. Do not disable reporting if you use IAP ads.
requestConsentInfoUpdateForPublisherIdentifiers(args)
Requests consent information update for the provided publisher identifiers. All publisher identifiers used in the application should be specified in this call. Consent status is reset to unknown when the ad provider list changes.
publisherIdentifiers
(Array<String>)callback
(Function)showConsentForm(args)
Shows a consent modal form. Arguments:
shouldOfferPersonalizedAds
(Boolean)
Indicates whether the consent form should show a personalized ad option. Defaults to true
.shouldOfferNonPersonalizedAds
(Boolean)
Indicates whether the consent form should show a non-personalized ad option. Defaults to true
.shouldOfferAdFree
(Boolean)
Indicates whether the consent form should show an ad-free app option. Defaults to false
.callback
(Function)
Callback to be triggered once the form completes.resetConsent()
Resets consent information to default state and clears ad providers.
setTagForUnderAgeOfConsent(true|false)
Sets whether the user is tagged for under age of consent.
isTaggedForUnderAgeOfConsent()
(Boolean)Indicates whether the user is tagged for under age of consent.
consentStatus
(CONSENT_STATUS_UNKNOWN
, CONSENT_STATUS_NON_PERSONALIZED
or CONSENT_STATUS_PERSONALIZED
)adProviders
(Array)Array of ad providers.
debugIdentifiers
(Array)Array of advertising identifier UUID strings. Debug features are enabled for devices with these identifiers. Debug features are always enabled for simulators.
debugGeography
(DEBUG_GEOGRAPHY_DISABLED
, DEBUG_GEOGRAPHY_EEA
or DEBUG_GEOGRAPHY_NOT_EEA
)Debug geography. Used for debug devices only.
To receive an interstitional ad, you need to call ad.receive()
instead of adding it to the viewe hierarchy.
It fires the didReceiveAd
event if the ad was successfully received, the didFailToReceiveAd
event otherwise. Please check
the example for a detailed example of different banner types.
⚠ Removed by the Admob SDK 7.x and Ti.Admob 2.2.0
Starting in 2.1.0 you can use the included iAd adapter to turn on the iAd mediation in your Admob account.
Starting in 2.4.0 you can use the included Facebook Audience Network adapter to turn on the mediation in your Admob account. Here you do not have to do anything :) You only need to configure mediation in your AdMob and Facebbok accounts by following the official guide: https://developers.google.com/admob/ios/mediation/facebook
CONSENT_STATUS_UNKNOWN
Returned by consentStatus
if the consent status is unknown.
CONSENT_STATUS_NON_PERSONALIZED
Returned by consentStatus
if the consent status is not personalized.
CONSENT_STATUS_PERSONALIZED
Returned by consentStatus
if the consent status is personalized.
DEBUG_GEOGRAPHY_DISABLED
Returned by debugGeography
if geography debugging is disabled.
DEBUG_GEOGRAPHY_EEA
Returned by debugGeography
if geography appears as in EEA for debug devices.
DEBUG_GEOGRAPHY_NOT_EEA
Returned by debugGeography
if geography appears as not in EEA for debug devices.
SIMULATOR_ID
A constant to be passed in an array to the testDevices
property to get test ads on the simulator.
GENDER_MALE
A constant to be passed to the gender
property to specify a gender if used. Deprecated by the AdMob SDK.
GENDER_FEMALE
A constant to be passed to the gender
property to specify a gender if used. Deprecated by the AdMob SDK.
GENDER_UNKNOWN
A constant to be passed to the gender
property to specify a gender if used. Deprecated by the AdMob SDK.
See example.
Jeff Haynie, Stephen Tramer, Jasper Kennis, Jon Alter, Hans Knoechel
View the change log for this module.
Please direct all questions, feedback, and concerns to<EMAIL_ADDRESS>Copyright(c) 2010-Present by Appcelerator, Inc. All Rights Reserved. Please see the LICENSE file included in the distribution for further details.


Python script to convert wrfout into Geotiff and some issues
2014-02-05
To visualize WRF output in GIS platform so that it would have an extra hand in interactive visualization and spatial analysis out of it. Python script (modified from http://lists.osgeo.org/pipermail/gdal-dev/2013-November/037602.html and http://geoexamples.blogspot.in/2013/09/reading-wrf-netcdf-files-with-gdal.html) used to convert NetCDF into GeoTIFF format. However, the given scripts in those links are throwing an error while converting eWRF NetCDF output, saying there are multiple bands in specific variables say for example U10. Slightly changed those code to collect one band out of 24 bands in U10 (In some variables the band number goes around 650, like P) and converted into GeoTIFF without error and can visualize it in QGIS. Below script is a modified version.
from osgeo import gdal
from osgeo import osr
import numpy
import numpy.ma as ma
datafile = 'wrfout_d01_2008-04-28_00:00:00'
proj_out = osr.SpatialReference()
proj_out.SetMercator(0.0, 115.02, 0.98931892612652, 0.0, 0.0)
ds_in = gdal.Open(datafile)
subdatasets = ds_in.GetSubDatasets()
variables = []
for subdataset in subdatasets:
variables.append(subdataset[1].split(" ")[1])
ds_lon = gdal.Open('NETCDF:"wrfout_d01_2008-04-28_00:00:00":XLONG')
ds_lat = gdal.Open('NETCDF:"wrfout_d01_2008-04-28_00:00:00":XLAT')
longs = ds_lon.GetRasterBand(1).ReadAsArray()
lats = ds_lat.GetRasterBand(1).ReadAsArray()
ds_lon = None
ds_lat = None
proj_gcp = osr.SpatialReference()
proj_gcp.ImportFromEPSG(4326)
transf = osr.CoordinateTransformation(proj_gcp, proj_out)
ul = transf.TransformPoint(float(longs[0][0]), float(lats[0][0]))
lr = transf.TransformPoint(float(longs[len(longs)-1][len(longs[0])-1]),
float(lats[len(longs)-1][len(longs[0])-1]))
ur = transf.TransformPoint(float(longs[0][len(longs[0])-1]),
float(lats[0][len(longs[0])-1]))
ll = transf.TransformPoint(float(longs[len(longs)-1][0]),
float(lats[len(longs)-1][0]))
gt0 = ul[0]
gt1 = (ur[0] - gt0) / len(longs[0])
gt2 = (lr[0] - gt0 - gt1*len(longs[0])) / len(longs)
gt3 = ul[1]
gt5 = (ll[1] - gt3) / len(longs)
gt4 = (lr[1] - gt3 - gt5*len(longs) ) / len(longs[0])
gt = (gt0,gt1,gt2,gt3,gt4,gt5)
ds_u10 = gdal.Open('NETCDF:"'+datafile+'":U10')
i=23
num_bands = ds_u10.RasterCount
x_size = ds_u10.RasterXSize
y_size = ds_u10.RasterYSize
ds_p_b = ds_u10.GetRasterBand(num_bands - i).ReadAsArray()
driver = gdal.GetDriverByName( 'GTiff' )
ds_out = driver.Create( 'u10.tiff', x_size, y_size, 1, gdal.GDT_Float32 )
ds_out.SetGeoTransform( gt )
ds_out.SetProjection(proj_out.ExportToWkt())
ds_out.GetRasterBand(1).WriteArray( ds_p_b )


R/progenyPermutations.r
progenyPerm.Rd
Compute progeny pathway scores and assesses significance based on permutations
progenyPerm( df, weight_matrix, k = 10000, z_scores = TRUE, get_nulldist = FALSE )
| df | A data.frame of n*m+1 dimension, where n is the number of omic features to be considered and m is the number of samples/contrasts. The first column should be the identifiers of the omic features. These identifiers must be coherent with the identifiers of the weight matrix. |
|---|---|
| weight_matrix | A progeny coefficient matrix. the first column should be the identifiers of the omic features and should be coherent with the identifiers provided in df. |
| k | The number of permutations to be performed to generate the null-distribution used to estimate the significance of progeny scores. The default value is 10000. |
| z_scores | if true, the z-scores will be returned for the pathway activity estimations. Else, the function returns a normalized z-score value between -1 and 1. |
| get_nulldist | if true, the null score distribution used for normalization will be returned along with the actual normalized score data frame. |
This function returns a list of two elements. The first element is a data frame of p*m+1 dimensions, where p is the number of progeny pathways, and m is the number of samples/contrasts. Each cell represents the significance of a progeny pathway score for one sample/contrast. The significance ranges between -1 and 1. The significance is equal to x*2-1, x being the quantile of the progeny pathway score with respect to the null distribution. Thus, this significance can be interpreted as the equivalent of 1-p.value two-sided test over an empirical distribution) with the sign indicating the direction of the regulation. The second element is the null distribution list (a null distribution is generated for each sample/contrast).
# use example gene expression matrix gene_expression <- as.matrix(read.csv(system.file("extdata", "human_input.csv", package = "progeny"), row.names = 1)) # calculate pathway activities progeny(gene_expression, scale=TRUE, organism="Human", top=100, perm=10000)#> Androgen EGFR Estrogen Hypoxia JAK.STAT MAPK NFkB p53 #> SRR1039508 -0.8362 0.1964 -0.3524 0.9996 0.7756 0.4110 -0.5528 0.9310 #> SRR1039509 -0.4944 0.0444 -0.6588 0.9996 0.4928 0.3220 -0.4226 0.8852 #> SRR1039512 -0.7920 0.2006 -0.4054 0.9994 0.7016 0.4058 -0.4318 0.9166 #> SRR1039513 -0.4322 0.0888 -0.6774 1.0000 0.6672 0.4530 -0.4654 0.7770 #> SRR1039516 -0.7806 0.2562 -0.3104 0.9996 0.6286 0.4166 -0.3336 0.9198 #> SRR1039517 -0.5116 0.5476 -0.6676 1.0000 0.4808 0.7268 -0.3894 0.8104 #> SRR1039520 -0.8042 0.3280 -0.3976 0.9994 0.6168 0.5570 -0.6398 0.9012 #> SRR1039521 -0.3400 0.1316 -0.6660 1.0000 0.4992 0.5676 -0.6298 0.7804 #> PI3K TGFb TNFa Trail VEGF WNT #> SRR1039508 0.1656 0.5390 -0.5962 -0.3624 0.0566 -0.1118 #> SRR1039509 0.0828 0.7702 -0.4380 -0.3110 0.0660 -0.1766 #> SRR1039512 0.1604 0.6970 -0.4774 -0.3114 0.0546 -0.1698 #> SRR1039513 -0.0630 0.8022 -0.4954 -0.2414 0.0772 -0.2848 #> SRR1039516 0.1522 0.6836 -0.3830 -0.3382 0.2762 -0.3244 #> SRR1039517 0.3704 0.8758 -0.4358 -0.3612 0.2562 -0.3990 #> SRR1039520 0.1596 0.7016 -0.6738 -0.2768 -0.0808 -0.1116 #> SRR1039521 0.0416 0.8198 -0.6466 -0.2534 -0.0634 -0.3198


Get a job: Manticore Games is looking for a Backend Engineer
by StaffThe Gamasutra Job Board is the most diverse, active and established board of its kind for the video game industry!
Here is just one of the many, many positions being advertised right now.
Backend Engineer, Manticore Games
Location: San Mateo, California
Manticore Games is creating CORE, a digital playground and community designed to unleash imagination and revolutionize game creation, distribution, and play.
We are looking for Backend Engineers at all levels to help revolutionize the way we create, play, and share gameplay experiences. To do the best work possible, we prefer engineers be based at HQ; however, remote work can be considered on a case by case basis.
Responsibilities
- Develop and support platform tools and features.
- Troubleshoot operational problems as they arise, test fixes, and perform follow-ups to ensure issues have been correctly resolved.
- Ensure and provide expertise in best security practices.
- Seek and recommend improvements to current processes and technologies used.
- Participate in code reviews for projects written by your team.
Requirements
- 5 years of backend development experience.
- Experience developing in Java or C#/.NET Core.
- Experience working with cloud databases.
- BS degree in Computer Science or a related field or 5+ years industry experience as the degree equivalent.
Pluses
- Hands-on experience with container technologies (Docker and Kubernetes)
- Experience in multi-region and multi-cloud deployments.
- Experience working with social media concepts.
- Experience with Azure and/or gCloud.
Manticore Games provides equal employment opportunities to all employees and applicants for employment and prohibits discrimination and harassment of any type without regard to race, religion, age, sex, national origin, disability status, genetics, protected veteran status, sexual orientation, gender identity or expression, or any other characteristic protected by federal, state or local laws.
Interested? Apply now.
About the Gamasutra Job Board
Whether you're just starting out, looking for something new, or just seeing what's out there, the Gamasutra Job Board is the place where game developers move ahead in their careers.
Gamasutra's Job Board is the most diverse, most active, and most established board of its kind in the video game industry, serving companies of all sizes, from indie to triple-A.
Looking for a new job? Get started here. Are you a recruiter looking for talent? Post jobs here.


Demo isn't really working, as there isn't any server to recieve the uploads.
Drop your files here
Error while uploading file.
File exceeds maxium size.
File type not allowed.


%-- Created by IntelliJ IDEA. User: wangkun Date: 2016/4/23 Time: 10:33 To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@include file="/context/mytags.jsp" %>
Laboratory Information Management System


easyJet rakes in nearly £4million a day in extra passenger charges
The budget airline's add-ons from checked-in baggage to in-flight food and drink generated almost £1.4billion in the year to the end of September
by Graham Hiscott, https://www.mirror.co.uk/authors/graham-hiscott/Budget airline easyJet has raked in nearly £4million a day in extra passenger charges.
Add-ons from checked-in baggage to in-flight food and drink generated almost £1.4billion in the year to the end of September.
The value of these “ancillary” sales was up nearly 14% on the previous year, and was worth around a fifth of easyJet’s near £6.4billion of total annual revenue.
Growth in add-ons outstripped a rise in passenger numbers, which grew by 8.6% to 96 million.
Ryanair’s ancillary sales soared 21% to £2billion. It came as easyJet announced plans to become the world’s first major airline to operate net-zero carbon flights across its network.
The move, from yesterday, will mean it offsets all carbon emissions by investing in CO2-reducing projects, including tree planting.
Chief executive Johan Lundgren said: “People are thinking about the potential carbon impact of different types of transport. We want to be one of the best choices.”
The £25million cost over the next year equates to 25p per passenger, and compares with an expected fuel bill of £1.6billion.
Mr Lundgren said it was not “a long-term solution”, adding costs were not being added on to tickets.
The move, along with plans to launch package holidays, came as easyJet revealed annual profits fell 26% to £427million.


Actions, resources, and condition keys for AWS RoboMaker
AWS RoboMaker (service prefix:
robomaker
) provides the following service-specific resources, actions, and condition context keys for use in IAM permission policies.
References:
-
Learn how to configure this service .
-
View a list of the API operations available for this service .
-
Learn how to secure this service and its resources by using IAM permission policies.
Topics
Actions defined by AWS RoboMaker
You can specify the following actions in the
Action
element of an IAM policy statement. Use policies to grant permissions to perform an operation in AWS. When you use an action in a policy, you usually allow or deny access to the API operation or CLI command with the same name. However, in some cases, a single action controls access to more than one operation. Alternatively, some operations require several different actions.
The
Resource types
column of the Actions table indicates whether each action supports resource-level permissions. If there is no value for this column, you must specify all resources ("*") to which the policy applies in the
Resource
element of your policy statement. If the column includes a resource type, then you can specify an ARN of that type in a statement with that action. If the action has one or more required resources, the caller must have permission to use the action with those resources. Required resources are indicated in the table with an asterisk (*). If you limit resource access with the
Resource
element in an IAM policy, you must include an ARN or pattern for each required resource type. Some actions support multiple resource types. If the resource type is optional (not indicated as required), then you can choose to use one of the optional resource types.
The
Condition keys
column of the Actions table includes keys that you can specify in a policy statement's
Condition
element. For more information on the condition keys that are associated with resources for the service, see the
Condition keys
column of the Resource types table.
For details about the columns in the following table, see Actions table .
| Actions | Description | Access level | Resource types (*required) | Condition keys | Dependent actions |
|---|---|---|---|---|---|
| BatchDeleteWorlds | Delete one or more worlds in a batch operation | Write | |||
| BatchDescribeSimulationJob | Describe multiple simulation jobs | Read | |||
| CancelDeploymentJob | Cancel a deployment job | Write | |||
| CancelSimulationJob | Cancel a simulation job | Write | |||
| CancelSimulationJobBatch | Cancel a simulation job batch | Write | |||
| CancelWorldExportJob | Cancel a world export job | Write | |||
| CancelWorldGenerationJob | Cancel a world generation job | Write | |||
| CreateDeploymentJob | Create a deployment job | Write |
iam:CreateServiceLinkedRole |
||
| CreateFleet | Create a deployment fleet that represents a logical group of robots running the same robot application | Write | |||
| CreateRobot | Create a robot that can be registered to a fleet | Write |
iam:CreateServiceLinkedRole |
||
| CreateRobotApplication | Create a robot application | Write | |||
| CreateRobotApplicationVersion | Create a snapshot of a robot application | Write |
s3:GetObject |
||
| CreateSimulationApplication | Create a simulation application | Write | |||
| CreateSimulationApplicationVersion | Create a snapshot of a simulation application | Write |
s3:GetObject |
||
| CreateSimulationJob | Create a simulation job | Write |
iam:CreateServiceLinkedRole |
||
| CreateWorldExportJob | Create a world export job | Write | |||
| CreateWorldGenerationJob | Create a world generation job | Write | |||
| CreateWorldTemplate | Create a world template | Write | |||
| DeleteFleet | Delete a deployment fleet | Write | |||
| DeleteRobot | Delete a robot | Write | |||
| DeleteRobotApplication | Delete a robot application | Write | |||
| DeleteSimulationApplication | Delete a simulation application | Write | |||
| DeleteWorldTemplate | Delete a world template | Write | |||
| DeregisterRobot | Deregister a robot from a fleet | Write | |||
| DescribeDeploymentJob | Describe a deployment job | Read | |||
| DescribeFleet | Describe a deployment fleet | Read | |||
| DescribeRobot | Describe a robot | Read | |||
| DescribeRobotApplication | Describe a robot application | Read | |||
| DescribeSimulationApplication | Describe a simulation application | Read | |||
| DescribeSimulationJob | Describe a simulation job | Read | |||
| DescribeSimulationJobBatch | Describe a simulation job batch | Read | |||
| DescribeWorld | Describe a world | Read | |||
| DescribeWorldExportJob | Describe a world export job | Read | |||
| DescribeWorldGenerationJob | Describe a world generation job | Read | |||
| DescribeWorldTemplate | Describe a world template | Read | |||
| GetWorldTemplateBody | Get the body of a world template | Read | |||
| ListDeploymentJobs | List deployment jobs | List | |||
| ListFleets | List fleets | List | |||
| ListRobotApplications | List robot applications | List | |||
| ListRobots | List robots | List | |||
| ListSimulationApplications | List simulation applications | List | |||
| ListSimulationJobBatches | List simulation job batches | List | |||
| ListSimulationJobs | List simulation jobs | List | |||
| ListSupportedAvailabilityZones [permission only] | Lists supported availability zones | List | |||
| ListTagsForResource | List tags for a RoboMaker resource | List | |||
| ListWorldExportJobs | List world export jobs | List | |||
| ListWorldGenerationJobs | List world generation jobs | List | |||
| ListWorldTemplates | List world templates | List | |||
| ListWorlds | List worlds | List | |||
| RegisterRobot | Register a robot to a fleet | Write | |||
| RestartSimulationJob | Restart a running simulation job | Write | |||
| StartSimulationJobBatch | Create a simulation job batch | Write |
iam:CreateServiceLinkedRole |
||
| SyncDeploymentJob | Ensures the most recently deployed robot application is deployed to all robots in the fleet | Write |
iam:CreateServiceLinkedRole |
||
| TagResource | Add tags to a RoboMaker resource | Tagging | |||
| UntagResource | Remove tags from a RoboMaker resource | Tagging | |||
| UpdateRobotApplication | Update a robot application | Write | |||
| UpdateRobotDeployment [permission only] | Report the deployment status for an individual robot | Write | |||
| UpdateSimulationApplication | Update a simulation application | Write | |||
| UpdateWorldTemplate | Update a world template | Write |
Resource types defined by AWS RoboMaker
The following resource types are defined by this service and can be used in the
Resource
element of IAM permission policy statements. Each action in the
Actions table
identifies the resource types that can be specified with that action. A resource type can also define which condition keys you can include in a policy. These keys are displayed in the last column of the Resource types table. For details about the columns in the following table, see
Resource types table
.
| Resource types | ARN | Condition keys |
|---|---|---|
| robotApplication |
arn:$
{
Partition}:robomaker:$
{
Region}:$
{
Account}:robot-application/$
{
ApplicationName}/$
{
CreatedOnEpoch}
|
|
| simulationApplication |
arn:$
{
Partition}:robomaker:$
{
Region}:$
{
Account}:simulation-application/$
{
ApplicationName}/$
{
CreatedOnEpoch}
|
|
| simulationJob |
arn:$
{
Partition}:robomaker:$
{
Region}:$
{
Account}:simulation-job/$
{
SimulationJobId}
|
|
| simulationJobBatch |
arn:$
{
Partition}:robomaker:$
{
Region}:$
{
Account}:simulation-job-batch/$
{
SimulationJobBatchId}
|
|
| deploymentJob |
arn:$
{
Partition}:robomaker:$
{
Region}:$
{
Account}:deployment-job/$
{
DeploymentJobId}
|
|
| robot |
arn:$
{
Partition}:robomaker:$
{
Region}:$
{
Account}:robot/$
{
RobotName}/$
{
CreatedOnEpoch}
|
|
| deploymentFleet |
arn:$
{
Partition}:robomaker:$
{
Region}:$
{
Account}:deployment-fleet/$
{
FleetName}/$
{
CreatedOnEpoch}
|
|
| worldGenerationJob |
arn:$
{
Partition}:robomaker:$
{
Region}:$
{
Account}:world-generation-job/$
{
WorldGenerationJobId}
|
|
| worldExportJob |
arn:$
{
Partition}:robomaker:$
{
Region}:$
{
Account}:world-export-job/$
{
WorldExportJobId}
|
|
| worldTemplate |
arn:$
{
Partition}:robomaker:$
{
Region}:$
{
Account}:world-template/$
{
WorldTemplateJobId}
|
|
| world |
arn:$
{
Partition}:robomaker:$
{
Region}:$
{
Account}:world/$
{
WorldId}
|
Condition keys for AWS RoboMaker
AWS RoboMaker defines the following condition keys that can be used in the
Condition
element of an IAM policy. You can use these keys to further refine the conditions under which the policy statement applies. For details about the columns in the following table, see
Condition keys table
.
To view the global condition keys that are available to all services, see Available global condition keys .
| Condition keys | Description | Type |
|---|---|---|
| aws:RequestTag/${TagKey} | Filters access based on the tags that are passed in the request | String |
| aws:ResourceTag/${TagKey} | Filters access based on the tags associated with the resource | String |
| aws:TagKeys | Filters access based on the tag keys that are passed in the request | ArrayOfString |


NuDB is an append-only key-value store that is optimized for SSD drives.
NuDB has nearly constant performance and memory footprints regardless of the amount of data being stored. NuDB requires a solid-state drive, but uses much less RAM than RocksDB to access a large database.
Non-validator production servers should be configured to use NuDB and to store the amount of historical data required for the use case.


Basketball Shoe
Kyrie 4 "Uncle Drew"
Review (21) ⭐⭐⭐⭐⭐
$120
Choose Size
| M 10.5/W 12 | M 10.5/W 12 | M 10.5/W 12 |
| M 10.5/W 12 | M 10.5/W 12 | M 10.5/W 12 |
| M 10.5/W 12 | M 10.5/W 12 | M 10.5/W 12 |
| M 10.5/W 12 | M 10.5/W 12 | M 10.5/W 12 |
The Kyrie 4 "Uncle Drew" Men's Basketball Shoe is ultra-flexible, responsive and supportive. It's designed for Kyrie Irving's sudden changes of direction and smooth yet rapid playing style.
Shown: Black/Silver
Style: 943806-100


Your task in this exercise is to show the behavior for array-based list deletion. In the array displayed below, the "current" position is delete_pos.
Click on a value to highlight it, then click on the return box to remember the highlighted element. Move elements in the array as appropriate by first clicking on the element that you want to move (to highlight it), then click on where it goes.
Move the element being deleted to the return box.
If "current" is not the last element of the array, shift all elements after "current" one position to the left.


Sven Doom's
Name Generator
#
Female
Male
Wild card!
Compound name
Last name
1231231
Sorry your browser does not support local storage.


Table Element
Description
The table element allows you to build an HTML table in Nitrogen.
Attributes
rows
One or more tablerow elements.
Set the rows to be rendered within the table element.
See Also


Index
All Classes and Interfaces|All Packages|Serialized Form
A
- actionPerformed(ActionEvent) - Method in class SolarSystemGUI
-
Event handler.
- add(String, double, double, double, double, String) - Method in interface SolarSystemController
-
Add a new solar object with the given characterisitcs, that orbits the centre of the screen.
- add(String, double, double, double, double, String, String) - Method in interface SolarSystemController
-
Add a new solar object with the given characterisitcs, that orbits a given parent object (e.g.
- addSolarSystemController(SolarSystemController) - Method in class SolarSystemGUI
-
Register a given SolarSystemController with this GUI.
D
- drawSolarObject(double, double, double, String) - Method in class SolarSystem
-
Draws a round shape in the window at the given co-ordinates that represents an object in the solar system.
- drawSolarObjectAbout(double, double, double, String, double, double) - Method in class SolarSystem
-
Draws a round shape in the window at the given co-ordinates.
F
- finishedDrawing() - Method in class SolarSystem
-
Updates the window to show all objects that have recently been drawn using drawSolarObject() or drawSolarObjectAbout().
P
- paint(Graphics) - Method in class SolarSystem
-
A method called by the operating system to draw onto the screen -
R
- remove(String) - Method in interface SolarSystemController
-
Removes the given object from the screen.
S
- SolarSystem - Class in Unnamed Package
-
This class provides a graphical user interface to a model of the solar system
- SolarSystem(int, int) - Constructor for class SolarSystem
-
Create a view of the Solar System.
- SolarSystemController - Interface in Unnamed Package
-
Defines the methods that a SolatSystemController is required to implement.
- SolarSystemGUI - Class in Unnamed Package
-
A class to provide a simple GUI to add and remove planets and moons in a solar system.
- SolarSystemGUI() - Constructor for class SolarSystemGUI
-
Creates a new SolarSystemGUI A simple graphical user interface is displayed, which prompts the user to enter data relating to new planets and moons.
All Classes and Interfaces|All Packages|Serialized Form


This notice applies to all information collected or submitted on the DIGITAL ARCHIVE. We collect transactions with the DIGITAL ARCHIVE, including searches, video plays, your volunteered comments, and search filter actions. The transactions are marked with an anonymized tag (a series of numbers and letters) that uniquely identifies you, but which by itself is meaningless. No personally identifiable information is collected with the analytics for this site.
Your search and other transaction information is used in research reports only in anonymized form. The data is used by researchers to improve the interface to the DIGITAL ARCHIVE, for auditing, research and analysis in order to maintain, protect and improve our services, for ensuring the technical functioning of our network, and for developing new services. We use non-identifying and aggregate information to better design our website and to perhaps in the future to share with advertisers. For example, we may tell an advertiser that X number of individuals visited a certain area on our website.
To prevent unauthorized access, maintain data accuracy, and ensure the correct use of information, we have put in place appropriate physical, electronic, and managerial procedures to safeguard and secure the information we collect online.
See The HistoryMakers main website for more information.


| %line | %branch | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| org.apache.commons.jexl.ExpressionImpl |
|
|
| 1 | /* |
|
| 2 | * Copyright 2002-2006 The Apache Software Foundation. |
|
| 3 | * |
|
| 4 | * Licensed under the Apache License, Version 2.0 (the "License"); |
|
| 5 | * you may not use this file except in compliance with the License. |
|
| 6 | * You may obtain a copy of the License at |
|
| 7 | * |
|
| 8 | * http://www.apache.org/licenses/LICENSE-2.0 |
|
| 9 | * |
|
| 10 | * Unless required by applicable law or agreed to in writing, software |
|
| 11 | * distributed under the License is distributed on an "AS IS" BASIS, |
|
| 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
|
| 13 | * See the License for the specific language governing permissions and |
|
| 14 | * limitations under the License. |
|
| 15 | */ |
|
| 16 | ||
| 17 | package org.apache.commons.jexl; |
|
| 18 | ||
| 19 | import java.util.ArrayList; |
|
| 20 | import java.util.List; |
|
| 21 | ||
| 22 | import org.apache.commons.jexl.parser.SimpleNode; |
|
| 23 | ||
| 24 | /** |
|
| 25 | * Instances of ExpressionImpl are created by the {@link ExpressionFactory}, |
|
| 26 | * and this is the default implementation of the {@link Expression} interface. |
|
| 27 | * |
|
| 28 | * @since 1.0 |
|
| 29 | * @author <a<EMAIL_ADDRESS>Magnusson Jr.</a> |
|
| 30 | * @version $Id: ExpressionImpl.java<PHONE_NUMBER>-04-26 06:47:52Z dion $ |
|
| 31 | */ |
|
| 32 | class ExpressionImpl implements Expression { |
|
| 33 | ||
| 34 | /** resolvers called before expression evaluation. */ |
|
| 35 | protected List preResolvers; |
|
| 36 | ||
| 37 | /** resolvers called after expression evaluation. */ |
|
| 38 | protected List postResolvers; |
|
| 39 | ||
| 40 | /** |
|
| 41 | * Original expression. This is just a 'snippet', not a valid statement |
|
| 42 | * (i.e. foo.bar() vs foo.bar(); |
|
| 43 | */ |
|
| 44 | protected String expression; |
|
| 45 | ||
| 46 | /** |
|
| 47 | * The resulting AST we can call value() on. |
|
| 48 | */ |
|
| 49 | protected SimpleNode node; |
|
| 50 | ||
| 51 | /** |
|
| 52 | * do not let this be generally instantiated with a 'new'. |
|
| 53 | * |
|
| 54 | * @param expr the expression. |
|
| 55 | * @param ref the parsed expression. |
|
| 56 | */ |
|
| 57 | 271 | ExpressionImpl(String expr, SimpleNode ref) { |
| 58 | 271 | expression = expr; |
| 59 | 271 | node = ref; |
| 60 | 271 | } |
| 61 | ||
| 62 | /** |
|
| 63 | * {@inheritDoc} |
|
| 64 | */ |
|
| 65 | public Object evaluate(JexlContext context) throws Exception { |
|
| 66 | 272 | Object val = null; |
| 67 | ||
| 68 | /* |
|
| 69 | * if we have pre resolvers, give them a wack |
|
| 70 | */ |
|
| 71 | 272 | if (preResolvers != null) { |
| 72 | 3 | val = tryResolver(preResolvers, context); |
| 73 | ||
| 74 | 3 | if (val != JexlExprResolver.NO_VALUE) { |
| 75 | 2 | return val; |
| 76 | } |
|
| 77 | } |
|
| 78 | ||
| 79 | 270 | val = node.value(context); |
| 80 | ||
| 81 | /* |
|
| 82 | * if null, call post resolvers |
|
| 83 | */ |
|
| 84 | 269 | if (val == null && postResolvers != class="keyword">null) { |
| 85 | 0 | val = tryResolver(postResolvers, context); |
| 86 | ||
| 87 | 0 | if (val != JexlExprResolver.NO_VALUE) { |
| 88 | 0 | return val; |
| 89 | } |
|
| 90 | } |
|
| 91 | ||
| 92 | 269 | return val; |
| 93 | } |
|
| 94 | ||
| 95 | /** |
|
| 96 | * Tries the resolvers in the given resolverlist against the context. |
|
| 97 | * |
|
| 98 | * @param resolverList list of JexlExprResolvers |
|
| 99 | * @param context JexlContext to use for evauluation |
|
| 100 | * @return value (including null) or JexlExprResolver.NO_VALUE |
|
| 101 | */ |
|
| 102 | protected Object tryResolver(List resolverList, JexlContext context) { |
|
| 103 | 3 | Object val = JexlExprResolver.NO_VALUE; |
| 104 | 3 | String expr = getExpression(); |
| 105 | ||
| 106 | 4 | for (int i = 0; i < resolverList.size(); i++) { |
| 107 | 3 | JexlExprResolver jer = (JexlExprResolver) resolverList.get(i); |
| 108 | ||
| 109 | 3 | val = jer.evaluate(context, expr); |
| 110 | ||
| 111 | /* |
|
| 112 | * as long as it's not NO_VALUE, return it |
|
| 113 | */ |
|
| 114 | 3 | if (val != JexlExprResolver.NO_VALUE) { |
| 115 | 2 | return val; |
| 116 | } |
|
| 117 | } |
|
| 118 | ||
| 119 | 1 | return val; |
| 120 | } |
|
| 121 | ||
| 122 | /** |
|
| 123 | * {@inheritDoc} |
|
| 124 | */ |
|
| 125 | public String getExpression() { |
|
| 126 | 4 | return expression; |
| 127 | } |
|
| 128 | ||
| 129 | /** |
|
| 130 | * {@inheritDoc} |
|
| 131 | */ |
|
| 132 | public void addPreResolver(JexlExprResolver resolver) { |
|
| 133 | 3 | if (preResolvers == null) { |
| 134 | 3 | preResolvers = new ArrayList(); |
| 135 | } |
|
| 136 | 3 | preResolvers.add(resolver); |
| 137 | 3 | } |
| 138 | ||
| 139 | /** |
|
| 140 | * {@inheritDoc} |
|
| 141 | */ |
|
| 142 | public void addPostResolver(JexlExprResolver resolver) { |
|
| 143 | 1 | if (postResolvers == null) { |
| 144 | 1 | postResolvers = new ArrayList(); |
| 145 | } |
|
| 146 | 1 | postResolvers.add(resolver); |
| 147 | 1 | } |
| 148 | ||
| 149 | /** |
|
| 150 | * Provide a string representation of the expression. |
|
| 151 | * |
|
| 152 | * @return the expression or blank if it's null. |
|
| 153 | */ |
|
| 154 | public String toString() { |
|
| 155 | 1 | String expr = getExpression(); |
| 156 | 1 | return expr == null ? "" : expr; |
| 157 | } |
|
| 158 | ||
| 159 | } |
| This report is generated by jcoverage, Maven and Maven JCoverage Plugin. |


Following on from the potted sketches of our national character by Brit and Wartime Housewife, let us turn to Norman Davies. It is far too long since I have posted extracts from his magnificent pamphlet Further Science : Book 20 (2001), which I introduced to readers way back in January 2004, and quoted further in February 2004 and July 2005. Here then, exactly as it appears in the pamphlet, is Davies on “British Psychology”:
1. That Country Inventions etc., reveal innate area psychology.
2. Cornwall—informal golden frills / harvest festival / nudist beach / carol service.
3. Devon opposite formal garden frills—orange code guildhall / use of Wedding March.
4. Somerset—soft dreamy colour squares—coloured glass / soft cheese / child pub—contrasts with Gloucester—dream formaIity—bowling green / Sunday School.
5. Dorset / Hants have formal round hotel / bowls / sea cave.
6. Sussex—complex old explosive—loves fireworks / gas lighting / Town Women's Guild / antiques / Brighton sex.
7. Kent is the odd formal—Council lottery / Waltzing Matilda—in contrast to Essex odd informal—Peculiar People / Dunmow Flitch / heated armchair / hair FC colours.
8. London small family segments—Bingo / one parent families. Middx small clappers—squash etc.
9. Berks—small rounds—Table tennis / Job Centre and Oxford—mass of small items—Oxfam / marmalade / Hand ball / Post Office.
10. Herts / Northants noisy organised complex units—digital computer / go kart / map / CB Radio / speedway.
11. Norfolk—fish finger / dead static oblong, opposite to Leicester lively circles / motor mower / cycling / drive in store.
12. Notts—larger rounds—Sports centre / football / sugar / Spot ball / Boots.
13. Derby—muck frenzy—bakers / disposable nappy / mice racing.
14. Cheshire—murky prying—neighbourhood watch / women's pubs.
15. Lancs—of mass smooth silky moving little bits—Co-op / small claims Court / NSPCC / Music Hall / athletes club / test tube baby / Police panda cars and radios / computer / nurses strike etc.
16. Yorks—slow rough organised bits—Rugby League / Con man / high rise flats / Building Society / tortoise Olympics / old folk bus / smoke free zone / Marks and Spencer.
17. Durham etc.—thin tube lively bits—electric lamp Fallopian tube transplant / whippet / turbine / keep fit etc.


Kerberos Setup Instructions
Introduction
Beginning in version 1.4.1, the JavaTM
2 SDK, Standard Edition provides three client-side Kerberos tools:
kinit
, klist
, and ktab
in its
Windows and Linux distributions. In this document, we explain how to
use these tools to obtain Kerberos Ticket Granting Tickets (TGTs) and
keytabs on their provided platforms. If you are running on the
SolarisTM Operating System (Solaris OS),
then in addition to using the Solaris OS version of the
kinit
utility to obtain and cache Kerberos ticket-granting tickets, you should
also use the Solaris OS-specific Kerberos database administration program,
kadmin
(for details type, man kadmin
).
Create keytab files
Create a keytab file, if it does not exist already, and add entries
using:
ktab -a <principal_name> <password> -k <keytab_name>
For example, to create a keytab file named as
krb-servers.keytab
in the config directory, which
contains three entries whose principal names are server
,
phoenix
, and reggie
, and passwords are
serverpw
, phoenixpw
, and reggiepw
respectively, you would use the following:
ktab -a server serverpw -k config/krb-servers.keytab
ktab -a phoenix phoenixpw -k config/krb-servers.keytab
ktab -a reggie reggiepw -k config/krb-servers.keytab
To check what entries are in a keytab file, use:
ktab -l -k <keytab_name>
To create keytabs when running on Solaris OS, one can use the
ktadd
command provided under the kadmin
utility (for details type, man kadmin
).
Create TGT cache
kinit
can used to obtain and cache Kerberos TGTs. Here
are links to the documentation of this command on various platforms
([Linux]
[Windows]
[Solaris OS]).
Kerberos Login module documentation
The Java Authentication and Authorization Service (JAAS)
login module for Kerberos is Krb5LoginModule
. To find
out what options it supports and how to setup its configuration file,
click here.