dataesr/scientific-paragraphs-categorization huggingface dataset:
Extraction Process The first step of our approach is the extraction process. It parses the Java source code and XML web descriptor to obtain corresponding model representations, namely, a Java model and an XML model (see Figure  12  where excerpts of the Java annotations and XML metamodels are depicted). By doing so we move from the technical space of source code annotations and XML files to that of the modelware realm. For this stem we rely in MoDisco  [10] , a model discovery.
Declarative rules use a pattern-based approach (similar to how graph transformation do) to match source input elements and produce and initialize target model elements with them. The code of the full integration transformation is available on GitHub. It is composed of 32 helpers and 20 rules, in particular 6 helpers and 11 rules are used to extract security information from the XML web descriptor, while the remaining helpers and rules target the annotations embedded in the Java code. Listing 7 shows an ATL rule, part of the transformation to combine the XML and Java Annotations models, that maps annotated Servlets to SecurityConstraint entities. It takes a Java Annotation model element (line 3) and creates a Security Constraint element in a model conform to our Servlet Security metamodel (line 8).
Threats to Validity Internal validity: The validity of the conclusions obtained by our experiments may be affected by 1) the degree of relevance of the tested projects and 2) a bias in the selection of the projects. We tackle the first point by establishing a set of conditions to be fulfilled by the projects in order to become part of the experiments. Although this set of conditions may not be complete or may leave out relevant projects, by reducing the number of toy examples, it augments the relevance of the obtained random set. Then, the possible bias in the selection of the projects is avoided by using an automatic tool to obtain the random samples from GitHub. External validity: Our evaluation evidences that security anomalies do occur in existing Java EE projects. However, as our study uses only projects extracted from GitHub, a threat to the external validity of our results may have been introduced.
Evaluating Security Properties The main building blocks of the tool that can be used to evaluate the security properties of a given Java EE application are depicted in Figure  17  as an instantiation with Figure  18 : Screenshot of the tool concrete technologies of our general approach initially presented in Figure  11. It relies on MoDisco  [10]  (for the model extraction), EMF and ATL (the transformation language used to implement all model manipulation operations required by our approach). The tool comes with a GUI that allows the user to select the Java EE project, its web descriptor and the security properties to check. In Figure  18 , the GUI of the tool and the corresponding diagnosis report are shown.
Policy Analysis Analysis of security policies is a research subject widely addressed in different research communities. To give a few examples,  [7]  presents a general taxonomy of potential anomalies for the domain of network security. These anomalies are formalized for network packet-filtering rules in  [4]. [6]  tackles security anomalies in database access control policies, concretely, for MySQL grant tables. Similar approaches, specially tailored to the analysis of anomalies in environments where several policies coexist and interact have also been contributed. Concretely, in  [22]  an approach is presented for policies belonging to different authorization parties, in  [23]  for policies in different abstractions levels and  [24]  for policies in different architecture layers. Closer to our web domain,  [25]  and  [5]  provide algorithms to detect anomalies in XACML  [16]  web services policies.
Conclusion We have presented an approach to automatically detect security misconfiguration in reverse-engineered Java EE web applications. Our approach is based in the automatic modeling of the declarative security configurations of Java EE web applications and in the definition of a number of security properties whose violation are evidence of the presence of anomalies. We have evaluated the feasibility and pertinence of our approach by using our proof of concept tool on a set of projects retrieved from GitHub. This evaluation has shown that a relevant number of security configurations in actual projects do violate the properties we defined. We believe that our approach and tool can be useful for the Java EE development community. Besides, as it is fully automated it could be easily adopted and integrated in both, the development phase of Java EE applications, to incrementally asses that security rules are integrated correctly and in a testing phase to assure that already developed applications are free from anomalies.
As future work, we envisage several possible extensions. We would like to extend our framework to include: 1. Programmatic security constraints. We plan to leverage on previous work that focus on extracting business logic embedded in Java code  [34]. In particular, we plan to extract Java models using Model-driven reverse engineering techniques and then apply static slicing techniques  [35]  to identify the security rules in the Java model. 2. Other sources of security information, beyond the Java code itself (e. g. security access constraints from an underlying database system) to provide a more complete analysis of the security of the software system as a whole. We intend to integrate to the present approach database reverse engineering results  [36, 37]  that explore the extraction of security constraints from working database systems.
7 0. 08 adricouci/libreria-project libreria-project 7 0. 03 0. 09 opf-labs/planets-suite planets-suite 5 4. 03 0. 06 PluCial/plucial-blog plucial-blog 6 1. 63 0. 11 gilsonsilvati/cid cid 8 1. 27 1. 91 sachdeva-vivek/grouper-i2 grouper-i2 5 0. 01 0. 09 gpanic/rest-shop rest-shop 16 0. 67 0. 08 matheusbersot/siga-uff siga-uff 8 0. 03 0. 05 ualerts-org/ualerts-server ualerts-server 5 0. 42 0. 17 abhishekmunie/btech-project-lms btech-project-lms 5 3. 22 1. 91 lukewen427/DeploymentTool api-server 7 0. 66 0. 06 AurionProject/Aurion 4. 1 AurionAdapterWeb 28 1. 7 0. 07 AurionProject/Aurion 4. 1 AurionGatewayWeb 21 1. 38 0. 07 AurionProject/Aurion 4. 1 AurionNhinServicesWeb 18 0. 77 0. 84 batbold0514/OnlinePos callcenter 5 2. 15 0. 06 Hellek1/viaja-facil Colectivos GBA 5 3 0. 06 tristanrichard/OOAD-Database GameWorld 7 1.
Permission to conduct research All necessary permits were obtained for the described study, which complied with all relevant regulations. Permissions to conduct research were granted by the following authorities: in Kenya, the National Commission for Science, Technology, and Innovation (NCST/RRI/12/1/ SS/541, NCST/RR1/12/1/SS/541/3) and National Museums of Kenya (NMK) (NMK/GVT/2, NMK/ACL/RSC/114); in Tanzania, the Commission for Science and Technology (COSTECH Major zones of interaction and migration. Major zones of interaction and migration on the African continent from c. 3000 BCE-1000 CE, including spreads of farming and herding, and key areas of trade. Farming and Bantu language dispersal routes follow  [31]. Earliest reported dates for two Asian taxa, black rat (Rattus rattus) and chicken (Gallus gallus), are based on published data  [26, [28] [29] [30] 32]  For Sealinks Project sites, context dates were obtained via charred seeds and charcoal at the Oxford Radiocarbon Accelerator Unit and the Waikato Radiocarbon Laboratory.
Ancient DNA analysis of bird bones Initial molecular work on bird remains was conducted in the Durham Evolution and Ancient DNA (DEAD) Laboratory, a dedicated clean room facility. Twenty-eight samples were amplified using chicken-specific primers, which together with PCR amplification and sequencing methods are described in S1 Appendix. Sequences were visualised using Geneious Pro 5. 3. 4 and aligned with published G. gallus sequences  [39, 40]  using MAFFT v7. 017  [41]. For samples that failed to produce sequences (n = 23), an attempt was made to amplify a 12S fragment. Sequences were compared against the GenBank database (http://www. ncbi. nlm. nih. gov) using a BLASTN algorithm (http://www. ncbi. nlm. nih. gov/BLAST) to search for highly similar sequences. Due to low success rates, 19 of the originally tested specimens, and two previously untested specimens, were selected for high-throughput (shotgun) sequencing (n = 21), which has been shown to be a powerful tool for species identification, for example in archaeological dental calculus  [42].
DNA extractions from bone powder were carried out in a dedicated clean room facility at the Max Planck Institute for the Science of Human History in Jena, Germany. Extraction, amplification, and sequencing methods are detailed in S1 Appendix. The resulting sequences are publicly available via the Dryad Digital Repository  [43]. The resulting libraries were analysed using a novel computational technique based on a custom BLAST database that includes all 957 bird mitochondrial DNA (mtDNA) genomes available on GenBank, representing 273 genera. We used BLAST to compute an alignment score (e-value) for each genus/read combination and summarize this information across all reads in a library. Thus, while a single read may not provide enough information to allow a sample to be confidently assigned to a genus, information across multiple reads can be leveraged to provide a robust taxonomic assignment of that library.
Mitochondrial DNA is ideal for this technique, first due to the availability of bird mtDNA genomes on GenBank, and second because mtDNA is on average more variable than nuclear DNA. BLAST e-values were computed across all reads from the same sample, and were used to calculate a p value: the probability that a library belongs to a particular bird genus, or to a species closely related to that genus (see below). First, all mtDNA reads were re-aligned to all mtDNA genomes using BLASTN. The lowest e-value per genus was then extracted for each read/genus combination (in case multiple mtDNA genomes from the same genus were available in the database). Next, for each library/genus combination we computed the overall alignment score l g , by summing e-values for each genus over all reads in a library as: l g ¼ P n i¼1 log 10 ð1 À e i Þ where n is the number of reads per library and e the e-value.
To eliminate poor quality alignments, we required each library's highest l g value to result from at least 20 reads alignment with e<10 -6. Finally, for each best-and second-best-matching genus we computed: p g ¼ 10 l g P n i¼1 10 l i where g is the best-or second-best-matching genus and n is the number of genera (n = 273). The resulting p values cannot be interpreted strictly as the probability that a library belongs to the corresponding genus, but rather as the probability that a library belongs to a species most closely related to this genus, since our database does not contain all extant bird genera. However, it does contain all Gallus species; furthermore, all the potential African genera that could be mistaken as Gallus-for example, Numida, Francolinus, or Pternistis-are either represented in our custom database, or have closely related genera in our database.
Ancient DNA analysis of rodent bones Twenty-three rodent bones were tested in the DEAD lab, using routine extraction techniques (S1 Appendix). Prior to analysis, all published cytochrome b (cytb) sequences of the genus Rattus were aligned, and a short length of sequence was identified that can distinguish R. rattus lineages I and II (sensu  [45] ) from all others within the R. rattus complex, as well as from other common genus members, Norway rat (R. norvegicus) and Pacific rat (R. exulans). Based on this assessment, partial sequences from position 14,250-14,273 relative to EU27307  [46]  were amplified in a PCR reaction and either Sanger sequenced and/or de novo Pyrosequenced, following methods described in S1 Appendix. The ancient DNA sequences were aligned with the Rattus species dataset and their identifications were determined by comparison of SNPs between target and known sequences.
Screening of rodent crania by tooth morphology Tooth morphology was used to determine which rodent specimens were good candidates for ZooMS collagen fingerprinting, for 17 well-preserved cranial specimens selected from four sites. Reference material for eastern African native rodents was not available at the time of analysis, so comparisons could only be made with island Southeast Asian and invasive species, obtained from the Montpellier CEROPATH project (S4 Table ). Identifications were considered preliminary, to be confirmed by ZooMS. Geometric morphometric data were gathered from photographs of the first mandibular molar. Shape was quantified using a combination of five fixed and 82 sliding semi-landmarks (S3 Fig). Size was quantified as centroid size. Both shape and form (shape+log centroid size) were then used to define morphological variability in the reference material.
S7 Table provides additional detail on the total number of reads and results of alignments in the BLAST analysis; for archaeological specimens, all libraries have >100 reads that map to the custom database. Among specimens attributed to Galliformes, matches were made to Gallus, and to Numida (guinea fowl, native to eastern Africa). Further matches were made to four Asian phasianid genera (all members of the order Galliformes): Arborophila, Bambusicola, Polyplectron, and Syrmaticus. The most likely explanation is not that these are Asian imports, but rather that these bones belong to native African genera (not yet sequenced) that are more closely related to Asian genera than to other African genera. There are a number of African phasianid genera not in the GenBank database-for example Francolinus and Pternistis-that are potential candidates.
Confirmation and negation of Rattus rattus identifications The rodent dataset is far larger than the bird dataset and exhibited higher success rates: of 23 rodent specimens amplified for aDNA analysis, 17 (74%) produced readable sequences, and 12 of these matched black rat; of the 232 rodent specimens analysed by ZooMS, collagen was successfully extracted and fingerprinted from 182 (78%), 50 of which matched black rat. These results are presented in Table  1 , with greater detail in S8 Table. Although these success rates appear similar, they are not directly comparable, since the aDNA and ZooMS datasets are distinct: most aDNA-tested specimens came from 2 nd millennium CE sites and were selected based on expected preservation; by contrast, the much larger ZooMS set includes specimens from older contexts and/or appearing poorly preserved.
Gerbilliscus was also identified as the closest match to specimens at the cave site of Panga ya Mizigo and the openair site of Chombo. There is no evidence in our dataset for black rat at hinterland sites prior to the 15 th century CE, regardless of whether the sites are open-air or in caves. On the coast and islands, by contrast, black rat was confirmed in secure contexts at multiple sites, including Vumba Kuu (n = 1) on the southern Kenyan coast; Songo Mnara (n = 11) in the Kilwa archipelago; Unguja Ukuu (n = 14) and Fukuchani (n = 2) on Zanzibar; Makangale Cave (n = 29) on Pemba; and Sima (n = 1) and Dembeni (n = 1) in the Comoros. Not all rodent remains at these sites belonged to black rat: specimens closely resembling Mastomys, Gerbilliscus, or other non-Rattus groups were also documented.
Our combined datasets offer no evidence for extremely early introductions of Asian species. Instead, all confirmed and reliably dated specimens of black rat and domestic chicken date to the second half of the first millennium or later. The study provides support for a maritime introduction of both species, since the earliest specimens are at island sites, particularly openair settlements with associated evidence for Indian Ocean trade contacts. Our study also suggests that black rat and domestic chicken arrive later at mainland sites, and, with the exception of rats at Makangale Cave on Pemba, at cave sites as well. In contrast with the island sites, these localities all show later integration into the kinds of early trade networks that linked eastern Africa to the Indian Ocean world. Taken together, our data provide support for an arrival of Asian taxa at port sites on islands by the 7 th -8 th centuries CE (Fig  2 ).
Domestic chicken is documented on Zanzibar by the 7 th -8 th centuries CE, and may be present on the Comoros by the 8 th -10 th centuries. Black rat may appear still earlier on Zanzibar, based on a single direct date of 421-535 CE at Unguja Ukuu, but isotopic research is required to rule out the potential reservoir effects in case of a marine diet for this and other directly-dated black rat specimens. A more conservative estimate, based on associated directly-dated crop remains, is to suggest that black rat appears at Unguja Ukuu and Fukuchani by the 7 th -8 th centuries CE, coincident with the appearance of domestic chicken in our dataset. This range also coincides with that for black rat remains at Makangale Cave on Pemba, where this taxon is unusually abundant. In our dataset, neither black rat nor domestic chicken appears at mainland sites until the second millennium CE.
Our investigations at six cave sites spanning the LSA to MIA offered no evidence for Asian taxa in the millennia suggested by the early model of Asian introductions (Fig  3 ). At Kuumbi Cave, where domestic chicken was previously reported at 5% of NISP  [17] , new excavations produced just one possible domestic chicken specimen  [49, 50] , which was then demonstrated via aDNA analysis to be local guinea fowl. At two open-air EIA sites, Juani School and Kwa Kipoko, not a single possible Asian faunal specimen was identified. While future excavations and analyses may produce Asian fauna in pre-MIA sites, much earlier introductions seem unlikely, given our dataset's geographic and chronological coverage. Late arrivals of domestic chicken and black rat suggest that engagement of the Swahili coast with the Indian Ocean world began in earnest only in the Medieval period (7 th -15 th centuries CE) or shortly before.
This finding agrees with other archaeological datasets such as imported ceramics and glass beads, which only began to arrive in significant quantities in the same era, together with Asian crops  [32, 53]. Like these other data classes, faunal remains currently do not support accounts of regular trade addressed in Classical-era documents. While biological exchange in the Indian Ocean, including exchange between the Indian subcontinent and northeastern Africa via the Red Sea, certainly predates the Medieval period, our findings fit with an emerging picture of Medieval maritime intensification  [54, 55]  that seems to have resulted in more frequent transference of species by sea, and a more expansive sphere of biological exchange. Our findings also contribute to understanding the origins of African food production systems by supporting multiple introductions to the continent of domestic chicken, an economically and ritually significant species today  [56].
Better quality archaeological data, obtained through more rigorous application of available dating and biomolecular techniques, are key to revealing the historical contexts of this and other aspects of biological exchange across the Indian Ocean. Biomolecular sources of information provide important insights into ancient processes that are difficult or impossible to address using traditional archaeological methods. Our results demonstrate that such methods are applicable even in hot, tropical contexts where ancient DNA preservation is not optimal. While poor preservation likely accounts for our low aDNA success rates for bird specimens, we found that twice as many specimens provided readable sequences once shotgun sequencing was employed, using a novel analytical approach based on a custom-built BLAST database.
Research was funded by a  European Research Council (ERC)  Grant (https://erc. europa. eu, Agreement No. 206148 ) awarded to NB. Dating was supported by grants to NB from the  UK Natural Environmental Research Council ancient DNA (aDNA) analysis aided by BLAST-based bioinformatics, Zooarchaeology by  Mass Spectrometry  first millennium CE introduction of these species. areas with poor bone preservation. Radiocarbon Facility  (http://www. nerc. ac. uk/, NF/ 2011/2/3 ,  NF/2012/2/4 ,  NF/2013/2/1 ). MP was supported by the  Wenner-Gren Foundation  (http:// www. wennergren. org/,Hunt Postdoctoral Fellowship), MB was funded by a  Royal Society   University Research Fellowship  (https:// royalsociety. org/UF120473), AC by a  British Academy   Postdoctoral Research Fellowship  (http:// www. britac.
Background The number of known chemical reactions is huge, at the time this manuscript was written there were ~84 million single-and multi-step reactions in the Chemical Abstract Service database (CAS)  [1]. Yet, many reactions in CAS are redundant because the same reactions are applied to different reactants. Identifying identical reactions can be performed by computing reaction rules. Reaction rules represent reactions at the reaction center only. In other words, a reaction rule comprises only the substructures of the reactants and the products for which the atoms are either directly involved in bond rearrangements or are deemed to be essential for the reactivity of the reaction center. While a set of reaction rules is of course not available for all known chemical reactions, rules have been compiled for focused applications, such as retrosynthesis planning  [2, 3] , the discovery of novel chemical entities in medicinal chemistry  [4] , xenobiotic (including drug) degradation  [5] , metabolomics  [6] , and metabolic engineering  [7] [8] [9] [10].
Depending on the application, the number of rules varies from less than one hundred to few thousands, but in all cases the number of known reactions per application far exceeds the number of rules (there are for instance more than 14,000 reactions in metabolic databases such as MetaNetX  [11] ). There are several ways of coding reaction rules (for instance, BE-matrices  [12]  and fingerprints  [13] ) but most of the time the rules can be represented by reaction SMARTS  [14] , as it is done in the current paper. The purpose of reactions rules is to generate reaction networks. The rules can be used in a forward manner to find for instance the metabolic degradation products of a drug, or in a reverse manner to find the reactions producing a desired product from a set of available reactants. In this later usage one produces retrosynthesis reaction networks.
As already mentioned, reaction network generation tools coupled with reactions rules have been developed and used primarily for synthesis planning and metabolic engineering, but can they be used to enumerate molecules (isomers for instance) and more generally to search chemical structures in the chemical space? In principle yes if one can devise reaction rules enabling the production of any molecule in the chemical space. Such a set of rules necessarily exists for all known molecules (such as those in the CAS database) since they have been produced through either natural or synthetic chemical reactions. In practice and as already stated, reaction rules so far developed are application limited. Yet, within their respective application fields, specific rules have been used to discover novel molecules and reaction pathways.