All streams
Search
Write a publication
Pull to refresh
9
0
grinka @grinka

User

Send message
Хм… очень интересная мысль :) Я о таком не думал.
Спасибо :)
У меня так и не заработало для Nokia6300 :(
О, это вообще больная тема. Пользоваться стандартными контролами лично мне оказалось настолько неудобно и код генерировался настолько чудовищный, что после первых трёх-четырёх попыток я оставил идею использования этих контролов в работе.
И вся универсальность стандартных MS контролов почему-то так и норовит приобрести приставку «псевдо».

Может быть за некоторые годы MS исправил ситуацию, но что-то не тянет тратить время на эксперименты :(
Зависит от серверного языка, да?
Кстати, если на уровне сервера ожидается числовое значение, а приходит пустое — то надо делать дополнительную проверку, чтобы в этом случае вывести '' или null, так как например милый ASP (не ASP.NET, а древняя версия) выводит это как просто пустую строку. Не Null, не "", а просто как пустую строку. И, как результат, может получиться невалидный json.
Ну при сравнении с несуществующим XPath у JSON явное преимущество! ;)
О чём я и писал.
Ну и мне кажется, что XPath перебирает элементы быстрее, чем JS :) Но это наверное вопрос для отдельной дискуссии.
Это риторический вопрос.
Я в любом случае не допускаю генерацию невалидного кода — что в XML, что в JSON. Лишь считаю, что в случае JSON вероятность получения невалидного кода чуть выше.
Мы сейчас рассматриваем «аналог XPath для JSON». Вот пример выражения XPath, как Вы просили. Как при помощи JSON получить такой же результат, не прибегая к хардкоднутому перебору элементов? Я не могу придумать.
1. В XML каждый атрибут априори обрамляется кавычками/апострофами?
2. Если использовать не атрибуты, а элементы, то будет всё валидно.
Ну вот навскидку прямо из кода

count( /Awards/Award/Category/Nominee[ position() = $winners-count ]/Attribute[ @is_nominee = '1' ] )
Для XML пустое значение атрибута — приемлемо. Для JSON — нет. Валидное значение для разных случаев уже разное.
А можно с этого места поподробнее? Что за аналог XPath для JSON окромя банального перебора элементов/атрибутов и сравнивания с требуемой конструкцией? В XPath мне кажется достаточно удобно можно одной махонькой строчкой описать сразу все требуемые условия ко всем родительским элементам, которые меня интересуют. К сожалению, понятия не имею, как это реализовать в JSON. Покажите?
Да, пытался. Ничего хорошего и красивого, ни в теории ни в практике.
Да ладно? :)
Имя атрибута — непусто :) А значение — запросто.

Хотя первое утверждение тоже не стопроцентно :(
в JSON мы экономим 24 байта трафика,

Офигетительная экономия. М.б. попробовать перейти на KOI-7?

А попробуйте посмотреть на это как «экономия на 20%»?
А вообще тот факт, что библиотечка самостоятельно обрабатывает исключения при невалидном ответе в JSON и вызывает определённую функцию — это скорее плюс, а не минус. Ибо исключительная ситуация — она как раз должна быть замечена. А здесь уже за нас озаботились тем, чтобы мы мимо неё не прошли!
А кто-то писал, что это невозможно? Всего лишь «потребуются некоторые дополнительные телодвижения».
Для простых — не стоит. Однако, если Вам встретится «хитрая древовидная структура» — не забудьте посмотреть в сторону XML. Возможно, использование XPath сэкономит Вам огромную кучу времени.
Я уже давно сделал выбор в сторону JSON. Всего лишь пытаюсь отметить, какие при этом могут обнаружиться проблемки. И всё :)
А вариант с невалидным xml-ем и json-ом одинаков — данных мы не получим. Если конечно вы после этот xml сами не парсите регулярками хитрыми, так, подстраховываясь.


При обращении за JSON или XML в Javascript обычно используются стандартные библиотечки Ajax. Так вот, как-то так сложилось, что в них обычненько есть встроенные средства парсинга JSON, а вот XML надоть парсить ручками. И если я пишу парсинг ручками, то ошибочку невалидного XML получу на этом этапе. А при «автоматическом» парсинге библиотечкой ошибку обработает библиотечка. Или не обработает и всё произойдёт «втихую».

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity