Something like this?!
R.< a03, b03, c03, d03, e03, \
a13, b13, c13, d13, e13, \
a23, b23, c23, d23, e23 \
> = PolynomialRing(QQ, 3*5, order='lex')
F = R.fraction_field()
S.<x1, x2, x3, x4> = PolynomialRing(F, 4, order='lex')
H = Ideal( [ a03*x1 + b03*x2 + c03*x3 + d03*x4 + e03,
a13*x1 + b13*x2 + c13*x3 + d13*x4 + e13,
a23*x1 + b23*x2 + c23*x3 + d23*x4 + e23] )
GB = H.groebner_basis()
for gb in GB:
print gb, '\n'
which delivers a "mess" like...
x1 + ((b03*c13*d23 - b03*d13*c23 - c03*b13*d23 + c03*d13*b23 + d03*b13*c23 - d03*c13*b23)/(a03*b13*c23 - a03*c13*b23 - b03*a13*c23 + b03*c13*a23 + c03*a13*b23 - c03*b13*a23))*x4 + (b03*c13*e23 - b03*e13*c23 - c03*b13*e23 + c03*e13*b23 + e03*b13*c23 - e03*c13*b23)/(a03*b13*c23 - a03*c13*b23 - b03*a13*c23 + b03*c13*a23 + c03*a13*b23 - c03*b13*a23)
x2 + ((-a03*c13*d23 + a03*d13*c23 + c03*a13*d23 - c03*d13*a23 - d03*a13*c23 + d03*c13*a23)/(a03*b13*c23 - a03*c13*b23 - b03*a13*c23 + b03*c13*a23 + c03*a13*b23 - c03*b13*a23))*x4 + (-a03*c13*e23 + a03*e13*c23 + c03*a13*e23 - c03*e13*a23 - e03*a13*c23 + e03*c13*a23)/(a03*b13*c23 - a03*c13*b23 - b03*a13*c23 + b03*c13*a23 + c03*a13*b23 - c03*b13*a23)
x3 + ((a03*b13*d23 - a03*d13*b23 - b03*a13*d23 + b03*d13*a23 + d03*a13*b23 - d03*b13*a23)/(a03*b13*c23 - a03*c13*b23 - b03*a13*c23 + b03*c13*a23 + c03*a13*b23 - c03*b13*a23))*x4 + (a03*b13*e23 - a03*e13*b23 - b03*a13*e23 + b03*e13*a23 + e03*a13*b23 - e03*b13*a23)/(a03*b13*c23 - a03*c13*b23 - b03*a13*c23 + b03*c13*a23 + c03*a13*b23 - c03*b13*a23)
Note: Buchberger's algorithm (to find a Gröbner basis) for linear forms is just Gaussian elimination.