GDL 값은 GDL 특성 내에서 콜론 구분 기호 다음에 있는 첫 번째 공백이 아닌 문자로 시작하며, 보통 줄 바꿈 시퀀스나 구문 구분 기호에 도달할 때 종료되는 문자열입니다.
값이 줄 바꿈 시퀀스나 구문 구분 기호에 의해 종료되지 않는 몇 가지 GDL 컨텍스트가 있습니다. 이러한 특수 컨텍스트에는 다음이 포함됩니다.
구문 구분 기호 문자는 주석의 일부로 발생합니다.
종료 문자는 따옴표 붙은 문자열의 일부로 발생합니다.
종료 문자는 중첩된 컨텍스트 내에서 발생합니다.
종료 문자는 임의의 값 내에서 발생합니다.
값은 이러한 특수 컨텍스트 중 0개, 하나 이상을 포함할 수 있습니다. 단일 컨텍스트 형식은 한 값에 여러 번 나타날 수 있습니다. 앞의 특수 컨텍스트는 다른 컨텍스트 외부에도 나타날 수 있습니다. 일부 컨텍스트는 다른 컨텍스트 내에 나타날 수 있습니다. 이러한 경우는 각 컨텍스트의 설명에 설명되어 있습니다. 줄 바꿈 시퀀스 또는 구문 구분 기호로 값을 종료하려면 먼저 모든 컨텍스트를 종료해야 합니다.
종료 줄 바꿈 시퀀스 또는 구문 구분 기호는 값의 일부로 간주되지 않습니다.
값 매크로 참조는 리터럴이 아닌 공백이 허용되는 GDL 값의 아무 곳에나 나타날 수 있습니다. 이러한 참조는 등호(=)로 시작합니다. 이러한 컨텍스트에서 등호를 사용하고 값 매크로 참조를 도입하지 않으려는 경우 등호 뒤에 기호가 아닌 문자(예: 공백)가 와야 합니다. 값 매크로에 대한 자세한 내용은 GDL 값 매크로를 참조하세요.
GDL 컨텍스트에 대한 자세한 내용은 GDL 컨텍스트를 참조하세요.
다음 코드 예제에서는 GDL 파서에 허용되는 값을 보여 줍니다.
*Value: *% Null Value - only a comment
*Value: "Quoted String"
*Value: "Quoted String with Hex substring: <48 65 78> see?"
*Value: "Hex substring with comment and macro reference <48 *% comment
65 78 =MacroRef > see?" *% note continuation linebreak was automatically assumed
*Value: tokens (parenthesis context) [followed by square brackets context] "ending in quoted string"
*Value: tokens (parenthesis context {with nested curly braces context})
*Value: tokens <BeginValue:anything> no special characters or contexts recognized within an arbitrary value context. " } ) * % < > anything goes, sorry =MacroRefs not recognized
*Keyword: looks like a new entry but its still within the Arbitrary Value context.
+ not continuation chars, *% this is not a comment <EndValue:anything>