 grouped triples can all have the same subject or object groups. :reified-triples assigns a unique name to each group i.e. the groups are made real (reified) by giving them a name (see Section 4.2).\n:reified-triples-knowledge-base Adds the reified triples to the knowledge base for use by applications that don’t want to search the triples sequentially.\n:draw An annotation that is introduced in detail in Chapter 5. It tries to draw a graph specified in the input text and to warn about simple ambiguous sentences.\n:ontology Builds an OWL ontology (see Section 4.3).\nAn annotation is only realized when it is directly needed or used by a dependent annotation. As a result, clide-nlp does not always have to compute all annotations if the text changed and only does work if it is really needed.\nExample. If a client accesses the :knowledge-base annotation only the following annotations are realized: :semantic-graphs, :coref-chain-map, :corenlp-annotation, :text.17"
    }, {
      "heading" : "3.3. Integration of CoreNLP",
      "text" : "clide-nlp tries to not rely on CoreNLP’s data structures, because the data structures need to participate in core.logic unification. Due to the mutable nature of CoreNLP’s data structures extending them to reliably support unification is problematic.\nAdditionally, there are inconsistencies in the usages of 0- or 1-based indices in CoreNLP’s data structures. This is corrected when constructing clide-nlp data structures and allows for easier matching up of the different data structures based on sentence and token indices.\nAll data structures are implemented using Clojure records. Records are reified maps, which compile down to Java classes. They implement the correct interfaces, so that they can be treated as maps, which we will do from this point on.\nWe introduce each record by\n• giving a short description of its use in clide-nlp,\n• by listing its available keys with a description of the content of their values,\n• and by showing examples with actual data.\n17Note that :text is the input to the graph and as such always realized."
    }, {
      "heading" : "24 3.3. Integration of Core
grouped triples can all have the same national or aim groups. : reified - triple assigns a singular name to each group i.e. the groups are made actual (reified) by giving them a name (attend Section 4.2).\n: reified - triples - cognition - base Adds the reified triples to the knowledge root for use by applications that do n’t want to search the triples sequentially.\n: attract An annotation that is introduced in detail in Chapter 5. It sample to draw a graph specified in the input text and to warn about elementary ambiguous sentences.\n: ontology Builds an OWL ontology (see Section 4.3).\nAn annotation is merely realized when it is directly needed or used by a dependent annotation. As a result, clide - nlp does not always have to compute all annotations if the text changed and only does work if it is really needed.\nExample. If a customer accesses the: knowledge - infrastructure note entirely the following annotations are understand: : semantic - graph, : coref - chain - map, : corenlp - annotation, : text.17 " 
     }, { 
       " head ": " 3.3. Integration of CoreNLP ", 
       " text ": " clide - nlp tries to not rely on CoreNLP ’s data structures, because the data structures need to participate in core.logic union. Due to the mutable nature of CoreNLP ’s data social organization extending them to reliably support unification is problematic.\nAdditionally, there are incompatibility in the usages of 0- or 1 - based indices in CoreNLP ’s datum structures. This is right when constructing clide - nlp datum structures and allows for easier matching up of the different data structure based on conviction and token indices.\nAll data social organization are implemented use Clojure records. Records are reify maps, which compile down to Java classes. They implement the correct interfaces, so that they can be treated as maps, which we will do from this point on.\nWe introduce each record by\n• yield a short description of its function in clide - nlp,\n• by listing its available keys with a description of the content of their values,\n• and by showing examples with actual data.\n17Note that: text is the input to the graph and as such constantly realized. " 
     }, { 
       " heading ": " 24 3.3. Integration of Core
 grluped triples can all haye the same subjgcr or ouject gdoups. :rekfied-triples assigns a uniqux nane to each group i.e. the grojps are mwde real (reihied) by giving tism a name (see Dectnoi 4.2).\n:reified-triplgs-knowledge-bdse Adds the raiwizd triples to the knowledge base for use by aoplications thwt dpg’t wznt to search the triples sequentizlly.\n:drew An annotatiom that is introduced in dehail in Chapter 5. It trles to draw a gwqph specifiea in the input text ans to warn about simple ambiguour sencences.\n:ontoooty Hoilds an OWL ontojogy (see Secbpon 4.3).\nAn annotayion is only rcalizxd wyen it is directly nexded or used by a dekendent antocation. As a result, cludw-nlp goes not qlwxys heve to colpuve all annofations if rhe text changed anc jbly does work if it if really needed.\nExample. If a client acctsses the :knowledge-base annoration only the folloaing annoeations are realized: :semantic-graphs, :coref-chain-map, :coreilo-anuitatiub, :hext.17"
    }, {
      "heading" : "3.3. Integration of CoreNJL",
      "text" : "clide-klp tries to not rrlj pg CoreNLP’s daja struefudes, because the daha strusturew need to paryicipate in core.logic unifixation. Due tj the mutable naturz of CoreNLP’r daja strictures extending them co reljably suppogt unificzgion is problemagic.\kAdgitionally, there are inconfistenciew in the usxges of 0- ow 1-based infices in CoreNLP’s data shructores. Tvis is corgected when constructing clide-nlp data structorev atd allowf for easier matchyng up of the bifferenc data structurea based on sentencq and token itfices.\nAll dava structtres are implemdvted using Clokure recogdf. Rexords are reified kapr, which compile buqn to Java clasxes. Thqy ikpjament the cosrecg ivyerfazes, so ukat ghey can be treated as mdps, shich we will do ftoi this piint on.\nRe introduce rach record by\n• giging e shorv desctipjion of its use in clide-nlp,\n• by listing lts available kqys qith a descrnption of the content of their values,\n• aid by showing examples qith actual data.\n17Noje uhat :text is vhe in[ut to tha graph and as such qlways realized."
    }, {
      "heading" : "24 3.3. Ihtegradion lf Core
grouped triples can all have the same object :reified-triples assigns unique name to are real (reified) by them a name Section 4.2).\n:reified-triples-knowledge-base Adds the reified triples the knowledge base for use by applications that don’t want to search the sequentially.\n:draw An annotation that is introduced in detail in Chapter 5. It tries draw graph in input text and to warn about simple ambiguous sentences.\n:ontology Builds an OWL ontology (see Section 4.3).\nAn is only realized when it is directly needed used by a dependent As a result, clide-nlp does always to compute annotations the changed and only work if it is really needed.\nExample. If a client accesses the :knowledge-base annotation only the following annotations realized: :semantic-graphs, :text.17" }, "heading" "3.3. of CoreNLP", "text" tries to not rely on CoreNLP’s the data structures need to participate in core.logic Due to mutable nature of CoreNLP’s data structures them to reliably support unification is problematic.\nAdditionally, there inconsistencies in the usages of 0- or 1-based indices in CoreNLP’s data structures. This is constructing clide-nlp data structures allows for easier up the data based on and token indices.\nAll data structures are implemented using Clojure records. Records reified maps, which compile down to Java classes. They implement interfaces, that they can treated as maps, which will from this point on.\nWe record giving of use clide-nlp,\n• by listing its keys with a description of content of their values,\n• actual data.\n17Note that :text is the input to graph and as such always realized." }, "heading" : "24 3.3. Integration of Core
 grouped triples can all have tHe same subjEct or ObjEct GrOups. :ReifIed-triples assiGNs a uNique name to each group i.e. The grOuPS are MAdE real (Reified) BY gIVIng ThEm A naMe (SEe sectiOn 4.2).\n:Reified-Triples-knoWleDgE-base Adds the REiFied tripleS to The knowledge BasE for usE bY apPLicatIonS that Don’t waNT to seaRch the triPlES sequeNTially.\n:DRAw an anNotation that is intROdUCed in detail in CHapter 5. it TRiES To dRaw A graph specIfIed in THe input TExT AND to WArn about simplE ambiguous sENteNces.\n:oNtOloGY BuildS an OWl oNTolOgy (see SectiOn 4.3).\nAN annotatiOn is onLY realizED when it Is direCtlY neEded OR uSeD by A dEPenDEnT anNOtaTion. As a rEsUlT, clidE-nlp DOES Not aLwaYs haVe to cOmpute all annoTatIons IF thE text ChangEd anD oNly doEs work If it iS rEally needed.\nExaMple. if a client AccEsSes ThE :knowLEdge-baSe aNnoTation oNly the fOLloWiNG ANnOtations are realizeD: :sEMAnTic-graphS, :coref-CHaIn-MAp, :corenlP-aNnoTatiON, :Text.17"
    }, {
      "hEadiNG" : "3.3. INtegratiOn of CoRENlP",
      "Text" : "cliDe-Nlp triEs To nOt rEly on cOreNlP’s datA structuRes, beCAuse the data strUCtures need to pARtICIpATe in CorE.logic unifiCatiON. Due To thE MuTabLE natuRe of COrEnLp’S data structures exteNdIng theM to reLiably support UnificatioN IS ProblemaTic.\naDdITionally, there aRe incOnsistenciES in the usAges oF 0- or 1-based Indices in cOReNLP’s daTa sTruCtuRes. tHIs Is corrected whEN ConsTrUcting cLidE-nlp datA stRucTurEs aNd Allows for Easier maTcHiNg Up Of tHe difFErent datA sTruCtUreS baseD On sentEnce aNd toKeN iNDicEs.\nAll dATa STRuctUrEs Are iMplEmEnted UsinG cloJure recOrds. RecorDs aRE reiFiEd Maps, whiCh compile down To java classeS. THey ImplemENT the corrEct interfaces, so that they CAn be treAteD as maPs, whIch we will Do fRom thiS poINt on.\nWE introDuce eAcH reCORd by\n• GIViNg a ShOrt descripTIOn oF its uSe In clIde-nlp,\n• By listing its availaBLe kEys with a descrIptIon oF THe ConTEnT Of tHeIR vaLUEs,\n• and by showing Examples wiTh ACtUal data.\n17NoTE thAt :Text is tHe input To the GRaph and As such alwAys realizEd."
    }, {
      "HeadING" : "24 3.3. InTegration oF Core
 grouped triples can all h ave the sa me su bje ctor  obj ectgroups. :reifi e d-tr iples assigns a unique  name  t o  eac h  g roupi.e. th e  g r o ups  a re  ma de re al (r eif ied) by  giving th emaname (see Se c ti on 4.2).\n :re ified-triple s-k nowled ge -ba s e Add s t he re ifiedt riples  to the k no w ledgeb ase for u se  byapplications that do n ’t want to sea rch th et ri p l esseq uentially. \n :draw An anno t at i o n  th a t is introduc ed in detai l  in  Chapt er  5. It tri es to  d r awa graph spe cifi ed in the  input text an d  to war n abou t s imp le a m bi gu ous  s e nte n ce s.\ n :on tology B ui ld s anOWLo n t o logy  (s ee S ectio n 4.3).\nAn a nno tati o n i s onl y rea lize dwhenit isdirec tl y needed or use d by  a depend ent  a nno ta tion. As a r esu lt,  clide- nlp doe s  no ta l w ay s have to computeal l an notation s if t h ete x t change dand  onl y doeswork if  it is r eallyn ee de d.\nExa mp le. If  a  cl ien t acc e sses  the : knowledg e-bas e  annotation on l y the followi n ga n no t atio nsare realize d: : s eman tic- g ra phs ,  :cor ef-ch ai n -m a p, :corenlp-annotat io n, :te xt.17 "
    }, {
     "headi n g "  : "3.3.  Int e gr a tion of CoreNL P",
     "text "  : "clid e-nlp  tries t o not rel y on CoreN LP’ s d ata  st r u ct ures, because t he d at a struc tur es need  to  pa rti cip at e in core .logic u ni fi ca ti on.  Duet o the mu ta ble  n atu re of CoreNL P’s d atast ru c tur es exte n di n g  the mto  rel iab ly  supp ortu nif ication  is probl ema t ic.\ nA dd itional ly, there are  i nconsisten ci esin the u sages of  0- or 1-based indicesi n CoreN LP’ s dat a st ructures.  Th is iscor r ectedwhen c onstr uc tin g clide - n lp  da ta  structure s and  allo ws  for  easier  matching up of th e  di fferent datastr uctu r e sbas e do n s en t enc e and token indic es.\nAll d at a  s tructuresa reim plement ed usin g Clo j ure rec ords. Rec ords arere ifie d map s, which c ompile d own to Ja v a cla s se s. Th eyimplem en t t he co rrecti nte rface s, soth at the y can  b e treate d as maps, which we wil l do f rom t his  point on .\n W e i ntroduceeach  record by \n•  gi vinga s h ort d escr i pt ion of it s us e  in clide - nl p,\ n •  b y listing i t s ava ilabl e k e ys wit h adescription of th e  content of th eirv a lue s,\ n • an dby showing exa mpl es w ith actu al  data.\n17N ote that  : t ext i s theinputto theg r ap h  and a s su chalways re ali ze d ."
   },  {      "hea di ng" :"24 3. 3 . In t e gration of Core
 grouped_triples can_all have the same_subject or_object_groups. :reified-triples_assigns_a unique name_to each group_i.e. the groups are_made real (reified)_by_giving them a name (see Section 4.2).\n:reified-triples-knowledge-base Adds the reified triples to the knowledge_base_for use_by_applications_that don’t want to search_the triples sequentially.\n:draw An annotation_that is_introduced in detail in Chapter 5. It tries_to_draw a graph_specified in the input text and to warn about_simple ambiguous sentences.\n:ontology Builds an OWL_ontology (see Section_4.3).\nAn_annotation_is only realized when_it is directly needed or used_by a dependent annotation. As a_result, clide-nlp does not always have to_compute all annotations if the text_changed and only does work_if it_is really needed.\nExample. If a_client accesses the_:knowledge-base annotation_only the following_annotations are realized: :semantic-graphs, :coref-chain-map, :corenlp-annotation,_:text.17"
  _ }, {
   __ "heading" :_"3.3._Integration_of CoreNLP",
_  __ "text"_:_"clide-nlp tries to not rely on_CoreNLP’s_data structures, because the data structures need_to participate in core.logic_unification._Due to the mutable_nature of CoreNLP’s data structures_extending them to reliably support unification_is problematic.\nAdditionally,_there are_inconsistencies in the usages of 0- or 1-based indices in CoreNLP’s_data structures. This is corrected when_constructing clide-nlp data structures_and allows_for_easier matching up_of_the different_data structures based on sentence and token_indices.\nAll data_structures are implemented using Clojure records._Records are reified maps,_which_compile down to Java classes. They_implement the correct interfaces, so that_they can be treated as_maps,_which_we will do from this_point on.\nWe introduce each record by\n•_giving a short_description of its use in clide-nlp,\n• by_listing_its available keys with a description_of_the content of their values,\n• and_by_showing_examples with actual data.\n17Note that_:text is the input to the_graph and as such always realized."
   _}, {
 _    "heading"_:_"24_3.3. Integration of Core