{
"description": "Test in-text annotation on properties with invalid names/characters (#1567, #1638, #1727 `wgContLang=en`)",
"setup": [
{
"namespace": "SMW_NS_PROPERTY",
"page": "Has #",
"contents": "[[Has type::Date]]"
},
{
"page": "Example/P0102/1",
"contents": "[[| ]]</td><::123]]"
},
{
"page": "Example/P0102/2",
"contents": "[[Has property a::ABC]] {{#set: Has property b=DEF }}"
},
{
"page": "Example/P0102/3",
"contents": "[[Has property e::ABC]] {{#set: Has property f=DEF }}"
},
{
"page": "Example/P0102/4",
"contents": "[[File:[[Picture:: Foo.png ]]"
},
{
"page": "Example/P0102/Q3.1",
"contents": "{{#ask: [[Has property e::ABC]] |link=none |format=table |sort=# |order=asc}}"
},
{
"page": "Example/P0102/5",
"contents": "[[::abc]]"
},
{
"page": "Example/P0102/6",
"contents": "[[::abc]]"
},
{
"page": "Example/P0102/7",
"contents": "[[--::abc]]"
},
{
"page": "Example/P0102/8",
"contents": "[[Foo-::abc]]"
},
{
"page": "Example/P0102/10",
"contents": "[[Foo\nBar::abc]] [[Foo\rBar::123]] [[Foo\r\nBar::456]]"
}
],
"tests": [
{
"type": "parser",
"about": "#0 do not allow #",
"subject": "Example/P0102/1",
"assert-store": {
"semantic-data": {
"strictPropertyValueMatch": false,
"propertyCount": 3,
"propertyKeys": [
"_ERRC",
"_MDAT",
"_SKEY"
]
}
}
},
{
"type": "parser",
"about": "#1 strip tags",
"subject": "Example/P0102/2",
"assert-store": {
"semantic-data": {
"strictPropertyValueMatch": false,
"propertyCount": 4,
"propertyKeys": [
"Has_property_a",
"Has_property_b",
"_MDAT",
"_SKEY"
],
"propertyValues": [
"ABC",
"DEF"
]
}
}
},
{
"type": "parser",
"about": "#2 remove broken tags",
"subject": "Example/P0102/3",
"assert-store": {
"semantic-data": {
"strictPropertyValueMatch": false,
"propertyCount": 4,
"propertyKeys": [
"Has_property_e",
"Has_property_f",
"_MDAT",
"_SKEY"
],
"propertyValues": [
"ABC",
"DEF"
]
}
}
},
{
"type": "parser",
"about": "#3 allow things like sort=#",
"subject": "Example/P0102/Q3.1",
"assert-store": {
"semantic-data": {
"strictPropertyValueMatch": false,
"propertyCount": 3,
"propertyKeys": [
"_ASK",
"_MDAT",
"_SKEY"
]
}
}
},
{
"type": "parser",
"about": "#4 `[` to produce an error",
"subject": "Example/P0102/4",
"assert-store": {
"semantic-data": {
"strictPropertyValueMatch": false,
"propertyCount": 3,
"propertyKeys": [
"_ERRC",
"_MDAT",
"_SKEY"
]
}
}
},
{
"type": "parser",
"about": "#5 `<>` to produce an error",
"subject": "Example/P0102/5",
"assert-store": {
"semantic-data": {
"strictPropertyValueMatch": false,
"propertyCount": 3,
"propertyKeys": [
"_ERRC",
"_MDAT",
"_SKEY"
]
}
}
},
{
"type": "parser",
"about": "#6 `<>` to produce an error",
"subject": "Example/P0102/6",
"assert-store": {
"semantic-data": {
"strictPropertyValueMatch": false,
"propertyCount": 3,
"propertyKeys": [
"_ERRC",
"_MDAT",
"_SKEY"
]
}
}
},
{
"type": "parser",
"about": "#7 `<>` to produce an error",
"subject": "Example/P0102/7",
"assert-store": {
"semantic-data": {
"strictPropertyValueMatch": false,
"propertyCount": 3,
"propertyKeys": [
"_ERRC",
"_MDAT",
"_SKEY"
]
}
}
},
{
"type": "parser",
"about": "#8 to cut the name at `<`",
"subject": "Example/P0102/8",
"assert-store": {
"semantic-data": {
"strictPropertyValueMatch": false,
"propertyCount": 3,
"propertyKeys": [
"Foo-",
"_MDAT",
"_SKEY"
]
}
}
},
{
"type": "parser",
"about": "#9 to cut the name at `<`",
"subject": "Example/P0102/9",
"assert-store": {
"semantic-data": {
"strictPropertyValueMatch": false,
"propertyCount": 3,
"propertyKeys": [
"Foo-",
"_MDAT",
"_SKEY"
]
}
}
},
{
"type": "parser",
"about": "#10 (CR, LF are invalid)",
"subject": "Example/P0102/10",
"assert-store": {
"semantic-data": {
"strictPropertyValueMatch": false,
"propertyCount": 3,
"propertyKeys": [
"_ERRC",
"_MDAT",
"_SKEY"
]
}
}
}
],
"settings": {
"wgContLang": "en",
"smwgParserFeatures": [
"SMW_PARSER_STRICT",
"SMW_PARSER_INL_ERROR",
"SMW_PARSER_HID_CATS"
],
"smwgPageSpecialProperties": [
"_MDAT"
]
},
"meta": {
"version": "2",
"is-incomplete": false,
"debug": false
}
}