diff --git a/func_adl/event_dataset.py b/func_adl/event_dataset.py
index 8915d4c..34d7a69 100644
--- a/func_adl/event_dataset.py
+++ b/func_adl/event_dataset.py
@@ -83,7 +83,6 @@ def _extract_dataset_info(ds_call: ast.Call) -> EventDataset:
     args = cast(List[ast.AST], ds_call.args)
 
     # List should be strings
-    assert len(args) == 1
     return ast.literal_eval(args[0])
 
 

EventDataset can have as many arguments as it wants
Others might want to change the meaning (like uproot) of the arguments. Make sure that is possible in the EventDataset AST. The current `_extract_dataset_info` restricts the requirements to one.
diff --git a/tests/test_event_dataset.py b/tests/test_event_dataset.py
index d413951..806ae84 100644
--- a/tests/test_event_dataset.py
+++ b/tests/test_event_dataset.py
@@ -17,6 +17,15 @@ class my_event(EventDataset):
         return 10
 
 
+class my_event_extra_args(EventDataset):
+    def __init__(self):
+        super().__init__()
+        self._ast.args.append(ast.Str(s='hi'))
+
+    async def execute_result_async(self, a: ast.AST) -> Any:
+        return 10
+
+
 def test_can_create():
     my_event()
 
@@ -32,6 +41,12 @@ def test_find_event_inside():
     assert find_ed_in_ast(add) is e
 
 
+def test_find_event_with_more_ast():
+    e = my_event_extra_args()
+    add = ast.BinOp(ast.Num(5), ast.Add, e._ast)
+    assert find_ed_in_ast(add) is e
+
+
 def test_string_rep():
     e = my_event()
     assert str(e) == "my_event"

pip install -e .[complete]
parse_log_pytest
requirements.txt
pytest pytest-asyncio pytest-cov flake8 coverage twine wheel astunparse
3.7
pytest --no-header -rA --tb=line --color=no -p no:cacheprovider -W ignore::DeprecationWarning
astunparse==1.6.3
bleach==6.0.0
certifi @ file:///croot/certifi_1671487769961/work/certifi
cffi==1.15.1
charset-normalizer==3.4.1
coverage==7.2.7
cryptography==44.0.2
docutils==0.20.1
exceptiongroup==1.2.2
flake8==5.0.4
-e git+https://github.com/iris-hep/func_adl.git@67fde5a39038ebee59f8ea6e8cf34139a3de5c2f#egg=func_adl_test
idna==3.10
importlib-metadata==4.2.0
iniconfig==2.0.0
jaraco.classes==3.2.3
jeepney==0.9.0
keyring==23.9.3
make-it-sync==2.0.0
markdown-it-py==2.2.0
mccabe==0.7.0
mdurl==0.1.2
more-itertools==9.1.0
packaging==24.0
pkginfo==1.10.0
pluggy==1.2.0
pycodestyle==2.9.1
pycparser==2.21
pyflakes==2.5.0
Pygments==2.17.2
pytest==7.4.4
pytest-asyncio==0.21.2
pytest-cov==4.1.0
readme-renderer==37.3
requests==2.31.0
requests-toolbelt==1.0.0
rfc3986==2.0.0
rich==13.8.1
SecretStorage==3.3.3
six==1.17.0
tomli==2.0.1
twine==4.0.2
typing_extensions==4.7.1
urllib3==2.0.7
webencodings==0.5.1
zipp==3.15.0

name: func_adl
channels:
  - defaults
  - https://repo.anaconda.com/pkgs/main
  - https://repo.anaconda.com/pkgs/r
  - conda-forge
dependencies:
  - _libgcc_mutex=0.1=main
  - _openmp_mutex=5.1=1_gnu
  - ca-certificates=2025.2.25=h06a4308_0
  - certifi=2022.12.7=py37h06a4308_0
  - ld_impl_linux-64=2.40=h12ee557_0
  - libffi=3.4.4=h6a678d5_1
  - libgcc-ng=11.2.0=h1234567_1
  - libgomp=11.2.0=h1234567_1
  - libstdcxx-ng=11.2.0=h1234567_1
  - ncurses=6.4=h6a678d5_0
  - openssl=1.1.1w=h7f8727e_0
  - pip=22.3.1=py37h06a4308_0
  - python=3.7.16=h7a1cb2a_0
  - readline=8.2=h5eee18b_0
  - setuptools=65.6.3=py37h06a4308_0
  - sqlite=3.45.3=h5eee18b_0
  - tk=8.6.14=h39e8969_0
  - wheel=0.38.4=py37h06a4308_0
  - xz=5.6.4=h5eee18b_1
  - zlib=1.2.13=h5eee18b_1
  - pip:
      - astunparse==1.6.3
      - bleach==6.0.0
      - cffi==1.15.1
      - charset-normalizer==3.4.1
      - coverage==7.2.7
      - cryptography==44.0.2
      - docutils==0.20.1
      - exceptiongroup==1.2.2
      - flake8==5.0.4
      - idna==3.10
      - importlib-metadata==4.2.0
      - iniconfig==2.0.0
      - jaraco-classes==3.2.3
      - jeepney==0.9.0
      - keyring==23.9.3
      - make-it-sync==2.0.0
      - markdown-it-py==2.2.0
      - mccabe==0.7.0
      - mdurl==0.1.2
      - more-itertools==9.1.0
      - packaging==24.0
      - pkginfo==1.10.0
      - pluggy==1.2.0
      - pycodestyle==2.9.1
      - pycparser==2.21
      - pyflakes==2.5.0
      - pygments==2.17.2
      - pytest==7.4.4
      - pytest-asyncio==0.21.2
      - pytest-cov==4.1.0
      - readme-renderer==37.3
      - requests==2.31.0
      - requests-toolbelt==1.0.0
      - rfc3986==2.0.0
      - rich==13.8.1
      - secretstorage==3.3.3
      - six==1.17.0
      - tomli==2.0.1
      - twine==4.0.2
      - typing-extensions==4.7.1
      - urllib3==2.0.7
      - webencodings==0.5.1
      - zipp==3.15.0
prefix: /opt/conda/envs/func_adl

tests/test_event_dataset.py::test_find_event_with_more_ast
tests/test_event_dataset.py::test_cannot_create tests/test_event_dataset.py::test_can_create tests/test_event_dataset.py::test_find_event_at_top tests/test_event_dataset.py::test_find_event_inside tests/test_event_dataset.py::test_string_rep
func_adl/event_dataset.py
func_adl/event_dataset.py