Неоднозначный разделитель «alt label» - PullRequest
1 голос
/ 10 октября 2019

То, что я хочу получить, это ярлыки, включая альтернативные ярлыки. Некоторые строки имеют запятую, которая также используется в качестве разделителя, поэтому я хотел бы узнать, как правильно получить все отдельные элементы.

    SELECT DISTINCT ?e ?eLabel ?eAltLabel ?eDescription 
    WHERE {
    { ?e rdfs:label "Apple"@en }
    UNION
    { ?e skos:altLabel "Apple"@en }

    SERVICE wikibase:label { bd:serviceParam wikibase:language "ko,en". }.
    }

Первый результат запроса - Apple(компьютер), и показывает нам eAltLabel, как показано ниже.

Apple, Apple Computer, Apple Computer Inc, Apple Computer, Inc.

Получив результат, я разделил эту строку, используя в качестве разделителя.

Apple
Apple Computer
Apple Computer Inc
Apple Computer
Inc.

, что отличается от того, что яожидается. Это потому, что я считаю , справа после Apple computer разделителем. Я хочу получить последний, такой как Apple Computer, Inc., полную фразу.

Как я могу устранить неоднозначность каждого ярлыка соответственно, когда ярлыки влекут , внутри? Как я могу изменить sparql?

...