Skip to content

Implementation

The Implementation is closely related to the Method. What is more formally described by the Method is translated by the Implementation into operations that can be conducted in silico. The metadata information about the Implementation should include the URL of the open-source repository if available. If so, also the commit at which the code of the repository was used should be made explicit. If the experiments are run from the command line, the corresponding commands including all the arguments and parameters should be added.

Checklist

  • implementationexecutablecmd
    Description: The software command that was used to conduct the experiments, more specifically, to make the run.
    Type: Scalar
    Encoding: UTF-8 encoded string of characters (RFC3629); !!str.
  • implementationsourcelang
    Description: All programming languages that were used for the experiments. A non-exhaustive list is given by the naming conventions. If the source code is in a git repository, the MetadataHandler of the metadata module in repro_eval can be used to extract the programming languages automatically.
    Type: Sequence of scalars; !!seq.
    Encoding: UTF-8 encoded string of characters (RFC3629); !!str.
    Naming convention: Java, Python R, C, C++, Ruby, Go, Matlab, Shell
  • implementationsourcerepository
    Description: The URL of the corresponding software repository.
    Type: Scalar
    Encoding: URI according to RFC2396; !!str.
  • implementationsourcecommit
    Description: The commit at which the repository was used for the experiments. Both long and short versions are valid.
    Type: Scalar
    Encoding: String of characters generated by SHA-1 (RFC3174) or SHA-256 (RFC6234).

Example

implementation:
  executable:
    cmd: python src/main/python/ecir2019_ccrf/generate_runs.py --config src/main/python/ecir2019_ccrf/configs/ccrf.04_core17_BM25+AX.json
  source:
    lang:
    - Java
    - Python
    - Shell
    repository: https://github.com/castorini/anserini
    commit: 9548cd6