dataesr/scientific-paragraphs-categorization huggingface dataset:
Genome annotation Automatic genome annotation was performed using the Rapid Annotation using Subsystem Technology (RAST)  [11]. The Mummer ultra fast alignment algorithm  [13]  for large-scale DNA and protein sequences was used for the comparison to related strains. The annotation was subjected to detailed manual curation. We extracted the proteomes of A. salmonicida subsp. salmonicida strain A449 and of A. salmonicida subsp. pectinolytica strain 34mel (derived from the draft genome) from UniProt. Also, the SwissProt section of UniProt (reviewed section, Dec-2015) was downloaded. We compared each protein to these three databases using BLASTp. (a) The start codon assignments were evaluated. For each BLASTp result with a closely related homolog, the alignment near the N-terminus was inspected, applying principles previously described  [38].
Identification of transposons A systematic search for transposons was performed by an iterative approach, based on the BLAST  [43]  suite of programs and the ISFinder database  [19]. During this analysis, an exhaustive set of transposons and remnants thereof as found in various complete or draft Aeromonas genomes was accumulated and used as an in-house database for subsequent BLAST analyses. The in-house set of transposons was initialized by all transposons assigned by ISFinder to one of the Aeromonas species; and by all transposons that had been encountered upon validation of the genome assembly and upon comparison to the previously published draft genome of strain 34mel. Newly identified complete transposons (with both termini defined and with a noninterrupted transposase gene) were submitted to and accepted by ISFinder.
In several cases, transposons were found to be interrupted and the intervening sequences were subsequently identified to represent additional targeting transposons. In addition to our own strain, we systematically analyzed the mobilome of the following Aeromonas genomes (as identified by their GenBank accessions): A. salmonicida subsp. salmonicida strain A449 (chromosome and 5 plasmids, CP000644, CP000645, CP000646, AY301063, AY301064, AY301065), A. media strain WS (chromosome and 1 plasmid, CP007567, CP007568), A. veronii strain B565 (CP002607), A. hydrophila subsp. hydrophila ATCC 7966 (type strain, CP000462), A. hydrophila subsp. hydrophila strain AL06-06 (chromosome and 3 plasmids, CP010947, CP010948, CP010949, CP010950). preparation, sequencing, and assembly of the genome from A. salmonicida subsp.
Availability of data and materials The genome was submitted to GenBank under accession number CP022426. PacBio sequencing data have been submitted to the SRA archive under accession SRP121438. Transposons identified in the course of this project were submitted to ISFinder (https://www-is. biotoul. fr/). Transposons can be retrieved under their name, which begins with ISAs or TnAs and are a stable identifier in ISFinder. Software developed in the course of this project is available at: https://github. com/BCF-calanques.
The MEASURE project aims to integrate metrics across all phases of the software development lifecycle into a single decision support platform. For the earlier phases, metrics can be derived from models. Industrial use of model-driven engineering produces large model repositories, and high-performance querying is key to keep their metrics up to date. This paper presents an integration between the MEASURE metrics platform and the Hawk model indexing tool. Hawk was improved in several ways, such as adding support for the new Modelio metamodelling framework, or allowing Hawk servers to be provisioned through configuration files rather than through its web services. MEASURE and Hawk were then combined successfully to extract metrics from Modelio models of various domains, and Hawk was able to index and efficiently answer queries about the 2GB collection of models used by Softeam to develop Modelio.
INTRODUCTION Growing global competition and system complexity in the software industry means that companies need to meet ever increasing demands without compromising on quality and delivery times  (Shields, 2014). Many companies have taken to automation and placed a strong emphasis on nimble iteration in their processes to address these challenges. However, this automation and iteration need to be guided by up-to-date and accurate metrics, and traditional approaches are not up to the task. The MEASURE ITEA3 consortium (Softeam R&D, 2017) aims to cover this gap by developing a comprehensive set of tools for automated and continuous measurement over all stages of the software development lifecycle. It includes the development of better metrics and ways to analyse the big data produced by continuous measurements, the validation of those metrics by the integration of the metrics and tools into running processes in various industrial partners, and the creation of decision support tools for project managers through the visualisation of the collected data.
As shown in Figure  1 , MEASURE revolves around a central data collection and analysis platform (the "MEASURE platform" from now on), a web application that integrates all other efforts. Unlike other metric platforms, MEASURE aims to collect metrics about more than just code, as it covers the entire software lifecycle and not just those stages related to coding or testing. Particularly, one of the aims is to collect metrics about models. One of the MEASURE project partners in particular (Softeam Cadextan) is the lead developer of the commercial open-source Modelio  (Softeam Cadextan, 2017)  modelling tool. Softeam wanted to integrate metrics about Modelio business, requirements and design models into the MEASURE platform. This would require a technology that provided high-performance querying from potentially very large models, as those seen in the field by Modelio.
MEASURE Platform The MEASURE platform is an open-source web application  (Abherve et al. , 2017)  which allows collecting, calculating and visualizing data collected by executing measures defined according to the Structured Metrics Meta-Model (SMM) (Object Management Group, 2016). A measure is a method for assigning measurements (numerical or symbolic values) to entities (measurands). An observation applies a set of measures to a certain scope, obtaining specific measurements of the attributes of interest. Within the MEASURE platform, this observation scope is defined through projects defined by the user, and phases that they may go through. Observations and their measurements are collected into dashboards like the one in Figure  2. Particularly, observations are known as measure instances in the MEASURE platform: they configure the measure itself in some way and provide a scope of what should be the measurand.
Hawk As mentioned before, Hawk was selected to provide model metrics for MEASURE as it had been successfully integrated with other Modelio-based products from Softeam in the past, delivering the desired functionality and performance for the Constellation collaboration tool. This section will provide a highlevel description of some of the details behind Hawk. Hawk  (Barmpis and Kolovos, 2013 ) is a heterogeneous model indexing framework that keeps track of collections of file-based models and maintains a NoSQL model-element-level graph database with their latest versions, in order to provide efficient and scalable model querying. Hawk is distributed as 1 https://github. com/ITEA3-Measure/Measures open-source software under the Eclipse Public License (EPL) 1. 0.
Architecture As shown in Figure  4 , Hawk follows a componentbased architecture. These are the most important component types: Model Parsers: understand various file formats for storing models and metamodels (descriptions of the structure of a set of models). The Ecore XMI parser understands models created by tools based on the Eclipse Modelling Framework, for instance. There was also a model parser component for Modelio 3. 4, which was developed before this paper  (Garcia-Dominguez et al. , 2016). Query Engines: answer questions written in certain query languages for any type of model indexed by Hawk. Three languages are available currently: the Epsilon Object Language and Epsilon Pattern Languages  (Kolovos et al. , 2017 ) can be used with the Neo4j or OrientDB backends, whereas the OrientDB SQL-like dialect is only available for that backend.
5. Waiting for Hawk to index all files mentioned, and then querying through one of the available engines. Hawk will detect changes in the model files and trigger updates as needed. As a standalone server, Hawk exposes its capabilities through a set of HTTP(S) web services on top of the Apache Thrift (Apache Software Foundation, 2017) messaging library. Thrift makes it possible to support multiple messaging formats (protocols in Thrift terminology) in the same API, which cover different tradeoffs between language compatibility (JSON is the most compatible) and performance (the "tuple" binary format produces the smallest messages).
New Requirements Softeam had prior experience with Hawk from the MONDO EU project in scalable modelling  (Kolovos et al. , 2016) , and its high-performance and flexibility made it the first choice for MEASURE. Since the MONDO project ended in 2016, however, Modelio had continued to evolve, and MEASURE presented new challenges. Further talks between Softeam and the Hawk developers extracted these requirements: R1. Since Modelio 3. 6, metamodels were no longer embedded in the source code of Modelio, but instead provided by metamodel descriptor files. Hawk needed to be able to understand these. R2. Hawk would need to run as a standalone service from the MEASURE platform, unlike in the Constellation integration where it was used as a library. This was to keep the MEASURE platform simple and to separate the high resource demands of Hawk from it.
Metamodel Descriptor Support Before Modelio 3. 6. 0, the Modelio metamodels were embedded in the source code of the tool and were not customisable by users. Thanks to this, it was possible to adopt a simple approach in which Hawk was compiled against an Apache-licensed library produced by Modelio 3. 6. 0 made that approach unfeasible: users could now define their own metamodels through metamodel descriptor files. We could not expect metamodels to be stable for a release: instead, Hawk had to understand those descriptions and then use them to understand models conforming to this structure. Luckily, this is a very similar approach to what was done for EMF-based models, whose structure is described through ECore metamodels. Since it was not possible to bring any GPLv3 code from Modelio into Hawk, it was decided to implement a metamodel parser following a clean-room approach: instead of looking at the code, the format would be reverse engineered from a sample, with some answers from the original developers.
Hawk-based Measures In order to create direct measures on models using Hawk for the MEASURE platform, a new implementation of the SMM Measure API ( §2. 1) interfaces was developed: the Hawk Query measure library (HawkM from now on) (Al-wadeai, 2017). HawkM can be used in two ways: • As a regular component for MEASURE, which takes in a configuration file with the server details and the EOL query to be run, and relays back to the MEASURE platform. • As a library for developing more advanced metrics, which require orchestrating multiple EOL queries or automatically generating the EOL source altogether. HawkM has provisions for the fact that the Epsilon Object Language is dynamically typed, and therefore it is not clearly known what will be the return type of the query in the configuration file.
MEASURE Queries The first test was done by creating a sample Modelio 3. 6 project with various containment and inheritance/implementation relationships (as shown in Figure 6). The Hawk server was configured to index this sample project, using the OrientDB backend and the Modelio-specific model and metamodel parsing components. The Modelio 3. 6 metamodel descriptor (part of the open source source code release) was parsed successfully by Hawk: this sample project requi- red the "Infrastructure" 2. 0. 00, "Standard" 2. 0. 00 and "modelio. kernel" 1. 0. 00 fragments in particular. After indexing these models, a subset of the metrics requested by the MEASURE industrial partners was selected for implementation (as shown in Table 1). These metrics were defined and prioritised along with their required metadata and measurement tools.
As an example of how a query looks like in EOL, Listing 3 shows an excerpt of the "Number of overridden methods" query. EOL is a very flexible lan- guage, and it is possible to write complex queries that check if a method has been overridden within the proper subtypes of a class. Particularly, here we check if across the subtypes, there is at least one operation with the same name, return type and argument types. The measure containing this query as part of its Java code was then deployed within the MEASURE platform, producing a report upon execution as shown in Figure  7. The execution time in this case was slightly higher than one would expect, but mostly it was due to the fact that MEASURE was on temporary infrastructure, while querying a server running off a laptop on a different country altogether.
Archimate Models The second case study used to evaluate the flexibility of this integration was a set of sample models developed with the new support in Modelio 3. 6 for creating enterprise architecture models written in the Archimate notation and metamodel. Specifically, the model shown in Figure  8  was indexed. This type of model combines software components (ERP, SCADA) with buildings (factories) and descriptions of the processes within the enterprise and the various business actors. This model was indexed by Hawk successfully using the same Modelio 3. 6 metamodel descriptor  as before. The model contains 634 elements (as reported by return Model. allInstances. size ; through Hawk) and was indexed in 8 seconds and 48 milliseconds with a recent laptop. Particularly, a Thinkpad X1 with an i7-6600U CPU, 16GiB of RAM, and a solid-state disk, running Ubuntu 16.
04. 3 and Linux 4. 4. 0-98, using Oracle Java 8u102 and the latest version of Hawk at the time of writing (commit "66edee" on Github). The model is not very large, but architectural models are important for early high-level analysis. Listing 4 shows an example of a query which, for each Concept in the model: • Annotates each concept with the number of concepts that it is related to, transitively. • Sorts them from the ones with the most related concepts to the least. • Collects the type name, name and number of "related to" concepts for each. • Returns the top 5 of those elements. This type of query could be used for impact ana- When executed through the Thrift API, this query produces an output like that shown on Listing 5. The query itself took 54ms from the client to the server while running in a local instance (as this was a proof of concept), but it only took 43ms to run within the server itself: the other 11ms were network overhead.
all. size ;, except for the one counting all model elements, which was return Model. allInstances. size ;. The results are shown on Table  3 : it is possible to iterate over all instances and count them in 15 seconds, and we can find all 8545 classes across all projects in less than two seconds. Next, we decided to run one of the MEASURE industrial queries, particularly the "average classes per component" query from Table  1  shown in Listing 6. This query ran across the indexed 2. 16GB of models in only 1666ms, producing the end result of 59. 49 classes on average per component. Results like these show that Hawk can produce answers in seconds for queries over very large models, by taking advantage of the efficient navigation of references in graph databases.
RELATED WORK The increasing size of industrial models has given rise to several other high-performance model persistence and model querying technologies. If the model is stored in a database in the first place, it may be faster to query than if it is stored on files: this is possible with NeoEMF  (Gómez et al. , 2015) , an alternative model persistence layer for EMF models with support for Neo4j and MapDB among other technologies. Another similar option is MongoEMF 2  , which uses the MongoDB document database. Beyond database-backed single models, database storage of entire collections is also possible with model repository technologies such as Eclipse Connected Data Objects (CDO) 3  or Morsa  (Pagán et al. , 2013). CDO in particular is very mature and supports both relational and document-oriented databases.
CONCLUSION AND FUTURE WORK The MEASURE project is developing a platform for collecting metrics across the entire software development lifecycle. In model-driven processes, the specification and design phases operate on models rather than on code: it is necessary to extract measurements from models as well. It can be very expensive to collect metrics across large collections of models, or from very large models. This paper has shown the first version of an integration between the MEASURE platform and the Hawk model indexing framework, with positive results in terms of flexibility and performance. Hawk makes it possible to use "big data"class NoSQL technologies for efficient querying of existing models with little technical risk. Hawk can now index any model supported by current and future versions of Modelio without changes in its code.
It has been used in this paper to index both Modelio 3. 6 and 3. 7 models, some of them from the enteprise architecture domain and some from the object-oriented software design domain. Hawk servers can be provisioned in an automated way wit-hout involving the use of its API, and it is possible to deploy both custom and predefined EOL queries in the MEASURE platform. Hawk was also used to index 2GB of industrial Modelio models: while there is some upfront cost in the indexing, it is quickly amortised through the faster execution of the queries and the incremental updates for later changes in the models. Regarding future work, the MEASURE platform will be extended with analysis capabilities that combine multiple metrics, possibly from different artefacts and phases in the software development lifecycle.
Backends: integrate Hawk with different database technologies. At the moment, two backends are supported: OrientDB and Neo4j. OrientDB is preferred by Softeam, since its Apache licensing is compatible with Hawk's EPL license without requiring separate arrangements. Version Control System Connectors: allow Hawk to read models in various types of locations. At the moment, Hawk supports local folders, Subversion or Git VCS, arbitrary HTTP locations, and Eclipse workspaces.
Listing 2: Sample contents of a server config file. 1 <hawk backend=". OrientDatabase" 2 name="instance 36"> 3 <delay max="0" min="0"/> 4 <plugins> 5 <plugin 6 name=". ModelioGraphChangeListener"/>. 7 </plugins> 8 <metamodels> 9 <metamodel uri="" location=". /mm36. xml"/> 10 </metamodels> 11 <derivedAttributes>. </derivedAttributes> 12 <indexedAttributes> 13 <indexedAttribute attributeName="Name" 14 metamodelUri="modelio://. " 15 typeName="Class"/> 16 </indexedAttributes> 17 <repositories> 18 <repository frozen="false" 19 location=" file:///. /ArchiChocolate/" 20 pass="" type=". LocalFolder" user=""/> 21 </repositories> 22 </hawk>.
Our method takes sequences generated from a sample in 'real time' and matches them to a database of genomes to identify the closest relatives. Because closely related isolates usually have similar properties, this yields an informed heuristic as to the pathogen's phenotype. We demonstrate this by identifying drug-resistant and drug-susceptible clones for both Streptococcus pneumoniae (the pneumococcus) and Neisseria gonorrhoeae (the gonococcus), within minutes after the start of sequencing using Oxford Nanopore Technology. The method has many potential applications, depending on the specific pathogen and quality of the databases available for matching, which we discuss together with its limitations. 4.
Resistance is associated with clones in S. pneumoniae and N. gonorrhoeae To quantify the association of clones with antibiotic resistance of the pathogens S. pneumoniae and N. gonorrhoeae, we constructed optimal predictors of resistance from bacterial lineages and measured the associated Area under the Receiver Operation Characteristic Curve (AUC) (Supplementary Document 1). First, we applied the method to 616 pneumococcal genomes from a carriage study in Massachusetts children  23, 24. Second, we used 1102 clinical gonococcal isolates collected from 2000 to 2013 by the Centers for Disease Control and Prevention's Gonococcal Isolate Surveillance Project  25. In both cases, the datasets comprised draft genome assemblies from Illumina HiSeq reads, resistance data, and lineages inferred from sequence cluster computed using Bayesian Analysis of Population Structure (BAPS)  26.
Rapid identification of nearest known relative from sequencing reads Based on the observed associations we developed an approach that we term 'genomic neighbor typing' to predict phenotype from sequencing data. Genomic neighbor typing is a two-step algorithm, which first compares a provided sample to a database of reference genomes with a known phylogeny and phenotype, and then predicts the likely phenotype of the sample based on the best hits (nearest neighbors) and their matching quality. We apply this here to the detection of drug resistance.
Comparison of their weights provides a 'susceptibility score', which quantifies the risk of resistance (Methods). When the weights are too similar, the call's confidence is considered low; this happens when resistant and susceptible strains are insufficiently genetically distinct, which is often the case for resistance emerging recently in evolutionary history (Methods). The ability to pinpoint the closest relatives in the database offers further resolution, even in the case where the resistance phenotype varies within a lineage. Results of RASE are reported in real time as the best match in the database, together with susceptibility scores to the antibiotics being tested and a proportion of matching k-mers for In the first, loading step, the precomputed RASE database is loaded into memory.
As reads are generated, they are matched against the database using ProPhyle to calculate similarity to individual strains. The weights for the most similar strains (D and E in the figure) are increased proportionate to the number of matching k-mers. Finally, resistance is predicted from the obtained weights and the resistance profiles of the database strains as follows: First, the best lineage is identified as the lineage of the best match (having the highest weight, E in the figure) and its score is calculated (lineage score, LS). Second, for every antibiotic, a score quantifying the chance of susceptibility (susceptibility score, SS) is calculated, based on the most similar susceptible and resistant strains inside the identified lineage (B and E in the figure, respectively). The susceptibility or resistance to each of the antibiotics is predicted from their susceptibility scores by a comparison with a threshold (0.
RASE databases for hundreds of S. pneumoniae and N. gonorrhoeae strains We constructed RASE databases for S. pneumoniae and N. gonorrhoeae from the same data as described above (Methods). We assigned each pneumococcal and gonococcal strains to an antibiotic-specific resistance categories using the European Committee on Antimicrobial Susceptibility Testing (EUCAST) breakpoints  33  and the CDC Gonococcal Isolate Surveillance Project (GISP) breakpoints  34  , respectively (Methods). Where MIC data were unavailable or insufficiently specific, we estimated the likely resistance phenotype using ancestral state reconstruction (Methods, Supplementary Note 1). To verify the results, we tested eight pneumococcal isolates for which resistance phenotypes were not originally available (Methods), and the measured MICs by microdilution matched the expected phenotypes (shown in bold in Table  1 ).