Commit eeaca885 authored by Ewa Smula's avatar Ewa Smula
Browse files

python scripts added

parent cefcb263
##################################################
## MINERVA API version: 14.0
## Script purpose: An example of MINERVA API calls adding curators form the file users.txt
## Date: 23/03/2020
## Author: Piort Gawron (piotr.gawron@uni.lu)
## MANUAL: https://minerva.pages.uni.lu/doc/api/14.0/users/
##################################################
### A convenience function to handle the text files and the server repsonses
import csv
import requests
session = requests.Session()
### INPUT YOUR CREDENTIALS TO LOGIN to PD map instance
login = " "
password = " "
api_url = "https://pdmap.uni.lu/minerva/api/"
# LOGIN to PD map instance with your credentials
login_request = session.post(api_url+"/doLogin", data = {'login': login, 'password': password})
print(login_request.text)
print(session.cookies.get_dict())
# READ USER LIST from the users.txt
with open("users.txt") as tsv:
for line in csv.reader(tsv, delimiter="\t"):
user_email = line[0]
user_name = line[1]
user_surname = line[2]
user_login = line[3]
user_password = line[4]
print ("User: ",user_login)
# GET USER DETAILS (check if user_login already exists in MINERVA)
user_request = session.get(api_url+"/users/"+user_login)
if user_request.status_code != 200: # if user does not exist
print("Creating")
# CREATE NEW USER with details provided in the file users.txt
create_user_request = session.post(api_url+"/users/"+user_login,
data = {'name':user_name, 'surname': user_surname, 'email':user_email, 'password':user_password})
print(create_user_request.status_code)
else:
print("User Exists")
# GET existing USER details
specific_user_data = session.get(api_url+"/users/"+user_login)
print(specific_user_data.text)
# UPDATE USER user_login details as per the file users.txt
update_user_request = session.patch(api_url+"/users/"+user_login,
data = '{"user":{"name":"'+user_name+'", "surname": "'+user_surname+'", "email":"'+user_email+
'", "password":"'+user_password+'"}}')
print(update_user_request.status_code)
# MODIFY USER PRIVILEGES from 'user' onto 'curator'
update_privileges_request = session.patch(api_url+"/users/"+user_login+
":updatePrivileges", data = '{"privileges":{"IS_CURATOR":true, "IS_ADMIN":false}}')
print(update_privileges_request.status_code)
curator-anna@dot.com Anna Kate anna.kate3 test1
curator-mike@dot.com Mike John mike.john3 test2
requests
\ No newline at end of file
##################################################
## MINERVA API version: 14.0
## Script purpose: An example of MINERVA API calls uploading zipped project
## Date: 23/03/2020
## Author: Piort Gawron (piotr.gawron@uni.lu)
## MANUAL: https://minerva.pages.uni.lu/doc/api/14.0/projects/
##################################################
import requests
import os
import json
session = requests.Session()
### INPUT YOUR CREDENTIALS TO LOGIN to PD map instance
login = " "
password = " "
api_url = "https://pdmap.uni.lu/minerva/api/"
map_file = "example_advanced.zip"
# LOGIN to PD map instance with your credentials
login_request = session.post(api_url+"/doLogin", data = {'login': login, 'password': password})
print(login_request.text)
print(session.cookies.get_dict())
# UPLOAD FILE TO THE SYSTEM
stat_info = os.stat(map_file)
with open(map_file, mode ="rb") as f: file_content = f.read()
# Before creating a new project in MINERVA, source file 'map_file' must be uploaded to the instance (MANUAL: https://minerva.pages.uni.lu/doc/api/14.0/files/)
# Allocate memory in the system for 'map_file', which length is 'stat_info.st_size' bytes
create_file_request = session.post(api_url+"/files/", data = {'filename': map_file, 'length': stat_info.st_size})
# Get the information about the uploaded file: the 'id' is necessary to upload the file's content.
content = json.loads(create_file_request.text)
file_id = content["id"]
# Upload file's content to the instance
upload_content_request = session.post(api_url+"/files/"+str(file_id)+":uploadContent", data = file_content)
# CREATE PROJECT FROM FILE
project_id = "adv_"+str(file_id)
# DEFINE PROJECT PARAMETERS (what is what in the zip file)
data = [
('projectId', project_id),
('name', ''),
('parser', 'lcsb.mapviewer.converter.model.celldesigner.CellDesignerXmlParser'),
('file-id', str(file_id)),
('auto-resize', 'true'),
('cache', 'false'),
('notify-email', ''),
('disease', ''),
('version', ''),
('organism', ''),
('mapCanvasType', 'OPEN_LAYERS'),
('sbgn', 'false'),
('semantic-zoom', 'false'),
('annotate', 'false'),
('verify-annotations', 'false'),
('zip-entries[0][_type]', 'MAP'),
('zip-entries[0][_filename]', 'example_advanced_map.xml'),
('zip-entries[0][_data][root]', 'true'),
('zip-entries[0][_data][name]', 'example_advanced_map'),
('zip-entries[0][_data][type][id]', 'UNKNOWN'),
('zip-entries[0][_data][type][name]', 'Unknown'),
('zip-entries[1][_type]', 'IMAGE'),
('zip-entries[1][_filename]', 'images/coords.txt'),
('zip-entries[2][_type]', 'IMAGE'),
('zip-entries[2][_filename]', 'images/overview_sub.png'),
('zip-entries[3][_type]', 'IMAGE'),
('zip-entries[3][_filename]', 'images/overview_main.png'),
('zip-entries[4][_type]', 'OVERLAY'),
('zip-entries[4][_filename]', 'overlays/example_upload_basic.txt'),
('zip-entries[4][_data][name]', 'Advanced example'),
('zip-entries[4][_data][description]', 'Advanced example of custom layout'),
('zip-entries[5][_type]', 'MAP'),
('zip-entries[5][_filename]', 'submaps/mapping.xml'),
('zip-entries[5][_data][mapping]', 'true'),
('zip-entries[5][_data][name]', 'mapping'),
('zip-entries[5][_data][type][id]', 'UNKNOWN'),
('zip-entries[5][_data][type][name]', 'Unknown'),
('zip-entries[6][_type]', 'MAP'),
('zip-entries[6][_filename]', 'submaps/example_submap.xml'),
('zip-entries[6][_data][name]', 'example_submap'),
('zip-entries[6][_data][type][id]', 'UNKNOWN'),
('zip-entries[6][_data][type][name]', 'Unknown'),
]
# AND CREATE A PROJECT
create_map_request = session.post(api_url+"/projects/"+project_id, data = data)
print(create_map_request.text)
##################################################
## MINERVA API version: 14.0
## Script purpose: An example of MINERVA API calls uploading overlays
## Date: 23/03/2020
## Author: Piort Gawron (piotr.gawron@uni.lu)
## MANUAL: https://minerva.pages.uni.lu/doc/api/14.0/projects/
##################################################
import requests
import os
import json
session = requests.Session()
### INPUT YOUR CREDENTIALS TO LOGIN to PD map instance
login = " "
password = " "
api_url = "https://pdmap.uni.lu/minerva/api/"
overlay_file = "example_upload_basic.txt"
project_id = "empty"
# LOGIN to PD map instance with your credentials
login_request = session.post(api_url+"/doLogin", data = {'login': login, 'password': password})
print(login_request.text)
print(session.cookies.get_dict())
# UPLOAD OVERLAY FILE TO THE SYSYETM
stat_info = os.stat(overlay_file)
with open(overlay_file) as f: file_content = f.read()
# Before addind an overlay in MINERVA, data overlay file must be uploaded to the instance (MANUAL: https://minerva.pages.uni.lu/doc/api/14.0/files/)
# Allocate memory in the system for 'overlay_file', which length is 'stat_info.st_size' bytes
create_file_request = session.post(api_url+"/files/", data = {'filename': overlay_file, 'length': stat_info.st_size})
# Get the information about the uploaded file: the 'id' is necessary to upload the file's content
content = json.loads(create_file_request.text)
file_id = content["id"]
# Upload file's content to the instance
upload_content_request = session.post(api_url+"/files/"+str(file_id)+":uploadContent", data = file_content)
# CREATE DATA OVERLAY FROM UPLOADED FILE
create_overlay_request = session.post(api_url+"/projects/"+project_id+"/overlays/", data = {"fileId":file_id, "filename":overlay_file, "name":"auto-overlay-simple"+str(file_id), "description":"there is a data overlay", "googleLicenseConsent":"true"})
print("Overlay Added: ", create_overlay_request.text)
NAME VALUE
SNCA -0.5
PARK2 0.75
\ No newline at end of file
##################################################
## MINERVA API version: 14.0
## Script purpose: An example of MINERVA API calls adding new project
## Date: 23/03/2020
## Author: Piort Gawron (piotr.gawron@uni.lu)
## MANUAL: https://minerva.pages.uni.lu/doc/api/14.0/projects/
##################################################
import requests
import os
import json
import time
session = requests.Session()
### INPUT YOUR CREDENTIALS TO LOGIN to PD map instance
login = " "
password = " "
api_url = "https://pdmap.uni.lu/minerva/api/"
map_file = "example_map.xml"
# LOGIN to PD map instance with your credentials
login_request = session.post(api_url+"/doLogin", data = {'login': login, 'password': password})
print(login_request.text, "\n")
print(session.cookies.get_dict(), "\n")
# UPLOAD FILE TO THE SYSTEM
stat_info = os.stat(map_file)
with open(map_file) as f: file_content = f.read()
# Before creating a new project in MINERVA, source file 'map_file' must be uploaded to the instance (MANUAL: https://minerva.pages.uni.lu/doc/api/14.0/files/)
# Allocate memory in the system for 'map_file', which length is 'stat_info.st_size' bytes
create_file_request = session.post(api_url+"/files/", data = {'filename': map_file, 'length': stat_info.st_size})
# Get the information about the uploaded file: the 'id' is necessary to upload the file's content.
content = json.loads(create_file_request.text)
file_id = content["id"]
# Upload file's content to the instance
upload_content_request = session.post(api_url+"/files/"+str(file_id)+":uploadContent", data = file_content)
# CREATE THE PROJECT
project_id = "map_"+str(file_id)
project_name = "An example"
create_map_request = session.post(api_url+"/projects/"+project_id, data = {"file-id":file_id, "name": project_name , "version": "example", "mapCanvasType":"OPEN_LAYERS", "parser":"lcsb.mapviewer.converter.model.celldesigner.CellDesignerXmlParser"})
time.sleep(1)
# GET LIST of all (sub)maps in the project
get_submaps_request = session.get(api_url+"/projects/"+project_id+"/models/")
content = json.loads(get_submaps_request.text)
# In this example there is only one map uploaded
submap_id = content[0]['idObject']
# PUT A COMMENT to the map pinned to the coordinates (100.00,100.00)
create_comment_request = session.post(api_url+"/projects/"+project_id+"/comments/models/"+str(submap_id)+"/points/100.00,100.00", data = {"name":"Your Name", "email":"your_email@dot.com", "content":"automatically generated content","pinned":"true"})
print("Comment details:", create_comment_request.text)
<?xml version="1.0" encoding="UTF-8"?>
<sbml xmlns="http://www.sbml.org/sbml/level2/version4" xmlns:celldesigner="http://www.sbml.org/2001/ns/celldesigner" level="2" version="4">
<model metaid="map_example" id="map_example">
<annotation>
<celldesigner:extension>
<celldesigner:modelVersion>4.0</celldesigner:modelVersion>
<celldesigner:modelDisplay sizeX="1600" sizeY="1400"/>
<celldesigner:listOfCompartmentAliases>
<celldesigner:compartmentAlias id="ca1" compartment="c1">
<celldesigner:class>SQUARE</celldesigner:class>
<celldesigner:bounds x="140.0" y="171.0" w="269.0" h="141.0"/>
<celldesigner:namePoint x="170.0" y="183.5"/>
<celldesigner:doubleLine thickness="12.0" outerWidth="2.0" innerWidth="1.0"/>
<celldesigner:paint color="ffcccc00" scheme="Color"/>
<celldesigner:info state="empty" angle="-1.5707963267948966"/>
</celldesigner:compartmentAlias>
<celldesigner:compartmentAlias id="ca2" compartment="c2">
<celldesigner:class>SQUARE</celldesigner:class>
<celldesigner:bounds x="15.0" y="51.0" w="1418.0" h="771.0"/>
<celldesigner:namePoint x="1368.5" y="772.5"/>
<celldesigner:doubleLine thickness="12.0" outerWidth="2.0" innerWidth="1.0"/>
<celldesigner:paint color="ffcccc00" scheme="Color"/>
<celldesigner:info state="empty" angle="-1.5707963267948966"/>
</celldesigner:compartmentAlias>
</celldesigner:listOfCompartmentAliases>
<celldesigner:listOfComplexSpeciesAliases/>
<celldesigner:listOfSpeciesAliases>
<celldesigner:speciesAlias id="sa1" species="s1" compartmentAlias="ca2">
<celldesigner:activity>inactive</celldesigner:activity>
<celldesigner:bounds x="230.5" y="388.0" w="80.0" h="40.0"/>
<celldesigner:font size="12"/>
<celldesigner:view state="usual"/>
<celldesigner:usualView>
<celldesigner:innerPosition x="215.5" y="337.0"/>
<celldesigner:boxSize width="80.0" height="40.0"/>
<celldesigner:singleLine width="1.0"/>
<celldesigner:paint color="ffccffcc" scheme="Color"/>
</celldesigner:usualView>
<celldesigner:briefView>
<celldesigner:innerPosition x="0.0" y="0.0"/>
<celldesigner:boxSize width="80.0" height="60.0"/>
<celldesigner:singleLine width="1.0"/>
<celldesigner:paint color="3fff0000" scheme="Color"/>
</celldesigner:briefView>
<celldesigner:info state="empty" angle="-1.5707963267948966"/>
</celldesigner:speciesAlias>
<celldesigner:speciesAlias id="sa3" species="s2" compartmentAlias="ca1">
<celldesigner:activity>inactive</celldesigner:activity>
<celldesigner:bounds x="234.5" y="190.5" w="70.0" h="25.0"/>
<celldesigner:font size="12"/>
<celldesigner:view state="usual"/>
<celldesigner:usualView>
<celldesigner:innerPosition x="94.5" y="19.5"/>
<celldesigner:boxSize width="70.0" height="25.0"/>
<celldesigner:singleLine width="1.0"/>
<celldesigner:paint color="ffffff66" scheme="Color"/>
</celldesigner:usualView>
<celldesigner:briefView>
<celldesigner:innerPosition x="0.0" y="0.0"/>
<celldesigner:boxSize width="80.0" height="60.0"/>
<celldesigner:singleLine width="1.0"/>
<celldesigner:paint color="3fff0000" scheme="Color"/>
</celldesigner:briefView>
<celldesigner:info state="empty" angle="-1.5707963267948966"/>
</celldesigner:speciesAlias>
<celldesigner:speciesAlias id="sa4" species="s3" compartmentAlias="ca1">
<celldesigner:activity>inactive</celldesigner:activity>
<celldesigner:bounds x="224.5" y="270.5" w="90.0" h="25.0"/>
<celldesigner:font size="12"/>
<celldesigner:view state="usual"/>
<celldesigner:usualView>
<celldesigner:innerPosition x="84.5" y="99.5"/>
<celldesigner:boxSize width="90.0" height="25.0"/>
<celldesigner:singleLine width="1.0"/>
<celldesigner:paint color="ff66ff66" scheme="Color"/>
</celldesigner:usualView>
<celldesigner:briefView>
<celldesigner:innerPosition x="0.0" y="0.0"/>
<celldesigner:boxSize width="80.0" height="60.0"/>
<celldesigner:singleLine width="1.0"/>
<celldesigner:paint color="3fff0000" scheme="Color"/>
</celldesigner:briefView>
<celldesigner:info state="empty" angle="-1.5707963267948966"/>
</celldesigner:speciesAlias>
<celldesigner:speciesAlias id="sa5" species="s1" compartmentAlias="ca2">
<celldesigner:activity>inactive</celldesigner:activity>
<celldesigner:bounds x="808.75" y="148.0" w="80.0" h="40.0"/>
<celldesigner:font size="12"/>
<celldesigner:view state="usual"/>
<celldesigner:usualView>
<celldesigner:innerPosition x="793.75" y="97.0"/>
<celldesigner:boxSize width="80.0" height="40.0"/>
<celldesigner:singleLine width="1.0"/>
<celldesigner:paint color="ffccffcc" scheme="Color"/>
</celldesigner:usualView>
<celldesigner:briefView>
<celldesigner:innerPosition x="0.0" y="0.0"/>
<celldesigner:boxSize width="80.0" height="60.0"/>
<celldesigner:singleLine width="1.0"/>
<celldesigner:paint color="3fff0000" scheme="Color"/>
</celldesigner:briefView>
<celldesigner:info state="empty" angle="-1.5707963267948966"/>
</celldesigner:speciesAlias>
<celldesigner:speciesAlias id="sa6" species="s8" compartmentAlias="ca2">
<celldesigner:activity>inactive</celldesigner:activity>
<celldesigner:bounds x="808.75" y="261.0" w="80.0" h="40.0"/>
<celldesigner:font size="12"/>
<celldesigner:view state="usual"/>
<celldesigner:usualView>
<celldesigner:innerPosition x="793.75" y="210.0"/>
<celldesigner:boxSize width="80.0" height="40.0"/>
<celldesigner:singleLine width="1.0"/>
<celldesigner:paint color="ffccffcc" scheme="Color"/>
</celldesigner:usualView>
<celldesigner:briefView>
<celldesigner:innerPosition x="0.0" y="0.0"/>
<celldesigner:boxSize width="80.0" height="60.0"/>
<celldesigner:singleLine width="1.0"/>
<celldesigner:paint color="3fff0000" scheme="Color"/>
</celldesigner:briefView>
<celldesigner:info state="empty" angle="-1.5707963267948966"/>
</celldesigner:speciesAlias>
<celldesigner:speciesAlias id="sa8" species="s7" compartmentAlias="ca2">
<celldesigner:activity>inactive</celldesigner:activity>
<celldesigner:bounds x="834.0" y="374.0" w="30.0" h="30.0"/>
<celldesigner:font size="12"/>
<celldesigner:view state="usual"/>
<celldesigner:usualView>
<celldesigner:innerPosition x="819.0" y="323.0"/>
<celldesigner:boxSize width="30.0" height="30.0"/>
<celldesigner:singleLine width="1.0"/>
<celldesigner:paint color="ffffcccc" scheme="Color"/>
</celldesigner:usualView>
<celldesigner:briefView>
<celldesigner:innerPosition x="0.0" y="0.0"/>
<celldesigner:boxSize width="80.0" height="60.0"/>
<celldesigner:singleLine width="1.0"/>
<celldesigner:paint color="3fff0000" scheme="Color"/>
</celldesigner:briefView>
<celldesigner:info state="empty" angle="-1.5707963267948966"/>
</celldesigner:speciesAlias>
<celldesigner:speciesAlias id="sa9" species="s9" compartmentAlias="ca2">
<celldesigner:activity>inactive</celldesigner:activity>
<celldesigner:bounds x="714.0" y="204.0" w="80.0" h="40.0"/>
<celldesigner:font size="12"/>
<celldesigner:view state="usual"/>
<celldesigner:usualView>
<celldesigner:innerPosition x="699.0" y="153.0"/>
<celldesigner:boxSize width="80.0" height="40.0"/>
<celldesigner:singleLine width="1.0"/>
<celldesigner:paint color="ffccffcc" scheme="Color"/>
</celldesigner:usualView>
<celldesigner:briefView>
<celldesigner:innerPosition x="0.0" y="0.0"/>
<celldesigner:boxSize width="80.0" height="60.0"/>
<celldesigner:singleLine width="1.0"/>
<celldesigner:paint color="3fff0000" scheme="Color"/>
</celldesigner:briefView>
<celldesigner:info state="empty" angle="-1.5707963267948966"/>
</celldesigner:speciesAlias>
<celldesigner:speciesAlias id="sa10" species="s10" compartmentAlias="ca2">
<celldesigner:activity>inactive</celldesigner:activity>
<celldesigner:bounds x="712.0" y="325.0" w="80.0" h="30.0"/>
<celldesigner:font size="12"/>
<celldesigner:view state="usual"/>
<celldesigner:usualView>
<celldesigner:innerPosition x="697.0" y="274.0"/>
<celldesigner:boxSize width="80.0" height="30.0"/>
<celldesigner:singleLine width="1.0"/>
<celldesigner:paint color="ffcc99ff" scheme="Color"/>
</celldesigner:usualView>
<celldesigner:briefView>
<celldesigner:innerPosition x="0.0" y="0.0"/>
<celldesigner:boxSize width="80.0" height="60.0"/>
<celldesigner:singleLine width="1.0"/>
<celldesigner:paint color="3fff0000" scheme="Color"/>
</celldesigner:briefView>
<celldesigner:info state="empty" angle="-1.5707963267948966"/>
</celldesigner:speciesAlias>
</celldesigner:listOfSpeciesAliases>
<celldesigner:listOfGroups/>
<celldesigner:listOfProteins>
<celldesigner:protein id="pr1" name="SNCA" type="GENERIC">
<celldesigner:listOfModificationResidues>
<celldesigner:modificationResidue angle="3.141592653589793" id="rs1" side="none"/>
</celldesigner:listOfModificationResidues>
</celldesigner:protein>
<celldesigner:protein id="pr2" name="PARK2" type="GENERIC"/>
</celldesigner:listOfProteins>
<celldesigner:listOfGenes>
<celldesigner:gene id="gn1" name="SNCA" type="GENE"/>
</celldesigner:listOfGenes>
<celldesigner:listOfRNAs>
<celldesigner:RNA id="rn1" name="SNCA" type="RNA"/>
</celldesigner:listOfRNAs>
<celldesigner:listOfAntisenseRNAs/>
<celldesigner:listOfLayers>
<celldesigner:layer id="1" name="pathways" locked="false" visible="false">
<celldesigner:listOfTexts>
<celldesigner:layerSpeciesAlias x="0.0" y="0.0">
<celldesigner:layerNotes>
SNCA translation
</celldesigner:layerNotes>
<celldesigner:bounds x="46.0" y="79.0" w="504.0" h="449.0"/>
<celldesigner:paint color="ff000000"/>
<celldesigner:font size="11"/>
</celldesigner:layerSpeciesAlias>
<celldesigner:layerSpeciesAlias x="0.0" y="0.0">
<celldesigner:layerNotes>
SNCA degradation
</celldesigner:layerNotes>
<celldesigner:bounds x="603.0" y="80.0" w="428.0" h="443.0"/>
<celldesigner:paint color="ff000000"/>
<celldesigner:font size="11"/>
</celldesigner:layerSpeciesAlias>
</celldesigner:listOfTexts>
</celldesigner:layer>
</celldesigner:listOfLayers>
<celldesigner:listOfBlockDiagrams/>
</celldesigner:extension>
</annotation>
<listOfUnitDefinitions>
<unitDefinition metaid="substance" id="substance" name="substance">
<listOfUnits>
<unit metaid="CDMT00011" kind="mole"/>
</listOfUnits>
</unitDefinition>
<unitDefinition metaid="volume" id="volume" name="volume">
<listOfUnits>
<unit metaid="CDMT00012" kind="litre"/>
</listOfUnits>
</unitDefinition>
<unitDefinition metaid="area" id="area" name="area">
<listOfUnits>
<unit metaid="CDMT00013" kind="metre" exponent="2"/>
</listOfUnits>
</unitDefinition>
<unitDefinition metaid="length" id="length" name="length">
<listOfUnits>
<unit metaid="CDMT00014" kind="metre"/>
</listOfUnits>
</unitDefinition>
<unitDefinition metaid="time" id="time" name="time">
<listOfUnits>
<unit metaid="CDMT00015" kind="second"/>
</listOfUnits>
</unitDefinition>
</listOfUnitDefinitions>
<listOfCompartments>
<compartment metaid="default" id="default" size="1" units="volume"/>
<compartment metaid="c1" id="c1" name="nucleus" size="1" units="volume" outside="c2">
<annotation>
<celldesigner:extension>
<celldesigner:name>nucleus</celldesigner:name>
</celldesigner:extension>
</annotation>
</compartment>
<compartment metaid="c2" id="c2" name="cell" size="1" units="volume" outside="default">
<annotation>
<celldesigner:extension>
<celldesigner:name>cell</celldesigner:name>
</celldesigner:extension>
</annotation>
</compartment>
</listOfCompartments>
<listOfSpecies>
<species metaid="s1" id="s1" name="SNCA" compartment="c2" initialAmount="0">
<annotation>
<celldesigner:extension>
<celldesigner:positionToCompartment>inside</celldesigner:positionToCompartment>
<celldesigner:speciesIdentity>
<celldesigner:class>PROTEIN</celldesigner:class>
<celldesigner:proteinReference>pr1</celldesigner:proteinReference>
</celldesigner:speciesIdentity>
</celldesigner:extension>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:vCard="http://www.w3.org/2001/vcard-rdf/3.0#" xmlns:bqbiol="http://biomodels.net/biology-qualifiers/" xmlns:bqmodel="http://biomodels.net/model-qualifiers/">
<rdf:Description rdf:about="#s1">
<bqbiol:isEncodedBy>
<rdf:Bag>
<rdf:li rdf:resource="urn:miriam:uniprot:P37840"/>
</rdf:Bag>
</bqbiol:isEncodedBy>
</rdf:Description>
</rdf:RDF>
</annotation>
</species>
<species metaid="s2" id="s2" name="SNCA" compartment="c1" initialAmount="0">
<annotation>
<celldesigner:extension>
<celldesigner:positionToCompartment>inside</celldesigner:positionToCompartment>
<celldesigner:speciesIdentity>
<celldesigner:class>GENE</celldesigner:class>
<celldesigner:geneReference>gn1</celldesigner:geneReference>
</celldesigner:speciesIdentity>
</celldesigner:extension>
</annotation>
</species>
<species metaid="s3" id="s3" name="SNCA" compartment="c1" initialAmount="0">
<annotation>
<celldesigner:extension>
<celldesigner:positionToCompartment>inside</celldesigner:positionToCompartment>
<celldesigner:speciesIdentity>
<celldesigner:class>RNA</celldesigner:class>
<celldesigner:rnaReference>rn1</celldesigner:rnaReference>
</celldesigner:speciesIdentity>
</celldesigner:extension>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:vCard="http://www.w3.org/2001/vcard-rdf/3.0#" xmlns:bqbiol="http://biomodels.net/biology-qualifiers/" xmlns:bqmodel="http://biomodels.net/model-qualifiers/">
<rdf:Description rdf:about="#s3">