Representing a hypergraph as a bipartite graph doesn't lose any information. The entire structure is still there. It will take you two pointer indirections instead of one to traverse an edge, but otherwise it's exactly the same - all the connections are still in the right places.
There must be something being lost in translation here, because bipartite graphs cannot represent all graphs, let alone hypergraphs.
* A -> B
* B -> C
* C -> A
This is a simple, 3-node cyclical graph that fails to be bipartite. All graphs are hypergraphs, so this is also an example of a hypergraph that fails to be bipartite.
EDIT: Funny enough, if we remove C->A and replace it with "C -> D" and "D->A" it'd be bipartite, with A/C as one side and B/D being the other side.
-------
We can convert this cyclic graph into other representations. For example:
* A-> B
* B-> C
Now we have a minimum spanning tree, which also happens to be a list [A, B, C]. This was accomplished by removing an edge (the C->A edge).
----
There are a great many operations that "see" a graph in other forms. For example, the following list describes the graph:
1. A->B
2. B->C
3. C->A
This "list representation" of the graph is certainly... a list... and it captures all of the information of the graph. But its also not really useful to do graph operations in this form. It may take a long time to find a node's edges for example.
I'm assuming you're saying that there's some kind of "bipartite form" that can accurately describe all hypergraphs. But while that's technically true, that's also not really what people mean.
I'm not saying that all hypergraphs - or all graphs - literally are bipartite graphs, I'm saying that you can construct a bipartite graph that represents the same structure as the hypergraph.
Given the hypergraph:
A -> (B, C)
you can convert it to a bipartite graph by introducing an extra vertex of the second type to represent the hyper-edge:
A -> e
e -> B
e -> C
You can do the same thing starting from a "regular" graph, although it's kind of silly for most purposes; for the basic cycle, you'd have:
A -> e1
e1 -> B
B -> e2
e2 -> C
C -> e3
e3 -> A
I'd say that's a much more valid representation of the graph than the spanning tree, which is lossy (since you can't tell from [A, B, C] whether or not there's an edge C->A).
You have a vertex set {A, B, C} and an edge set {A->B,B->C,C->A}. I'll label the edges D,E,F for convenience.
We define an incidence structure between the vertices and edges, by making red vertices to represent original vertices, and blue vertices to represent original edges. A directed edge A->B is represented by the path A->D->B in our incidence structure. In total, our incidence structure has six nodes {A,B,C,D,E,F} and six edges:
A->D
B->E
C->F
D->B
E->C
F->A
Said differently, we have subdivided every edge of the original graph into two edges in the incidence structure. That doubles the lengths of all cycles, so we don't see any odd cycles; also we have an explicit bipartition into red and blue.
All that said... directed hypergraphs are kinda wild.
The idea is that if you have a bipartite graph and the sets V and W are the vertex sets for the bipartition, then V is the hypergraph's vertices and W is the hypergraph's hyperedges. A hyperedge w in W is incident to whatever it's adjacent to according to the bipartite graph.