ASSL(Analysis Services Scripting Language)은 개체의 계층 구조를 요소 형식 집합으로 나타내며, 각 계층 구조는 포함할 수 있는 자식 요소를 정의합니다.
개체 계층 구조를 나타내기 위해 ASSL은 다음 XML 규칙을 사용합니다.
'xml:lang'과 같은 표준 XML 특성을 제외하고 모든 개체와 속성이 요소로 표시됩니다.
요소 이름과 열거형 값은 모두 밑줄 없이 파스칼 대/소문자의 Microsoft .NET Framework 명명 규칙을 따릅니다.
모든 값의 대/소문자를 유지합니다. 열거형 값도 대/소문자를 구분합니다.
이 규칙 목록 외에도 Analysis Services는 카디널리티, 상속, 공백, 데이터 형식 및 기본값과 관련된 특정 규칙을 따릅니다.
카디널리티
요소에 1보다 큰 카디널리티가 있는 경우 이 요소를 캡슐화하는 XML 요소 컬렉션이 있습니다. 컬렉션의 이름은 컬렉션에 포함된 요소의 복수 형식을 사용합니다. 예를 들어 다음 XML 조각은 요소 내 Database 의 Dimensions 컬렉션을 나타냅니다.
<Database>
...
<Dimensions>
<Dimension>
...
</Dimension>
<Dimension>
...
</Dimension>
</Dimensions>
</Database>
``
요소가 표시되는 순서는 중요하지 않습니다.
상속
상속은 겹치지만 속성 집합이 크게 다른 고유 개체가 있는 경우에 사용됩니다. 이러한 겹치지만 고유한 개체의 예로는 가상 큐브, 연결된 큐브 및 일반 큐브가 있습니다. 겹치지만 고유한 개체의 경우 Analysis Services는 XML 인스턴스 네임스페이스의 표준 type 특성을 사용하여 상속을 나타냅니다. 예를 들어 다음 XML 조각은 특성이 type 요소가 일반 큐브에서 상속되는지 아니면 가상 큐브에서 상속되는지를 Cube 식별하는 방법을 보여 줍니다.
<Cubes>
<Cube xsi:type="RegularCube">
<Name>Sales</Name>
...
</Cube>
<Cube xsi:type="VirtualCube">
<Name>SalesAndInventory</Name>
...
</Cube>
</Cubes>
``
상속은 일반적으로 여러 형식에 동일한 이름의 속성이 있는 경우 사용되지 않습니다. 예를 들어 속성과 ID 속성은 Name 많은 요소에 표시되지만 이러한 속성은 추상 형식으로 승격되지 않았습니다.
공백
요소 값 내의 공백은 유지됩니다. 그러나 선행 및 후행 공백은 항상 잘립니다. 예를 들어 다음 요소는 텍스트가 동일하지만 해당 텍스트 내에서 공백의 양이 다르므로 값이 다른 것처럼 처리됩니다.
<Description>My text<Description>
<Description>My text<Description>
``
그러나 다음 요소는 선행 및 후행 공백에만 다르므로 동일한 값이 있는 것처럼 처리됩니다.
<Description>My text<Description>
<Description> My text <Description>
``
데이터 형식
Analysis Services는 다음과 같은 표준 XSD(XML 스키마 정의 언어) 데이터 형식을 사용합니다.
Int
-231 범위에서 231 - 1까지의 정수 값입니다.
Long
-263 범위에서 263 - 1까지의 정수 값입니다.
String
다음 전역 규칙을 준수하는 문자열 값입니다.
컨트롤 문자가 제거됩니다.
선행 및 후행 공백이 잘립니다.
내부 공백은 유지됩니다.
Name 및 ID 속성에는 문자열 요소의 유효한 문자에 대한 특별한 제한 사항이 있습니다. 규칙에 대한 NameID 자세한 내용은 ASSL 개체 및 개체 특성을 참조하세요.
DateTime
DateTime.NET Framework의 구조체입니다. 값은 DateTime NULL일 수 없습니다. 데이터 형식에서 DataTime 지원하는 가장 낮은 날짜는 프로그래머 DateTime.MinValue가 사용할 수 있는 1601년 1월 1일입니다. 지원되는 가장 낮은 날짜는 값이 누락되었음을 DateTime 나타냅니다.
Boolean
{true, false} 또는 {0, 1}과 같이 두 값만 있는 열거형입니다.
기본값
Analysis Services는 다음 표에 나열된 기본값을 사용합니다.
| XML 데이터 형식 | 기본값 |
|---|---|
Boolean |
거짓 |
String |
""(빈 문자열) |
Integer 또는 Long |
0(0) |
Timestamp |
0001년 1월 1일 오전 12:00:00(틱이 0인 .NET Framework에 System.DateTime 해당) |
존재하지만 비어 있는 요소는 기본값이 아닌 null 문자열의 값을 갖는 것으로 해석됩니다.
상속된 기본값
개체에 지정된 일부 속성은 자식 또는 하위 개체에서 동일한 속성에 대한 기본값을 제공합니다. 예를 들어 . Cube.StorageModePartition.StorageMode Analysis Services가 상속된 기본값에 적용되는 규칙은 다음과 같습니다.
XML에서 자식 개체의 속성이 null이면 해당 값은 기본적으로 상속된 값으로 설정됩니다. 그러나 서버에서 값을 쿼리하는 경우 서버는 XML 요소의 null 값을 반환합니다.
자식 개체의 속성이 자식 개체에 직접 설정되었는지 또는 상속되었는지 여부를 프로그래밍 방식으로 확인할 수 없습니다.
일부 요소에는 요소가 누락되었을 때 적용되는 기본값이 정의되어 있습니다. 예를 들어 Dimension 다음 XML 조각의 요소는 한 Dimension 요소에 요소가 포함되어 Visible 있지만 다른 Dimension 요소는 포함하지 않더라도 동일합니다.
<Dimension>
<Name>Product</Name>
</Dimension>
<Dimension>
<Name>Product</ Name>
<Visible>true</Visible>
</Dimension>
상속된 기본값에 대한 자세한 내용은 ASSL 개체 및 개체 특성을 참조하세요.