2012-02-25 2 views
0

가능한 중복 :
XML attribute vs XML elementXML, 속성 또는 노드 구조화?

내가 영화관을 보유하고 XML 문서를 만드는거야. 특정 영화관의 시설을 표현할 방법이 필요하지만 어떻게 구조화해야할지 불확실합니다.

각 시설을 노드로 설정해야합니까? 그리고 그 노드 내부의 텍스트는 1 또는 0 (거짓의 진실)이 될 것입니까? 아니면 각 시설을 속성 또는 "시설"노드로 갖는 것이 더 낫지 않습니까?

속성 :

<cinema id="1"> 
    ... 
    <facilities advance_screenings="1" concessions="0" ... >1<facilities> 
</cinema> 

노드 :

<facilities> 
    <advance_screenings>1</advance_screenings> 
    <audio_description>1</audio_description> 
    <bar>1</bar> 
    <concessions>1</concessions> 
    ... 
</facilities> 

감사합니다.

+0

@DarinDimitrov : 그건 도움이되지 않습니다. XML 디자인은 코드 디자인만큼 유연하고 중요합니다. – skaffman

+0

@skaffman, 물론, 나는 당신에게 완전히 동의하며, 그가 디자인 한 것에 대해 누군가가 컨텍스트를 제공 할 때 의미가 있습니다. 이 질문은 '사용 속성'과 '사용 요소'답변으로 모두 대답 할 수 있으며,이 지구상에 하나 또는 다른 대답을 정당화 할 수있는 것은 없습니다. –

+1

@Nick : 용어의 의미있는 점 : 속성은 * 노드입니다. 속성 대 요소를 의미합니다. – skaffman

답변

2

이것은 주로 선호/스타일의 문제입니다. (이 용어는 "노드"를 사용하는)

  • 비 기본 유형 요소해야합니다 : -

    그러나 엄지 손가락의 일부 규칙이 있습니다. 복잡한 유형을 나타내는 속성을 가질 수는 없지만 일부 패턴 일치는 수행 할 수 있습니다.

  • 단일 요소의 속성은 아마도 훌륭한 디자인이 아니며 인간의 가독성을 위해 노력해야합니다.

  • 위의 결론으로, 단일 요소의 직접 자손으로 1000 개의 요소를 피하십시오. (논리 구조의 Nest/group 요소).

"나쁜 구조"대에 "좋은 구조"이다는 고려 요인이 많이 걸립니다 복잡한 판단이 무엇인지에 대한 어떤 느낌을 가졌 - 같은 데이터가되고있는 산업/컨텍스트로를 사용 된 것, 그리고 그것이 나타내는 것. 클래스 디자인과 비슷하거나 데이터베이스 디자인에 더 가깝습니다. 때로는 해킹 작업으로 인해 차이점이 하나도 생기지 않습니다. 다른 경우에는 의미 적 정확성이 가장 중요합니다.

경험을 통해서만 좋은 이해를 얻을 수 있습니다.

+0

건설적인 피드백에 감사드립니다. 고맙습니다. – Nick

1

XML의 아름다움/고통의 일부는 이런 종류의 결정이 전적으로 당신에게 달려 있다는 것입니다.

속성은 일반적으로 자체 설명 적입니다. 일반적으로 속성은 요소의 일부 속성을 설명합니다. 하위 노드는 상위 노드로 묶인 더 많은 하위 데이터 유형입니다.

그러나이 모든 것은 주관적이고 실제로 올바른 대답이 없습니다. 문서를 구조화하는 방법은 전적으로 사용자가 원하는 것입니다.

0

이 경우 하위 요소 여야합니다. MVC 이라는 용어에 넣으려면 속성에보기에 대한 정보가 있어야하고 하위 요소에는 모델에 대한 정보가 있어야합니다.

관련 문제