opensimXmlInterface#
- class pyCGM2.Model.Opensim.interface.opensimInterface.opensimXmlInterface(templateFullFilename: str, outFullFilename: str | None = None)#
Interface for interacting with OpenSim XML files.
- Parameters:
templateFullFilename (str) – Filename of the template OpenSim XML file.
outFullFilename (Optional[str]) – Filename for the output file. If None, derived from templateFullFilename.
- __init__(templateFullFilename: str, outFullFilename: str | None = None)#
Methods
__init__
(templateFullFilename[, outFullFilename])getSoup
()Retrieves the BeautifulSoup object for XML parsing.
set_inList_fromAttr
(listName, label, ...)Sets the text for XML elements within a list based on an attribute's value.
set_many
(label, text)Sets the text for all XML elements with a specific label.
set_many_inList
(listName, label, text)Sets the text for all XML elements within a list with a specific label.
set_one
(labels, text)Sets the text for a specific XML element or a path of elements.
update
()Updates the XML file with changes made to the BeautifulSoup object.
- getSoup() BeautifulSoup #
Retrieves the BeautifulSoup object for XML parsing.
- Returns:
BeautifulSoup – BeautifulSoup object for the OpenSim XML file.
- set_inList_fromAttr(listName: str, label: str, attrKey: str, attrValue: str, text: str) None #
Sets the text for XML elements within a list based on an attribute’s value.
- Parameters:
listName (str) – The label of the list in the XML.
label (str) – The label of the XML elements within the list.
attrKey (str) – The attribute key to match.
attrValue (str) – The value of the attribute to match.
text (str) – The text to set for the matching XML elements.
- set_many(label: str, text: str) None #
Sets the text for all XML elements with a specific label.
- Parameters:
label (str) – The label of the XML elements.
text (str) – The text to set for each XML element.
- set_many_inList(listName: str, label: str, text: str) None #
Sets the text for all XML elements within a list with a specific label.
- Parameters:
listName (str) – The label of the list in the XML.
label (str) – The label of the XML elements within the list.
text (str) – The text to set for each XML element in the list.
- set_one(labels: str | List[str], text: str) None #
Sets the text for a specific XML element or a path of elements.
- Parameters:
labels (Union[str, List[str]]) – The label or path of labels leading to the XML element.
text (str) – The text to set for the XML element.
- update()#
Updates the XML file with changes made to the BeautifulSoup object.
Writes the updated XML content to the output file specified in m_out.