Can't have umlauts in dataset citations
Open
Nobody has claimed this yet.
- Dominant language
- PHP
- Stars
- 755
- Forks
- 128
- PR merge metrics
- No merged PRs in 30d
Description
import openml
import pandas as pd
#data = pd.read_csv("https://archive.ics.uci.edu/ml/machine-learning-databases/00325/Sensorless_drive_diagnosis.txt", header=None, sep=' ', nrows=20)
data = pd.read_csv("/home/andy/Downloads/Sensorless_drive_diagnosis.txt", header=None, sep=' ')
data.rename(columns=str, inplace=True)
data.rename({'48':'target'}, inplace=True)
name = "sector"
description = """Data Set Information:
Features are extracted from electric current drive signals. The drive has intact and defective components. This results in 11 different classes with different conditions. Each condition has been measured several times by 12 different operating conditions, this means by different speeds, load moments and load forces. The current signals are measured with a current probe and an oscilloscope on two phases.
Attribute Information:
The Empirical Mode Decomposition (EMD) was used to generate a new database for the generation of features. The first three intrinsic mode functions (IMF) of the two phase currents and their residuals (RES) were used and broken down into sub-sequences. For each of this sub-sequences, the statistical features mean, standard deviation, skewness and kurtosis were calculated.
"""
creator = "Martyna Bator (University of Applied Sciences, Ostwestfalen-Lippe, martyna.bator '@' hs-owl.de)"
citation ="""Paschke, F., Bayer, C., Bator, M., Mönks, U., Dicks, A., Enge-Rosenblatt, O., & Lohweg, V. (2014, September). Sensorlose zustandsüberwachung an synchronmotoren. In Proceedings. 23. Workshop Computational Intelligence, Dortmund, 5.-6. Dezember 2013 (p. 211). KIT Scientific Publishing."""
default_target_attribute = "target"
ds = openml.datasets.create_dataset(name=name,
creator=creator,
description=description,
attributes='auto',
data=data,
citation=citation,
contributor='Andreas Mueller',
collection_date=None,
language='English',
licence=None,
ignore_attribute=None,
default_target_attribute=default_target_attribute)
ds.publish()
'<oml:error xmlns:oml="http://openml.org/openml">\n\t<oml:code>131</oml:code>\n\t<oml:message>Problem validating uploaded description file</oml:message>\n\t\t<oml:additional_information>XML does not correspond to XSD schema. Error Element \'{http://openml.org/openml}citation\': [facet \'pattern\'] The value \'Paschke, F., Bayer, C., Bator, M., M&ouml;nks, U., Dicks, A., Enge-Rosenblatt, O., &amp; Lohweg, V. (2014, September). Sensorlose zustands&uuml;berwachung an synchronmotoren. In Proceedings. 23. Workshop Computational Intelligence, Dortmund, 5.-6. Dezember 2013 (p. 211). KIT Scientific Publishing.\' is not accepted by the pattern \'\\p{IsBasicLatin}*\'.\n on line 18 column 0. Error Element \'{http://openml.org/openml}citation\': \'Paschke, F., Bayer, C., Bator, M., M&ouml;nks, U., Dicks, A., Enge-Rosenblatt, O., &amp; Lohweg, V. (2014, September). Sensorlose zustands&uuml;berwachung an synchronmotoren. In Proceedings. 23. Workshop Computational Intelligence, Dortmund, 5.-6. Dezember 2013 (p. 211). KIT Scientific Publishing.\' is not a valid value of the atomic type \'{http://openml.org/openml}basic_latin1024\'.\n on line 18 column 0. </oml:additional_information>\n\t</oml:error>\n'
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the failure with the shown Python openml.datasets.create_dataset call, using umlauts in the citation. Trace the dataset-creation API's citation validation and make the request succeed without the XML schema error while preserving citation text.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- php, python
- Domain
- api, backend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100