query: SELECT DISTINCT ?item  ?year WHERE {
    
    ?item wdt:P31/wdt:P279* wd:Q571.
    ?item wdt:P31 ?what.
    FILTER ( ?what != wd:Q3331189 )
    { ?item wdt:P212 ?isbn13 . } UNION { ?item wdt:P957 ?isbn10 . }
    ?item wdt:P50 ?author.
    ?author  rdfs:label ?rLabel.
    BIND (wd:Q1860 as ?lang )
    { ?item wdt:P407 ?lang }
    UNION  { ?item wdt:P407 ?dial . ?dial wdt:P279* ?lang }
    OPTIONAL { ?item wdt:P571 ?date . BIND(YEAR(?date) as ?year)}
    FILTER (lang(?rLabel) = "en") .
    FILTER regex (?rLabel, "^([G-Lg-l])").
    
      }