summaryrefslogtreecommitdiffstats
path: root/src/uscxml/DOMUtils.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/uscxml/DOMUtils.cpp')
-rw-r--r--src/uscxml/DOMUtils.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/uscxml/DOMUtils.cpp b/src/uscxml/DOMUtils.cpp
index 7e834f8..50548c3 100644
--- a/src/uscxml/DOMUtils.cpp
+++ b/src/uscxml/DOMUtils.cpp
@@ -39,7 +39,10 @@ std::string DOMUtils::idForNode(const Arabica::DOM::Node<std::string>& node) {
case Arabica::DOM::Node_base::ELEMENT_NODE: {
Arabica::DOM::Element<std::string> elem = Arabica::DOM::Element<std::string>(curr);
if (HAS_ATTR(elem, "id") && !UUID::isUUID(ATTR(elem, "id"))) {
- nodeId.insert(0, ATTR(elem, "id") + seperator);
+ std::string elementId = ATTR(elem, "id");
+ boost::replace_all(elementId, ".", "_");
+ boost::replace_all(elementId, ",", "_");
+ nodeId.insert(0, elementId + seperator);
seperator = "_";
return nodeId;
} else {