문제

XML 파일에 항목의 계층적 컬렉션을 저장하는 응용 프로그램을 만들고 있는데 XML에 컬렉션을 저장하기 위한 업계 표준이 궁금합니다.다음 두 가지 형식 중 어느 것이 선호됩니까?(제가 보지 못하는 다른 옵션이 있다면 조언 부탁드립니다.)

옵션 A

<School>
    <Student Name="Jack" />
    <Student Name="Jill" />
    <Class Name="English 101" />
    <Class Name="Math 101" />
</School>

옵션 B

<School>
    <Students>
        <Student Name="Jack" />
        <Student Name="Jill" />
    </Students>
    <Classes>
        <Class Name="English 101" />
        <Class Name="Math 101" />
    </Classes>
</School>
도움이 되었습니까?

해결책

저는 XML 전문가는 아니지만 옵션 B가 사람이 더 읽기 쉽고 옵션 A만큼 기계도 읽을 수 있다고 생각합니다.나는 XML이 사람과 기계가 모두 읽을 수 있도록 설계되었다고 믿기 때문에 옵션 B를 선택하겠습니다.


Ryan Farley의 게시물 이후에 또 다른 사실을 깨달았습니다.학생 또는 수업 섹션이 너무 커져서 다른 XML 파일로 이동해야 하는 경우 옵션 B를 사용하여 노드를 복사하고 해당 노드에서 새 XML 파일을 만드는 것이 더 쉬울 것 같습니다.

다른 팁

확실히 - 옵션 B.

데이터베이스의 동일한 테이블에 학생과 학급을 혼합하지 않는 것과 마찬가지로 XML에서 학생과 학급을 혼합하지 않을 것입니다.

옵션 B를 사용하는 또 다른 강력한 이유는 오류 검사입니다.원본 파일이 XML 애플리케이션 외부에서 수정되거나 XSD 스키마가 적용되지 않으면 학생 및 수업 수가 균등하지 않을 수 있습니다.

최소한 학생과 학급을 함께 그룹화하면 다른 기록과 별도로 각 기록이 완전한지 쉽게 알 수 있습니다.

옵션 B, 전적으로.유사한 항목의 논리적 그룹이 있는 경우 상위 항목이 있어야 합니다.이렇게 하면 내 파서는 수업 기록이 섞여 있는지 확인하기 위해 500개의 학생 기록을 모두 검토할 필요가 없습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top