CoolFace
Datasetpublic

a6188466/mini-recurrence-converter-dsl-dataset

mini-recurrence-converter-dsl-dataset This dataset is used to prototype models for the Mini Recurrence Converter DSL module. It is provided for demonstration and experimentation purposes only. It pairs English recurrence expressions (e.g., "every Tuesday at 8am") with symbolic DSL function calls (e.g., WEEKLY(1, [TU], TIME(8, 0))) compatible with the module. 📦 Format The dataset uses a wide format with the following three columns: system — the system prompt… See the full description on the dataset page: https://huggingface.co/datasets/a6188466/mini-recurrence-converter-dsl-dataset.

sourceHugging Facecc-by-4.0updated 1y agoView on Hugging Face
0likes23downloads
Dataset Card

mini-recurrence-converter-dsl-dataset

This dataset is used to prototype models for the Mini Recurrence Converter DSL module.

It is provided for demonstration and experimentation purposes only.

It pairs English recurrence expressions (e.g., "every Tuesday at 8am") with symbolic DSL function calls (e.g., WEEKLY(1, [TU], TIME(8, 0))) compatible with the module.


📦 Format

The dataset uses a wide format with the following three columns:

  • system — the system prompt that defines the model's task
  • in — the natural language recurrence expressions (e.g. "every Tuesday at 8am")
  • out — the corresponding DSL expression (e.g. WEEKLY(1, [TU], TIME(8, 0)))

Each entry consists of a system, in, and out field, forming a structured input-output example.

For all examples, the system prompt is set to:

plaintext
You are a precise parser of recurring schedule expressions. Your only job is to translate natural language recurrence expressions into structured DSL function calls such as WEEKLY(...) or MONTHLY_BY_WEEKDAY(...). Do not explain or elaborate. Only return the code.

Example:

plaintext
$ You are a precise parser of recurring schedule expressions. Your only job is to translate natural language recurrence expressions into structured DSL function calls such as WEEKLY(...) or MONTHLY_BY_WEEKDAY(...). Do not explain or elaborate. Only return the code.
> every second Tuesday of the month at 1pm
< MONTHLY_BY_WEEKDAY(1, TU, 2, TIME(13, 0))

🧠 DSL Interpreter Project

The DSL used in this dataset is implemented in the Mini Recurrence Converter DSL module.

Example:

python
from fifo_dev_dsl.domain_specific.mini_recurrence_converter_dsl.core import MiniRecurrenceConverterDSL

dsl = "WEEKLY(1, [MO, WE], TIME(10, 0))"
parsed = MiniRecurrenceConverterDSL().parse(dsl)

print(parsed)
# RecurrenceRule(unit=<RecurrenceUnit.WEEKLY>, frequency=1, days=[0, 2], day_of_month=None, month=None, occurrence=None, hour=10, minute=0)

🚀 Using the Dataset

To load the dataset:

python
from fifo_tool_datasets.sdk.hf_dataset_adapters.dsl import DSLAdapter
dataset_dict = DSLAdapter().from_hub_to_dataset_dict("a6188466/mini-recurrence-converter-dsl-dataset")
print(dataset_dict["train"])
print(dataset_dict["validation"])
print(dataset_dict["test"])

🔧 Upload & Editing Tools

Uploaded via `fifo-tool-datasets` using the dsl adapter.

You can edit or extend the dataset using its .dat format and CLI tools.


⚠️ Disclaimer & Limitations

This dataset is intended solely for prototyping models for the Mini Recurrence Converter DSL module.

It does not cover all phrasings or edge cases of English recurrence expressions. Instead, it focuses on illustrative examples supported by the module's DSL functions. The dataset should be independently evaluated and extended to meet the specific requirements of any use case.

This dataset is provided as is, without any warranties, express or implied. The authors and contributors assume no responsibility for its accuracy, completeness, or suitability for any purpose.


🪪 License

This dataset is licensed under CC BY 4.0. See LICENSE for details.