| dbarratt updated the task description. (Show Details) |
CHANGES TO TASK DESCRIPTION
data: mainsnak {
... on PropertyValueSnak {
item: value {
... on StringValue {
value
}
}
}
}
}
genres: statements(propertyIds: "P136") {
data: mainsnak {
... on PropertyValueSnak {
item: value {
... on Item {
label(language: "en") {
text
}
}
}
}
}
}
}
}
```
which would give a repsonse like this:
```
lang=json
{
"data": {
"item": {
"label": {
"text": "Easy A"
},
"images": [
{
"data": {
"item": {
"value": "Easy A.svg"
}
}
}
],
"genres": [
{
"data": {
"item": {
"label": {
"text": "comedy film"
}
}
}
},
{
"data": {
"item": {
"label": {
"text": "teen film"
}
}
}
},
{
"data": {
"item": {
"label": {
"text": "LGBT-related film"
}
}
}
}
]
}
}
}
```
This makes the query a whole lot small and easier to do and [[ https://github.com/graphql/graphiql | GraphiQL ]] also supports introspection as seen in T173214#3865779 so the whole thing is self-documenting. images: statements(propertyIds: "P18", best: true) {
...StatementItemValue
}
genres: statements(propertyIds: "P136", best: true) {
...StatementItemValue
}
}
}
fragment StatementItemValue on Statement {
data: mainsnak {
... on PropertyValueSnak {
item: value {
... on StringValue {
value
}
... on Item {
label(language: "en") {
text
}
}
}
}
}
}
```
which would give a repsonse like this:
```
lang=json
{
"data": {
"item": {
"label": {
"text": "Easy A"
},
"images": [
{
"data": {
"item": {
"value": "Easy A.svg"
}
}
}
],
"genres": [
{
"data": {
"item": {
"label": {
"text": "comedy film"
}
}
}
},
{
"data": {
"item": {
"label": {
"text": "teen film"
}
}
}
},
{
"data": {
"item": {
"label": {
"text": "LGBT-related film"
}
}
}
}
]
}
}
}
```
This makes the query a whole lot small and easier to do and [[ https://github.com/graphql/graphiql | GraphiQL ]] also supports introspection as seen in T173214#3865779 so the whole thing is self-documenting.
The query can can get a lot more recursive data without a lot of additional complexity ([[ https://tools.wmflabs.org/tptools/wdql.html?query=query%20getItem(%24id%3A%20ID!)%20%7B%0A%20%20item(id%3A%20%24id)%20%7B%0A%20%20%20%20label(language%3A%20%22en%22)%20%7B%0A%20%20%20%20%20%20text%0A%20%20%20%20%7D%0A%20%20%20%20logos%3A%20statements(propertyIds%3A%20%22P154%22%2C%20best%3A%20true)%20%7B%0A%20%20%20%20%20%20...StatementItemValue%0A%20%20%20%20%7D%0A%20%20%20%20images%3A%20statements(propertyIds%3A%20%22P18%22%2C%20best%3A%20true)%20%7B%0A%20%20%20%20%20%20...StatementItemValue%0A%20%20%20%20%7D%0A%20%20%20%20publication%3A%20statements(propertyIds%3A%20%22P577%22%2C%20best%3A%20true)%20%7B%0A%20%20%20%20%20%20...StatementItemValue%0A%20%20%20%20%7D%0A%20%20%20%20duration%3A%20statements(propertyIds%3A%20%22P2047%22%2C%20best%3A%20true)%20%7B%0A%20%20%20%20%20%20...StatementItemValue%0A%20%20%20%20%7D%0A%20%20%20%20mpaa%3A%20statements(propertyIds%3A%20%22P1657%22%2C%20best%3A%20true)%20%7B%0A%20%20%20%20%20%20...StatementItemValue%0A%20%20%20%20%7D%0A%20%20%20%20genres%3A%20statements(propertyIds%3A%20%22P136%22%2C%20best%3A%20true)%20%7B%0A%20%20%20%20%20%20...StatementItemValue%0A%20%20%20%20%7D%0A%20%20%7D%0A%7D%0A%0Afragment%20StatementItemValue%20on%20Statement%20%7B%0A%20%20data%3A%20mainsnak%20%7B%0A%20%20%20%20...%20on%20PropertyValueSnak%20%7B%0A%20%20%20%20%20%20item%3A%20value%20%7B%0A%20%20%20%20%20%20%20%20...%20on%20StringValue%20%7B%0A%20%20%20%20%20%20%20%20%20%20value%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20...%20on%20QuantityValue%20%7B%0A%20%20%20%20%20%20%20%20%20%20value%3A%20amount%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20...%20on%20TimeValue%20%7B%0A%20%20%20%20%20%20%20%20%20%20value%3A%20time%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20...%20on%20StringValue%20%7B%0A%20%20%20%20%20%20%20%20%20%20value%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20...%20on%20Item%20%7B%0A%20%20%20%20%20%20%20%20%20%20label(language%3A%20%22en%22)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20text%0A%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%20%20%7D%0A%7D&operationName=getItem&variables=%7B%0A%20%20%22id%22%3A%20%22Q817266%22%0A%7D | example ]]).
**Implementation**
...
images: statements(propertyIds: "P18") {data: mainsnak {
... on PropertyValueSnak {
item: value {
... on StringValue {
value
}
}
}
}
}
genres: statements(propertyIds: "P136") {
data: mainsnak {
... on PropertyValueSnak {
item: value {
... on Item {
label(language: "en") {
text
}
}
}
}
}
}
}
}
```
which would give a repsonse like this:
```
lang=json
{
"data": {
"item": {
"label": {
"text": "Easy A"
},
"images": [
{
"data": {
"item": {
"value": "Easy A.svg"
}
}
}
],
"genres": [
{
"data": {
"item": {
"label": {
"text": "comedy film"
}
}
}
},
{
"data": {
"item": {
"label": {
"text": "teen film"
}
}
}
},
{
"data": {
"item": {
"label": {
"text": "LGBT-related film"
}
}
}
}
]
}
}
}
```
This makes the query a whole lot small and easier to do and [[ https://github.com/graphql/graphiql | GraphiQL ]] also supports introspection as seen in T173214#3865779 so the whole thing is self-documenting. images: statements(propertyIds: "P18", best: true) {
...StatementItemValue
}
genres: statements(propertyIds: "P136", best: true) {
...StatementItemValue
}
}
}
fragment StatementItemValue on Statement {
data: mainsnak {
... on PropertyValueSnak {
item: value {
... on StringValue {
value
}
... on Item {
label(language: "en") {
text
}
}
}
}
}
}
```
which would give a repsonse like this:
```
lang=json
{
"data": {
"item": {
"label": {
"text": "Easy A"
},
"images": [
{
"data": {
"item": {
"value": "Easy A.svg"
}
}
}
],
"genres": [
{
"data": {
"item": {
"label": {
"text": "comedy film"
}
}
}
},
{
"data": {
"item": {
"label": {
"text": "teen film"
}
}
}
},
{
"data": {
"item": {
"label": {
"text": "LGBT-related film"
}
}
}
}
]
}
}
}
```
This makes the query a whole lot small and easier to do and [[ https://github.com/graphql/graphiql | GraphiQL ]] also supports introspection as seen in T173214#3865779 so the whole thing is self-documenting.
The query can can get a lot more recursive data without a lot of additional complexity ([[ https://tools.wmflabs.org/tptools/wdql.html?query=query%20getItem(%24id%3A%20ID!)%20%7B%0A%20%20item(id%3A%20%24id)%20%7B%0A%20%20%20%20label(language%3A%20%22en%22)%20%7B%0A%20%20%20%20%20%20text%0A%20%20%20%20%7D%0A%20%20%20%20logos%3A%20statements(propertyIds%3A%20%22P154%22%2C%20best%3A%20true)%20%7B%0A%20%20%20%20%20%20...StatementItemValue%0A%20%20%20%20%7D%0A%20%20%20%20images%3A%20statements(propertyIds%3A%20%22P18%22%2C%20best%3A%20true)%20%7B%0A%20%20%20%20%20%20...StatementItemValue%0A%20%20%20%20%7D%0A%20%20%20%20publication%3A%20statements(propertyIds%3A%20%22P577%22%2C%20best%3A%20true)%20%7B%0A%20%20%20%20%20%20...StatementItemValue%0A%20%20%20%20%7D%0A%20%20%20%20duration%3A%20statements(propertyIds%3A%20%22P2047%22%2C%20best%3A%20true)%20%7B%0A%20%20%20%20%20%20...StatementItemValue%0A%20%20%20%20%7D%0A%20%20%20%20mpaa%3A%20statements(propertyIds%3A%20%22P1657%22%2C%20best%3A%20true)%20%7B%0A%20%20%20%20%20%20...StatementItemValue%0A%20%20%20%20%7D%0A%20%20%20%20genres%3A%20statements(propertyIds%3A%20%22P136%22%2C%20best%3A%20true)%20%7B%0A%20%20%20%20%20%20...StatementItemValue%0A%20%20%20%20%7D%0A%20%20%7D%0A%7D%0A%0Afragment%20StatementItemValue%20on%20Statement%20%7B%0A%20%20data%3A%20mainsnak%20%7B%0A%20%20%20%20...%20on%20PropertyValueSnak%20%7B%0A%20%20%20%20%20%20item%3A%20value%20%7B%0A%20%20%20%20%20%20%20%20...%20on%20StringValue%20%7B%0A%20%20%20%20%20%20%20%20%20%20value%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20...%20on%20QuantityValue%20%7B%0A%20%20%20%20%20%20%20%20%20%20value%3A%20amount%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20...%20on%20TimeValue%20%7B%0A%20%20%20%20%20%20%20%20%20%20value%3A%20time%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20...%20on%20StringValue%20%7B%0A%20%20%20%20%20%20%20%20%20%20value%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20...%20on%20Item%20%7B%0A%20%20%20%20%20%20%20%20%20%20label(language%3A%20%22en%22)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20text%0A%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%20%20%7D%0A%7D&operationName=getItem&variables=%7B%0A%20%20%22id%22%3A%20%22Q817266%22%0A%7D | example ]]).
**Implementation**
...
TASK DETAIL
EMAIL PREFERENCES
To: dbarratt
Cc: Lydia_Pintscher, Addshore, larsgw, Saerdnaer, simon04, bearND, Siznax, Tpt, Jonas, Ricordisamoa, hoo, Lucas_Werkmeister_WMDE, Aklapper, dbarratt, PokestarFan, Lahi, Gq86, GoranSMilovanovic, QZanden, EBjune, merbst, LawExplorer, Xmlizer, jkroll, Smalyshev, Wikidata-bugs, Jdouglas, aude, Tobias1984, Manybubbles, Mbch331
Cc: Lydia_Pintscher, Addshore, larsgw, Saerdnaer, simon04, bearND, Siznax, Tpt, Jonas, Ricordisamoa, hoo, Lucas_Werkmeister_WMDE, Aklapper, dbarratt, PokestarFan, Lahi, Gq86, GoranSMilovanovic, QZanden, EBjune, merbst, LawExplorer, Xmlizer, jkroll, Smalyshev, Wikidata-bugs, Jdouglas, aude, Tobias1984, Manybubbles, Mbch331
_______________________________________________ Wikidata-bugs mailing list [email protected] https://lists.wikimedia.org/mailman/listinfo/wikidata-bugs
