{'fraction_non_alphanumeric': 0.018537590113285273, 'fraction_numerical': 0.0, 'mean_word_length': 4.7514792899408285, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
XPLC: A Novel Protocol for Concurrency Control in XML Databases

Nowadays XML is widely used by many applications. XML is not only used for exchanging data among the applications but also is used to store the semi-structured data. Managing huge data stored in XML documents, emphasizes the need for XML databases. One of the most important features of a database in a multi-user environment is its concurrency control mechanism. We discuss that many concurrency control protocols found in the literature either provide a restricted concurrency level which is less than what logically could be or provide a high level of concurrency which may lead to some defects. To overcome these problems, we offer a novel locking protocol with some rich locks named "XML Path Locking by Child Consideration" (XPLC). In our approach unlike the previous ones, we consider the child of the node which we want to lock. Also our locks have different granularities according to their types.