Skip to content

Commit 8790919

Browse files
committed
Add serializers for the OWL/XML and RDF/XML formats
1 parent 8dcf4fb commit 8790919

File tree

3 files changed

+35
-1
lines changed

3 files changed

+35
-1
lines changed

pronto/serializers/__init__.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,14 @@
22
from .obo import OboSerializer
33
from .obojson import OboJSONSerializer
44
from .ofn import OwlFunctionalSerializer
5+
from .owx import OwlXMLSerializer
6+
from .rdfxml import RdfXMLSerializer
57

68
__all__ = [
79
"BaseSerializer",
810
"OboSerializer",
911
"OboJSONSerializer",
10-
"OwlFunctionalSerializer"
12+
"OwlFunctionalSerializer",
13+
"OwlXMLSerializer",
14+
"RdfXMLSerializer"
1115
]

pronto/serializers/owx.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
from typing import BinaryIO
2+
3+
import fastobo
4+
5+
from ._fastobo import FastoboSerializer
6+
from .base import BaseSerializer
7+
8+
9+
class OwlXMLSerializer(FastoboSerializer, BaseSerializer):
10+
11+
format = "owx"
12+
13+
def dump(self, file: BinaryIO):
14+
doc = self._to_obodoc(self.ont)
15+
fastobo.dump_owl(doc, file, format="owx")

pronto/serializers/rdfxml.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
from typing import BinaryIO
2+
3+
import fastobo
4+
5+
from ._fastobo import FastoboSerializer
6+
from .base import BaseSerializer
7+
8+
9+
class RdfXMLSerializer(FastoboSerializer, BaseSerializer):
10+
11+
format = "rdf"
12+
13+
def dump(self, file: BinaryIO):
14+
doc = self._to_obodoc(self.ont)
15+
fastobo.dump_owl(doc, file, format="rdf")

0 commit comments

Comments
 (0)