YAML as a human-readable Hypergraph Interchange Format (HIF) for NetworkX
Project description
🕸️ nx_yaml
nx_yaml bridges YAML documents and NetworkX by representing YAML as the standard Hypergraph Interchange Format (HIF). For YAML users, this unlocks higher-order graph theory analysis, moving beyond simple tree parsing. For the HIF ecosystem, it provides human-readable native support for higher-order program descriptions.
Features
- Isomorphic Conversion: Losslessly convert between YAML character streams and NetworkX hypergraphs using
nx_hif. - Round-Trip Property: Ensuring full structural and syntactic preservation:
serialize(compose(yaml)) == yamlcompose(serialize(hif)) == hif
- Formal Hypergraph Definition: Implements the Hypergraph Interchange Format.
- NetworkX Ecosystem: Built to interoperate with the broader NetworkX ecosystem and libraries.
- Extensible: Designed for further support of diverse higher-order representations.
Ecosystem Compatibility
nx_yaml enables interoperability across projects in the Higher-order Network Science community, including the HIF-standard:
- General Purpose: NetworkX
- Higher-order Networks: HyperNetX, XGI, hypergraphx, SimpleHypergraphs.jl, Easy-Graph, DeepHypergraph, Hypergraph Analysis Toolbox, uunet
- Temporal & Multilayer: networkx-temporal, pymnet, reticula, Raphtory, ASH
- Visualization: helios-web, pygraphistry
- Categorical & Monoidal: catgrad, Hypergraph
Citation
If you use nx_yaml in your research, please consider citing the above work:
@article{Coll_Joslyn_Landry_Lotito_Myers_Pickard_Praggastis_Szufel_2025,
title={HIF: The hypergraph interchange format for higher-order networks},
volume={13},
DOI={10.1017/nws.2025.10018},
journal={Network Science},
author={Coll, Martín and Joslyn, Cliff A. and Landry, Nicholas W. and Lotito, Quintino Francesco and Myers, Audun and Pickard, Joshua and Praggastis, Brenda and Szufel, Przemysław},
year={2025},
pages={e21}
}
License
nx_yaml is dedicated to the public domain under the CC0 1.0 Universal license.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file nx_yaml-1.0.0.tar.gz.
File metadata
- Download URL: nx_yaml-1.0.0.tar.gz
- Upload date:
- Size: 176.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2ea3e9183b7c25f1c3b221bff5eb176b96c151db185644036140869d451eae92
|
|
| MD5 |
21b9023f6087248d050398ea57ce513d
|
|
| BLAKE2b-256 |
8f3ef37b8538dc3bbe4d6f6d5ffde5e504f23a44f5660e9de8c1ab231d46660b
|
File details
Details for the file nx_yaml-1.0.0-py2.py3-none-any.whl.
File metadata
- Download URL: nx_yaml-1.0.0-py2.py3-none-any.whl
- Upload date:
- Size: 28.2 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3182a449e9731f26ec7e10aa92156b204a14ca1501ce4428dd02492b4f44f805
|
|
| MD5 |
57bafc11b5b903bbda82b50c59e7eb80
|
|
| BLAKE2b-256 |
1cb0281d75abd467544f9112ffdf40d81b35d56cc5102b78263dd0f8b21a2325
|