Каково значение запаздывающих наклонных черт в URI пространства имен?

Есть несколько способов сделать это, я предпочитаю этот для «один раз в день» означает

string lastRunDate = null;
int Hour = 20;
int Minute = 20;

int OnInit()
{
  Hour = timeTemp.hour;
  Minute = timeTemp.min;

  EventSetTimer(60);
}

void OnTimer()
{

  MqlDateTime ActivationTime;
  TimeToStruct(TimeLocal(), ActivationTime);

  if (lastRunDate!=TimeToString(TimeCurrent(), TIME_DATE) && ActivationTime.hour == hour && ActivationTime.min == minute)
  {
    Print("This code should be printed once per day");
    // ... after your codes, `remember today` !
    lastRunDate = TimeToString(TimeCurrent(), TIME_DATE);
  }
}

void OnDeinit(const int reason) {
  EventKillTimer();
}
  • использовать TimeLocal(). если вы знаете только время на своем сервере, рассчитайте временное смещение функции OnInit между TimeLocal и TimeCurrent (если рынок не закрыт во время инициализации. *)

  • вы можете использовать TimeGMT(), если вы можете определить свои условия по времени по Гринвичу.

  • Чтобы обнаружить закрытый рынок, вы можете проверить время последнего входящего тика. для валютных пар вы получаете много тиков в каждую минуту. поэтому, если последний тик старше одной минуты, рынок закрывается. чтобы проверить временные сбои в работе интернета, вы можете проверить время последнего тика с помощью более одной минуты триггера.

13
задан Jon Trauntvein 10 January 2009 в 14:02
поделиться

3 ответа

URIs пространства имен просто предназначены как уникальные идентификаторы (вот ссылка на правила для сравнения). Использование URI (по сравнению с, говорят, "нечто") может быть прослежен (я верю) к использованию URIs в XML DOCTYPE.

Который является также, я думаю, куда беспорядок прибывает относительно "восстанавливаемости" такого URIs. Спецификация XML требует, чтобы СИСТЕМНЫЙ идентификатор в DOCTYPE мог использоваться для получения DTD документа (я связываюсь с Аннотируемой Спецификацией XML, а не версией W3C, потому что я полагаю, что комментарий Tim Bray очень полезен).

Хотя другие спецификации (например, XML-схема) не требуют этого поведения, я полагаю, что это - полезная привычка следовать - особенно в случае целевых пространств имен Схемы. С одной стороны, это помогает потребителям Вашей схемы всегда найти корректное определение. Для другого, если Вы имеете право помещать документ в общедоступный URL, затем можно также удостовериться, что URI уникален.

Наконец: Универсальные идентификаторы ресурса (URIs) являются надмножеством Унифицированных указателей ресурсов (URL). У Вас может также быть Унифицированное имя ресурса (URN), и я верю (но не имейте спецификации удобной), что существует третья форма идентификатора.

6
ответ дан 1 December 2019 в 23:16
поделиться

Нет они не то же.

Самое большое различие было бы в формировании из относительного uris от той основы; с наклонной чертой относительный uri был бы потомком; без наклонной черты это был бы одноуровневый элемент - т.е. (Пример C#):

    Uri uri = new Uri(@"http://www.w3.org/some-namespace/");
    Console.WriteLine(new Uri(uri, "foo")); // http://www.w3.org/some-namespace/foo

    uri = new Uri(@"http://www.w3.org/some-namespace");
    Console.WriteLine(new Uri(uri, "foo")); //http://www.w3.org/foo
3
ответ дан 1 December 2019 в 23:16
поделиться

Да, w3c инструкции относительно URI, который Вы считали, корректны.

Эти два наличия пространств имен не равный строковый uri является различными пространствами имен. Даже капитализация и пробельные вопросы.

Uri пространства имен не означает, что издание запроса на него должно произвести веб-ответ. Поэтому любое обоснование, должно ли это или не должно заканчиваться "/", не слишком значимо.

На самом деле uri пространства имен не может даже удовлетворить синтаксические правила для URI, и он будет все еще служить своей цели для определения пространства имен. Совершенно полезно использовать пространство имен такой как, скажем:

"\/^%$#sdhfgds"

пока это уникально (обратите внимание, что никоим образом я не рекомендую такое использование :)). Существующие процессоры XML (такие как синтаксические анализаторы, процессоры XPath или XSLT) не повышают ошибок, когда они встречаются с таким пространством имен.

10
ответ дан 1 December 2019 в 23:16
поделиться
Другие вопросы по тегам:

Похожие вопросы: